Review of HTML5 Pocket Reference by Jennifer Niederst Robbins

The ever-so useful Pocket reference, Review of HTML5 Pocket Reference by Jennifer Niederst Robbins is in it’s fifth revision, and not a lot to say about it. it’s a consistently neat dictionary reference of the HTML5 tags and attributes, that I personally find handy to have by my side when I do HTML stuff, as do the seasoned HTML programming monkeys. Whilst it has no bells and whistles, the book has the precise structural flow of element, description, usage, attributes and example, so you know exactly what each element does, both in definition as well as contextually.

Screen Shot 2013-08-30 at 2.09.52 PMScreen Shot 2013-08-30 at 2.09.52 PM

Screen Shot 2013-08-30 at 2.09.52 PM

Screen Shot 2013-08-30 at 2.10.04 PMScreen Shot 2013-08-30 at 2.10.04 PM

Screen Shot 2013-08-30 at 2.10.04 PM

The book is under 200 pages, easy to read and find and extremely concise, as you would want any dedicated reference book. And I prefer having such books as ebooks because it makes searching for specific elements a lot quicker, by clicking or pressing an element in the index, or Command & F’ing the specific element I am after.

Concise: [rating=5]

Level: [rating=3]

Prior Knowledge: HTML knowledge is assumed, as this is a reference book, although it would suite the novice as well as seasoned HTML programmers just as well.

My rating :[rating=4.5]


AuthorJennifer Robbins

TitleHTML 5 Pocket Reference

Publisher: O’Reilly Media

Year: July 2013 

Essential Tools for iOS Developers

A great composition of essential iOS tools, thanks to BenSchierman and I will be updating this document as well, with my own tools of the trade, in time. Let me know if there are any other tools you prefer to use, that we can add onto here.


  • pttrns – A great library of iOS screen designs categories by task. If you want to see how other apps handle activity feeds, for instance, this is a great place to go see a bunch of examples.
  • TappGala – Another great collection of nice app designs. It’s not categorized by task, but is just a list of great apps to get inspiration from.
  • Cocoa Controls – A great list of components (code) that you can use in your iOS apps. Sometimes you’ll find great pieces of code that can save you time, other times you can just learn how other developers accomplish certain features. Subscribe to their weekly newsletter; all signal, little noise.
  • IICNS – A collection of really great icons. Get inspired, but don’t copy.
  • Dribbble – Some of the best digital designers post up their work for all to see. A treasure-trove of designs to look at.
  • Capptivate – a gallery of inspirational designs. Some contain animations. Thanks, @joaopmaia!


  • Mocks ($) – An easy to use tool to create a quick mockup of an iOS app. Comes with a bunch of the default controls you can use to assemble something quickly.
  • Briefs ($) – A really useful app that allows you to create a mockup of an app and stitch them together so you can see the interaction. Deploy to a device so you can see what it feels like in your hand.
  • Acorn ($) – A strong competitor to Photoshop, only way cheaper. I find myself reaching for Photoshop less & less these days. Under active development.
  • Sketch ($) – A vector-based drawing tool that is increasingly useful these days, as screen sizes and pixel densities change. It is often helpful to design once and have the freedom to scale up & down as needed. Also sports a really powerful export system. For some example Sketch projects, check out Sketchmine. See my screencast on Sketch for a live demo.
  • iOS 7 PSD by Teehan+Lax – A super handy resource if you (or your designer) uses Photoshop. An iOS 6 version is also available.
  • Bjango’s Photoshop Actions – A definite time-saver if you use Photoshop to design iOS apps. One click access to resize canvases, scale by 200% (or 50%), set global lighting to 90º, and more. Their blog also has a bunch of useful Photoshop workflow tips.
  • xScope ($) – An indespensible swiss-army knife of tools such as guides, pixel loupes, screen rulers, and more. Want to know what color value that pixel is? Want to see how many pixels between a button and the window for a random Mac app? xScope has you covered. Also check out their companion iPhone app for mirroring designs you’re working on and seeing them in pixel-perfect glory on your iDevice.
  • Glyphish ($) – A fantastic collection of high quality icons for your iOS apps. Apple doesn’t provide a lot of built-in icons, so it’s handy to have a collection of icons covering all kinds of various concepts. I’m still looking for a use for that baby icon though. Glyphish comes in packs, and the latest pack has iOS 7 “thin line” icons which will be very handy when designing an iOS 7 app.
  • Fontastic Icons for iOS – An open source set of classes for utilizing icon fonts, such as Font Awesome in your iOS app. Quickly and easily have an icon in whatever pixel dimensions you require. Since fonts by nature can be scaled up and down with ease, this makes a really nice way to ship & use your icons without having to export multiple versions for the sizes you require.
  • PaintCode ($) – A vector-based drawing tool that exports your artwork as the equivalent Core Graphics source code. Awesome for learning how Core Graphics drawing works, but also incredibly handy if you want your drawing to be dynamic. See my screencast on PaintCode for a live demo.
  • Edge Insets ($) – A simple tool that helps you define your edge insets for repeatable images. Available on the Mac App Store.
  • LiveView – A remote screen viewer for iOS, making it easy to immediately see your designs on a device. Thanks, @_funkyboy!
  • Skala Preview ($) – Another excellent tool for quickly showing your designs off on a real device. The guys at Bjango are awesome and this app is deserving of the price. Thanks, jn40!

Source Control

  • Git – If you’re not using source control stop what you’re doing and rectify that. I use git for everything I do and love it.
  • Kaleidoscope ($) – The best diff/merge tool around. Does 3-way merges and is beautiful to look at. I use it every day.
  • p4merge – A free, ugly alternative to Kaleidoscope. Powerful 3-way merge, but good luck finding the download link. It’s hidden deeper in their site every time I look for it.
  • Git X – A simple, powerful GUI tool for visualizing git timelines and quickly & easily staging commits. I usually live in the Terminal for git usage, but fall back to this app when I need to stage hunks of changes into logical commits. This is a fork of the original (abandoned) GitX, which I found on this list of forks.
  • Source Tree – A free, full-featured Git application. I don’t use this because I favor the command line, but if a GUI tool is your cup-o-tea, check this app out.

Dissecting Apps

  • pngcrush – This little utility can crush & uncrush PNG files, which is handy when you want to view images contained in app bundled distributed in the App Store. Just open iTunes, view the local Apps list, and right click on any icon to Show in Finder. Once there, open up the app and you’ll see a bunch of PNG files, but you can’t view them. Using pngcrush you can extract the full version so it can be opened with Preview.
  • appcrush.rb – This handy little ruby script will automate the above process for all images. Just point it to a .app file on your disk and it will extract all the images to a folder on your desktop. Handy for seeing how apps on your phone accomplish certain designs. Check out my screencast on dissecting apps for a live demo.
  • Charles ($, free limited demo) – I don’t know what’s going on with the ugly UI or icon, but Charles is an essential tool for any developer. Charles acts as a proxy to allow you to inspect your network traffic to & from the iPhone Simulator. You can also inspect traffic from your device by setting your phone’s proxy to your Mac running Charles. With self-signed SSL certificates, request & response breakpoints, and request/response viewers, Charles is really amazingly powerful. A must-have tool. Again, my screencast on dissecting apps covers this well.


I know what you’re thinking, don’t all iOS developers use Xcode? Well mostly, yes. But with my love/hate relationship with Xcode, I believe there is tremendous value in considering alternatives.

  • AppCode – A full-fledged IDE from Jetbrains (makers of the excellent ReSharper for .NET). Immensely powerful refactorings & features that help you write code faster. Quickly identify dead code, automatically insert #import statements when you use related code, easily extract variables, methods, and classes. My only wish for this app is that it would instead be a plugin to Xcode.
  • Vim – Wait, vim? Really? Yes, there are folks who do all their Objective-C development in vim. I’m not one of these, but I am a fan of vim for Ruby development. As such, I’m a huge fan of…
  • Xvim – An Xcode plug-in that gives you vim keybindings. Works well, ‘nuff said.
  • OMColorSense – Another plugin for Xcode, this one gives you a small display of color when your cursor is on a line looking like: [UIColor redColor]. Clicking on this little color tab opens a color picker that you can change, and any change in color you make is reflected in the code by changing the line to [UIColor colorWithRed:… green:… blue:… alpha:… ]. When someone is watching me write code with this enabled, they invariably ask me, “Whoa! What was that?!”
  • KSImageNamed – Another Xcode plug-in, this one allows you to autocompleted image filenames from your bundle when typing [UIImage imageNamed:…]. Great way to avoid the inevitable typo that causes this method to return nil and you to subsequently waste 10 minutes trying to figure out why your images aren’t displaying.
  • CocoaPods Xcode Plugin – This plug-in adds a menu item for interacting with CocoaPods. Useful if you don’t like dropping to the command line.
  • Alcatraz Package Manager – An awesome meta plug-in that allows you to easily install other Xcode color schemes and plug-ins with a single click.
  • Code Runner ($) – a light-weight code-aware text editor that knows how to compile & run code in most languages. Want to test out a quick snippet of Objective-C code and don’t want to create an entire Xcode project to do it? Code Runner to the rescue.


Ahhh, documentation, everyone’s favorite topic. Even still, documentation is really important to have, so pay attention so we can make your life easier.

  • appledoc – Want to automatically generate documentation that look’s like Apple’s? Look no further. Automatically inter-links symbols defined in your project as well as extracting discussion to output using specially formatted code-comments. Generates official docsets and HTML web sites.
  • Dash ($) – A must-have API documentation viewer and code snippet manager. This tool is really handy as it allows you to download & search API docs for all kinds of languages & frameworks with lightning speed. The fastest way to get access to the docs. I integrate Dash with Alfred to make searches even faster.

Dependency Management

Yes, there’s only one tool listed here. I didn’t want to include actual 3rd party libraries, as that would be a different list entirely. When it comes to dependency management, there’s only one game in town:

  • CocoaPods – The essential tool for Objective-C projects. Allows you to quickly & easily integrate 3rd party libraries into your application. It does so by creating a second static library project and automatically links this with your projects. There are thousands of pods available, and it’s easy to add support for libraries that you don’t own (or perhaps are private). I use CocoaPods in every single project I work on.

Diagnostics & Debugging

At some point our app is in the field and we need to understand better what’s going on, maybe to fix bugs or to improve performance.

  • Cocoa Lumberjack – a much more powerful NSLog, Cocoa Lumberjack offers advanced logging behaviors such as logging to rotated files, logging to the network, and filtering based on log level (info, debug, warn, error). Covered by NSScreencast Episode 61
  • DCIntrospect – crazy powerful tool that you’d link inside your app when running in debug and on the simulator. Once you do, you can press the spacebar to get some really helpful view debugging support. See exact dimensions of elements on the screen, print out view hierarchies, even nudge views horizontally or vertically.
  • Pony Debugger – another tool you’d use by embedding a library in your debug builds, Pony Debugger actually utilizes Chrome’s dev tools for seeing network requests coming out of the device, as well as a rudimentary Core Data browser. It’s hard to describe, but check out my screencast on Pony Debugger for more info.
  • Runscope ($) – Runscope is a service running online that can capture requests, log details, and give you valuable data about your API. Simple to set up, as it’s an HTTP pass-through API, all you need to change is your host name.
  • SimPholders – Quick, easy access to your simulator folders. Browse by iOS version, then app name and jump right to the folder in Finder.
  • Spark Inspector – Debug your view hierarchy running on your app in debug mode, in 3D. This app really has to be seen to fully understand the value, but it can really help to understand what views are used to compose your app. Also contains a notification center inspector, so you can easily see what NSNotifications are firing and who is observing them. Another app to look at that is similar is Reveal.


  • ImageAlpha – A Mac app that allows you to convert a 24-bit PNG with transparency to an 8-bit PNG with an alpha channel. Typically 8-bit PNGs don’t have an alpha channel, so if your image can be represented in 8-bits (say, a solid color button) you can save a lot on storage by converting the 24-bit PNG to 8-bit using ImageAlpha.
  • ImageOptim – Another Mac app that compresses PNGs in order to save space. Most PNG files can shave off a few % of the size, and sometimes you’ll shrink the files by 30% or more. Smaller images mean smaller app sizes and less memory used to load them at runtime.
  • Prepo – A little Mac app that can quickly resize artwork in all the various sizes you might need. Just drag a large icon file (say, 1024×1024) onto Prepo and watch it spit out 512×512 iTunesArtwork, 114×114 Icon@2x.png, and all the other sizes & filenames you’d expect.
  • Slender ($) – an awesome app that analyzes your app and finds all sorts of problems, such as missing retina artwork, unused images, image that could benefit from compression and more. Shave kilobytes off of your iPhone app by shedding unused images with Slender.

Core Data

  • Mogenerator – still a super useful tool for generating smart subclasses of your NSManagedObjects in your Core Data model. Some use Xcode for this, and resort to manually subclassing or creating categories in order to add logic to the models. Mogenerator runs as a quick pre-compile script to generate subclasses for you to use. It does this by creating an underscored version (_User) and a regular one for you to modify (User).
  • Base ($) – there will come a time when you need to inspect your actual Core Data sqlite database to see what’s going on. You can use the sqlite3 command line tool, but Base offers a nice looking GUI browser. Just don’t vomit when you see the database schema that Core Data created for you.
  • Core Data Editor ($) – for more advanced data anlysis, exploration, and modification you can use Core Data Editor. This app understands Core Data, so you’re working directly with the entities instead of database rows.

Back-end Services

Ultimately your iOS app will likely want to talk to a server to share data, fetch new content, send push notifications or whatever. While this can be accomplished manually, you might want a more drop-in solution.

  • Helios – Helios is an open-source framework that provides essential backend services for iOS apps, from data synchronization and push notifications to in-app purchases and passbook integration. Built on top of many open source ruby gems, so you can pick & choose and build your own stack if you so desire. Take a look at the Nomad CLI set of handy related tools as well.
  • Windows Azure Mobile Services – you can think of this sort of like a programmable database in the cloud. Create tables, run JavaScript on read, insert, delete to add additional functionality. Really easy support for push notifications as well.
  • Urban Airship – I’ve been using Urban Airship to deliver push notifications for a while now. Really easy to integrate with, and small usage is free.
  • Parse – This is another data-in-the-cloud service, but offers an impressive API and online data browser. We use Parse for a really small app and works well for that.


There are other players here, but none that I’ve seen have been compelling enough to switch from flurry. I’m open to hearing suggestions, so let’s hear about ‘em in the comments.

  • Flurry – I’ve used flurry for a long time to provide useful analytics on the usage of my apps. Need to know when to stop supporting iOS 5? Flurry gives you the numbers to have a realistic conversation.


  • Deploymate ($) – Need to support iOS 4 still, but you’re compiling with the iOS 6 SDK? Deploymate will warn you when you’re using symbols that don’t exist in your deployment target.
  • Cupertino – Part of the Nomad CLI tools, Cupertino gives you command line access to managing devices & profiles in the Apple Provisioning Portal. For example, just type ios devices:list to see the current list of devices in your account. Useful for automating lots of processes.
  • Hockey App ($) – A great service for managing the distribution of your ad-hoc builds. Testers can get a link to install new betas over the air. Also provides robust crash reporting so you can easily respond to crashes in your apps.
  • TestFlight – A free service, similar to Hockey App. We’ve used TestFlight with great success for easily distributing apps and collecting feedback from our users. My only wish is that they’d start charging for the service. Also includes analytics and crash reporting, but we don’t use those features.
  • iOS Simulator Cropper – A really easy way to snap images of the simulator, with or without status bar, with or without device chrome, etc. Great for taking App Store or just general marketing screenshots.
  • Status Magic ($) – Take better app store screenshots. Nothing makes your app look less crappy than an App Store screenshot that includes a low battery, or low signal. Status Magic gives you complete customization over what’s present in your status bar, including removing elements, changing the time to “9:41 AM” like Apple tends to do, and more.
  • Crashlytics – Excellent crash reporting for your apps in the field. Automatically uploads dSYMs on release builds so your crashes are automatically symbolicated and organized for you to focus on the most critical ones.


I don’t think we as a community focus enough on testing. There are great tools available to us, and most are so easy to use we have no real excuse not to write at least some tests for our apps.

  • Kiwi – A great Rspec-style testing framework for iOS. Built on top of SenTestingKit, so you just type⌘U to run your specs. Also includes a completely robust mocking & stubbing library as well as assertions.
  • Specta – A light-weight BDD framework very similar to Kiwi, but the expectation syntax has one major benefit over Kiwi: everything is implicitly boxed like this:expect(items.count).to.equal(5). There’s no need to wrap 5 in an NSNumber like Kiwi does. Use in conjunction with Expecta for a bunch of useful matchers.

The following are all various ways of performing end-to-end acceptance tests. These tests will actually interact with your interface, touching buttons, scrolling, etc. By nature these will be slower and more brittle, but testing in broad strokes is certainly helpful to see if all of the pieces fit together properly.

Demos / Marketing

  • Reflector ($) – Wirelessly mirror your iOS device on your Mac using Air Play. Great for doing demos of applications on your computer.
  • Placeit – A great collection of high res photos of people using devices, but the screens are templates that you can insert your own screenshots into. Very cool, and great for displaying your app in a nice way on your website.

App Sales Reporting

Of course you want to be able to see how much money you’re making on your app, right? There are a few solutions for this, but here are a couple that work well:

  • App Viz 2 ($) – a really useful Mac app for tracking sales of your apps. You run it locally and it logs in and downloads your sales reports.
  • App Annie – an online sales reporting tool. I’m less comfortable giving my credentials to iTunes to a 3rd party, but it does keep the reports up to date for you so you don’t have to run an app locally.In the comments, Josh Brown suggests creating a different user for analytics in iTunes Connect, which is a really good idea.

Grab Bag

These tools don’t have a defined category above, but deserve a mention nonetheless.

  • Quick Radar – Submitting bug reports to Apple is our only way of making their tools better. If you’re frustrated by the lack of a feature, you should be submitting a bug report. If you come across a bug,you should be submitting a bug report. One has no right to complain if they have not yet filed a radar :). With that in mind, submitting bug reports via bugreporter feels like a trip back to 1995. Quick Radar is an awesome little app that makes submitting bug reports super easy. Sports automatic posting to open radar so others can see it, in addition to tweeting, and posting to I use this app several times per week.

Be Platform-Agnostic or risk the wrath of angry customers

Beautiful girlSo we are in 2013, and despite the iPhone making huge tractions since 2007 to be the standard in mobile smart phone usage, it never was going to end up being that way forever. Android like it or not, makes up at least half, if not more in many markets, but yet we still see companies and businesses opting to firstly create an iPhone app, then an Android app. Take a look at my health fund provider, nib who just recently came out with their iPhone app to make claims easily, or Foxtel GO, which is my cable television carrier’s attempt to get mobile TV, opting for the iPhone first, and still to this day, haven’t released an Android app (there is a beta version but its limited to specific devices and will be rolling out one-by-one to other devices).
There are just as many Android developers (or JAVA developers) as iOS developers these days, so resourcing isn’t an excuse. But from a business perspective, companies aren’t realising that it is more offensive to have an iPhone app released without an equivalent for Android, than to not have a mobile app altogether. It’s a tease, so to speak, and more so, it shows a lack of foresight and anticipation from the start of the project, by choosing one over the other.

So the result of this, we see customers get annoyed and frustrated, and it leaves a sour taste in their mouths, because some CEO has an iPhone, everyone else should have. And yes I know, I’m an iOS developer myself, but I consider myself now to be more device-agnostic, and would prefer to develop for multiple platforms. If we can’t support having two projects run concurrently to work on multiple platforms, then choose a language that can cater to multiple languages.

You have the choice of multiple languages that can work cross-platform

These days we are spoiled for choice when it comes to create device-agnostic apps, apps that work with one-code base across Android, iPhone and Windows phonegapPhones. We can either go down the HTML5 route and create a pure web-based app that works perfectly across devices, using JQuery, or use it with a wrapper to create a native-feel and installed app. Some fine examples include Corona, PhoneGap and Titanium. These works fine and look amazing, with great community support. We also have Apache Flex, Adobe’s baby that was later adopted by the open-source community, which I personally enjoy using.

Apache Flex uses Actionscript 3 and MXML to create native code that works across iPhone and Android and Windows Mobile, through Adobe Air, and from the apps I have created, it works a treat. So the point being, with the number of Java developers, as well as HTML5 an Flex developers out there, there is a big enough resource pool out there to develop for both platforms. So together with the number of Android users outnumbering Apple, it doesn’t make sense to prefer one over the other.

I would never prefer Android over iOS even if the marketshare is 80/20, which is my point. Be device-agnostic, you wouldn’t do a website that works on Internet Explorer and not Chrome, which is why we need to have an acceptable standard across phones, the same way we have with websites and browsers.

[button colour=”accent” type=”squarearrow” size=”large” link=”” target=”_self”]Ask us how to develop your next app[/button]


Review of Learning Java

So the 4th edition of Learning Java, by Patrick Niemeyer Et. Al is a book that I wouldn’t recommend for novice, and especially me, having not touched Java since my Bachelor’s degree, I had to do a lot of researching in various areas, this book covers quite a broad spectrum of Java, and is used quite well as a reference book, from Swing and various Graphics APIs to Web Sockets. The book is generally easy to digest, if you have a sufficient Java background, but my thirst for learning more is still there, this book however does provide a good platform to start from. The book begins by explaining what Java is, and outlining the goals of creating your first Hello world app, then in subsequent chapters dealing with Java Compiler, the Java VM, before embarking on the basics of Java development, dealing from Statements to Exceptions and Classes and Methods.

Chapter 6 then moves to more advanced OOP concepts, such as subclassing and interfaces, and method permissions. with the chapters after dealing more with Generics and Reflection. I found Threads to be a more complicated area, and Chapter 9 deals with synchronisation and prioritisation concepts, before the book begins to look at specific areas such as File Access, Utility Classes before getting to Networking in Chapter 13, and the Web in Chapter 14. I found those chapters to be quite satisfying for an introduction to web dev, as well as the final chapter which dealt with XML programming.

Overall I recommend this book for those of us who are looking to get back into the swing of Java, although the book is quite thick, its definitely a worthy read. I will continue my Java mastery through various other more advanced books, but this book for me is a great refresher.

Concise: [rating=2]

Level: [rating=4]

Prior Knowledge: Some  Java knowledge, this book isn’t a complete Java 101. Additionally, you will also need sufficient OOP background experience, to get the general concepts involved.

My rating :[rating=3.5]


AuthorPatrick Niemeyer, Daniel Leuck

Title: Learning Java (4th Edition)

Publisher: O’Reilly Media

Year: June 2013 

SEO & Problem Words, Disambiguation, and Diversity

Google’s search engine algorithm has difficulty disseminating certain words, because of disambiguation, where a word could mean different things in different contexts. Such as when someone types in boxers, it could mean a breed of dog, underwear or fighters, so how does the search engine know how to deal with these cases? How do we get our content to appear in the correct context and intent?
Google generally would try to offer diverse results, a listing that brings up the various options if the user’s search string is ambiguous, but the problem is this affects the ranking of your listing, because of the diversity in listing. It may in fact elevate your ranking..

Introducing a bit of variety allows Google to also provide a satisfactory answer to those who are looking for something different from the government pages. Google’s testing has shown that this diversity-based approach has resulted in a higher level of satisfaction among its users. For example, the testing data for the nondiversified results may have shown lower click-through rates in the SERPs, greater numbers of query refinements, and even a high percentage of related searches performed subsequently. When Google wants to get really serious about disambiguation, it goes a different route. Check out the results for a search on application in

Screen Shot 2013-08-20 at 11.30.14 AM


The idea of deliberately introducing diversity into the result algorithm makes sense, and it can enhance searcher satisfaction for queries such as: Company names (where searchers might want to get positive and negative press, as well as official company domains) Product searches (where ecommerce-style results might ordinarily fill up the SERPs, but Google tries to provide some reviews and noncommercial, relevant content) News and political searches (where it might be prudent to display “all sides” of an issue, rather than just the left- or right-wing blogs that did the best job of obtaining links)

Results are also personalised based on search history patterns of behaviour, so if a user has a history of searching Manchester United, it will elevate searches on football related stuff above other more ambiguous terms, and where freshness matters more, it makes sense to deliver results that are time-relevant.

Google refers to this concept as query deserves freshness (QDF). According to the New York Times ( ), QDF takes several factors into account, such as: Search volume News coverage Blog coverage Social signals from Google+, Facebook, Twitter, and other sites Toolbar data (maybe) QDF applies to up-to-the-minute news coverage, as well as to other scenarios such as hot, new discount deals or new product releases that get strong search volumes and media coverage.

QDF factors in hotness based on whether the news site or blog post is actively writing about a topic that is a trending topic, such as if a natural disaster has occurred, or some very popular current affair has happened, and the way Google does this is through examining it’s own stream of billions of search queries. This is Google’s way of offering a more sophisticated set of results, putting headlines at the top of the page for some queries, and putting them in the middle or bottom for others.

This is a paraphrased extract from the book The Art of SEO.

[box type=”bio”]

Concise: [rating=3]

Level: [rating=4]

Prior Knowledge: Not a technical book, and no prior assumed knowledge. Easy to read for anyone, from marketers to tech guys.

My rating :[rating=4.0]


AuthorEric Enge, Stephan Spencer, Jessie Stricchiola, Rand Fishkin
TitleThe Art of SEO
Publisher: O’Reilly Media

Year: March 2012

O’Reilly Strata RX Health Conference

I am involved quite a bit with O’Reilly stuff and although I don’t live in the U.S, I thought I’d mention a really interesting conference coming up, Strata RX, which aims to improve healthcare through acquiring, analysing and applying big-data, which is a big-thing these days, pun intended. There will be some interesting speakers and topics, which you can find at the website, but  I am looking forward to the webcasts which will give us an insight and how innovation, technology and healthcare synergises.
I personally am a big fan of us taking control of our health in a more scientific way, and after social media, this should be the next push and initiative. Crowd-pushing of health.

At Strata Rx you’ll discover how data experts are successfully using data to advance personalized and predictive medicine; realize significant cost savings; and conduct research that points to entirely new products and markets—and how you can apply what they’ve learned to your organization.

Top Five Reasons to Attend Strata Rx 2013

  1. Connect and collaborate with your peers across the healthcare industry.Unlike many healthcare meetings, Strata Rx attendees come from a wide range of healthcare industries, but the share a common goal: to overcome the challenges and uncover the opportunities of healthcare data. The people you meet at Strata Rx may turn to out to be the most valuable connections in your career.
  2. Get face-to-face with the leading big data experts. At Strata Rx, you’ll connect with the leading minds in healthcare data as they converge to map out the future of healthcare data and share their experiences and expertise.
  3. Find solutions to your biggest data challenges. If you have gnarly data challenges, you aren’t alone. Whatever it is, someone at Strata Rx has faced it too, and probably has great advice to offer. List your biggest headaches and compare your list to Strata Rx’s agenda. Odds are, the solutions await you.
  4. Dive into detailed case studies of data successes. You’ll learn exactly how innovative start-ups and established healthcare organizations have implemented highly successful data-driven strategies. You’ll be able to take advantage of their hard-won experience in your own projects: you’ll avoid the pitfalls they encountered, and hear the tips, tricks, and strategies they discovered that ensured success.
  5. Hear it first at Strata Rx. The latest research, best practices, technologies, and analytic approaches are unveiled at Strata Rx. You’ll learn about emerging tools and technologies; new techniques in predictive or real-time analysis; developing issues in policy or privacy; and cutting edge interface or infrastructure developments. If it’s important in healthcare data, it’s at Strata Rx.

The SEO 101: What is SEO?

So what is Search Engine Optimisation? Search Engine Land give you a quick overview of what SEO is, and it’s benefits:

Accompanying the video, a simple Periodic Table that they published also shows the essential critical factors in having a strong SEO strategy. The rest of this blog is taken from Search Engine Land .

SEO Periodic Table


The SEO Factors

So the chart above, as searchengineland have it, has the first letter of each SEO element coming from the subgroup, with the second letter being the individual factor in it’s own right. So all in all, no single element or factor can guarantee you success in SEO, so simply having a great HTML page with low quality content won’t get you the SEO rewards you seek. So positive factors increase your odds of success, negative factors decrease.


On The Page Ranking Factors

Search Engine Land On Page SEO Success Factors

On The Page search ranking factors are those that are entirely within the publisher’s own control. What type of content do you publish? Are you providing important HTML clues that help search engines (and users) determine relevancy? How does your site architecture help or hinder search engines?

Off The Page Ranking Factors

Search Engine Land Off Page SEO Success Factors

Off The Page ranking factors are those that publishers do not directly control. Search engines use these because they learned early on that relying on publisher controlled signals alone didn’t always yield the best results. For instance, some publishers may try to make themselves seem more relevant than they are in reality.

With billions of web pages to sort through, looking only at ‘on the page’ clues isn’t enough. More signals are needed to return the best pages for any particular search.

SEO Violations & Ranking Penalties

Make no mistake, search engines want people to perform SEO because it can help improve their search results. Search engines provide help in the form of guidelines, blog posts and videos to encourage specific SEO techniques.

However, there are some techniques that search engines deem “spam” or “black hat”, which could result in your pages receiving a ranking penalty or, worse, being banned from the search engines entirely.

Violations are generally tactics meant to deceive or manipulate a search engine’s understanding of a site’s true relevancy and authority.

Weighting Of Search Ranking Factors

All the factors we show are weighted on a scale of one to three, as shown in the top right corner of each factor as well as reflected in the hue of that factor. A weighting of three is most important and is something you should pay special attention to because it has a bigger impact than other factors.

That doesn’t mean that factors weighted two or one aren’t important. They are. It’s just that they are of less importance, relatively speaking, in terms of the other factors on the chart. Violations are also weighted, but in negative numbers, with negative three being the worst and potentially most harmful to your SEO success.

The weighting is based on a combination of what search engines have said, surveys of the SEO community as well as our own expertise and experience in watching the space over time. We don’t expect them to be perfect. Not everyone will agree. Your mileage may vary.

But we’re confident it is a useful general guide.

“Missing” SEO Factors & The Guide’s Philosophy

Experienced SEOs may be wondering why some factors aren’t shown. How come ALT text or bolding words aren’t included as HTML factors, for example?

The answer? We don’t think those things are as important, relatively speaking. We’re not trying to boil the ocean and encompass every possible signal (Google has over 200 of them) and sub-signals (Google has over 10,000 of those).

Instead, the goal of the Periodic Table Of SEO Success Factors and this online companion guide is to help those new to SEO focus on the big picture and perhaps allow experienced SEOs to hit the “reset” button if they’ve gotten lost staring at specific trees in the SEO forest.

That’s why this SEO guide doesn’t address having your most important keywords be at the beginning or end of an HTML title tag. Nor are we trying to assess how much more weight an H1 header tag carries than an H2 tag.

We’re purposely avoiding being ultra specific because such things often distract and pull us down the rabbit hole. Instead, we hope you gain an understanding that pages should have descriptive titles, that indicating page structure with header tags may help, and topping things off with structured data is a good idea.

Do these things well and you’ve probably addressed 90% of the most important HTML factors.

Similarly, it’s not whether a good reputation on Twitter is worth more than on Facebook. Instead, we’re trying to help people understand that having social accounts that are reputable in general, which attract a good following and generate social shares, may ultimately help you achieve search success.

Want More Specifics About Ranking Factors?

We know some of you may want to drill down into specifics. In that case, the Moz Search Engine Ranking Factors survey (see results from 2013 & 2011)  is worth a look. Every two years, hundreds of well regarded SEOs are asked to determine the importance of specific ranking factors. We do hope you’ll keep any specific ranking factors in the context of the fundamentals covered by our table.

In addition, many of the success factors aren’t true algorithmic factors at all.  Content Research (element Cr) is a highly weighted ‘on the page’ factor that describes the process of researching the words people use to find your content. Understanding your user is important to your SEO success even if it’s not a ‘ranking’ factor.

You can also check out our What Is SEO / Search Engine Optimization? page, which lists some useful guides to the fundamentals (including one from Google itself) along with many more SEO resources.

Of course, the guide you’re reading now is a great resource for understanding key SEO factors. So use the links below to continue reading through the Search Engine Land Guide to SEO.

Content is king. You’ll hear that phrase over and over again when it comes SEO success. Indeed, that’s why the Periodic Table Of SEO Success Factors begins with the content “elements,” with the very first element being about content quality.

Get your content right, and you’ve created a solid foundation to support all of your other SEO efforts.

Cq: Content Quality

More than anything else, are you producing quality content? If you’re selling something, do you go beyond being a simple brochure with the same information that can be found on hundreds of other sites?

Do you provide a reason for people to spend more than a few seconds reading your pages?

Do you offer real value, something of substance to visitors, that is unique, different, useful and that they won’t find elsewhere?

These are just some of the questions to ask yourself in assessing whether you’re providing quality content. This is not the place to skimp since it is the cornerstone upon which nearly all other factors depend.

Read the Search Engine Land articles below on content quality to get you thinking in the right direction.

Cr: Content Research / Keyword Research

Perhaps the most important SEO factor after creating good content is good keyword research. There are a variety of tools that allow you to discover the specific ways that people may be searching for your content.

You want to create content using those keywords, the actual search terms people are using, so you can produce content that effectively “answers” that query.

For example, a page about “Avoiding Melanoma” might use technical jargon to describe ways to prevent skin cancer. But a search engine might skip or not rank that page highly if people are instead searching for “skin cancer prevention tips”. Your content needs to be written in the right ‘language’ – the language your customer or user is using when searching.

Our guide below points you to a variety of tools that will help:

Here are some articles from Search Engine Land that explore the topic of keyword research in more depth:

Cw: Content Words / Use Of Keywords

Having done your keyword research (you did that, right?), have you actually used those words in your content? Or if you’ve already created some quality content before doing research, perhaps it’s time to revisit that material and do some editing.

Bottom line, if you want your pages to be found for particular words, it’s a good idea to actually use those words in your copy.

How often? Repeat each word you want to be found for at least five times or seek out a keyword density of 2.45%, for best results.

No no no, that was a joke! There’s no precise number of times. Even if “keyword density” sounds scientific, even if you hit some vaunted “ideal” percentage, that would guarantee absolutely nothing.

Just use common sense. Think about the words you want a page to be found for, the words you feel are relevant from your keyword research. Then use them naturally on the page. If you commonly shift to pronouns on a second and further references, maybe use the actual noun again here and there, rather than a pronoun.

For more advice, see some of our articles below:

Ce: Content Engagement

Quality content should produce meaningful interactions with users. Search engines may try to measure this interaction – engagement – in a variety of ways.

For example, how long do users stay on your page? Did they search, clickthrough to your listing but then immediately “bounce” back to the results to try something else? That “pogosticking” behavior can be measured by search engines and could be a sign that your content isn’t engaging.

Conversely, are people sending a relatively long time reviewing your content, in relation to similar content on other sites? That “time on site” metric or “long click” is another type of engagement that search engines can measure and use to assess the relative value of content.

Social gestures such as comments, shares and “likes” represent another way that engagement might be measured. We’ll cover these in greater detail in the Social section of this guide.

Search engines are typically cagey about the use of engagement metrics, much less the specifics of those metrics. However, we do believe engagement is measured and used to inform search results.

Below are articles from Search Engine Land on the importance of engagement:

Cf: Content Freshness

Search engines love new content. That’s usually what we mean when we say ‘fresh’.

So you can’t update your pages (or the publish date) every day thinking that will make them ‘fresh’ and more likely to rank. Nor can you just add new pages constantly, just for the sake of having new pages, and think that gives you a freshness boost.

However, Google does have something it calls “Query Deserved Freshness (QDF)”. If there’s a search that is suddenly very popular versus its normal activity, Google will apply QDF to that term and look to see if there’s any fresh content on that topic. If there is, that new or fresh content is given a boost in search results.

The best way to think about this is a term like ‘hurricane’. If there’s no active hurricane, then the search results will likely contain listings to government and reference sites. But if there’s an active hurricane, results will change and may reflect stories, news and information about the active hurricane.

If you’ve got the right content, on the right topic when QDF hits, you may enjoy being in the top results for days or weeks. Just be aware that after that, your page might be shuffled back in search results. It’s not that you’ve done anything wrong. It’s just that the freshness boost has worn off.

Sites can take advantage of this freshness boost by producing relevant content that matches the real-time pulse of their industry.

HTML is the underlying code used to create web pages. Search engines can pick up ranking signals from specific HTML elements. Below are some of the most important HTML elements to achieve SEO success.

Using HTML < TITLE > Tags for SEOHt: HTML Title Tag

Imagine that you wrote 100 different books but gave them all the same exact title. How would anyone understand that they are all about different topics?

Imagine that you wrote 100 different books, and while they did have different titles, they weren’t very descriptive — maybe just a single word or two. Again, how would anyone know, at a glance, what the books are about?

HTML titles have always been and remain the most important HTML signal that search engines use to understand what a page is about. Bad titles on your pages are like having bad book titles in the examples above. In fact, if your HTML titles are deemed bad, Google changes them.

So think about what you hope each page will be found for, relying on the keyword research you’ve already performed. Then craft unique, descriptive titles for each of your pages. For more help about this, see our tutorial below:

How To Use Meta Description Tags for SEOHd: The Meta Description Tag

The meta description tag, one of the oldest supported HTML elements, allows you to suggest how you’d like your pages to be described in search listings. If the HTML title is the equivalent to a book title, the meta description is like the blurb on the back describing the book.

SEO purists will argue that the meta description tag isn’t a “ranking factor” and that it doesn’t actually help your pages rank higher. Rather, it’s a “display factor,” something that helps how you look if you appear in the top results due to other factors.

Technically, that’s correct. And it’s one of the reasons we decided to call these “success” factors instead of ranking factor.

Because a meta description that contains the keywords searched for (in bold) may catch the user’s eye. A well crafted meta description may help ‘sell’ that result to the user. Both can result in additional clicks to your site. As such, it makes sense for the meta description tag to be counted as a success factor.

Be forewarned, having a meta description tag doesn’t guarantee that your description will actually get used. Search engines may create different descriptions based on what they believe is most relevant for a particular query. But having one increases the odds that what you prefer will appear. And it’s easy to do. So do it.

Below are Search Engine Land articles that take a closer look at the meta description tag:

Using HTML Header Tags for SEOHh: Header Tags

See the headline up at the top of this page? Behind the scenes HTML code is used to make that a header tag. In this case, an H1 tag.

See the sub-headlines on the page? Those also use header tags. Each of them is the next “level” down, using H2 tags.

Header tags are a formal way to identify key sections of a web page. Search engines have long used them as clues to what a page is about. If the words you want to be found for are in header tags, you have a slightly increased chance of appearing in searches for those words.

Naturally, this knowledge has caused some people to go overboard. They’ll put entire paragraphs in header tags. That doesn’t help. Header tags are as much for making content easy to read for users as it is for search engines.

Header tags are useful when they reflect the logical structure (or outline) of a page. If you have a main headline, use an H1 tag. Relevant subheads should use an H2 tag. Use headers as they make sense and they may reinforce other ranking factors.

For more about headers, see our articles below:

Hs: Structured DataHs Structure

What if you could tell search engines what your content was about in their own “language”? Behind the scenes, sites can use specific mark-up (code) that make it easy for search engines to understand the details of the page content and structure.

The result of structured data often translates into what is called a ‘rich snippet‘, a search listing that has extra bells and whistles that make it more attractive and useful to users. The most common rich snippet you’re likely to encounter is reviews/ratings which usually includes eye-catching stars.

While the use of structured data may not be a direct ranking factor, it is clearly a success factor. All things being equal, a listing with a rich snippet will get more clicks than one without. And search engines are eager for site owners to embrace structured data, providing new and easier ways for less tech-savvy webmasters to participate.

Structured data has been around for quite some time in various forms. But recently search engines have begun to rely on it more with the advent of Google’s Knowledge Graph and Bing’s Snapshot.

This element enters the periodic table for the first time and we suspect it may become more important over time.

Read more about about structured data in the articles below:



4 Essential Skills for Bootstrapping Start-Ups |

Originally from

These four skills will enable bootstrap entrepreneurs to develop a digital marketing experience with a professional look and feel.

“Bootstrapping” your start-up company means you don’t have a ton of capital to spend on items that are essential to success. After the essentials are secured–legal, compliance and other regulatory obligations–there might be little leftover for marketing. The advertising portion of your business will have to be DIY.

But there’s a very shiny silver lining to this challenge. There’s never been a better time to market your bootstrapped company. The Internet has produced a wealth of free channels and programs over the past decade to help you reach prospective buyers. Learning how to use these tools–programs that can help you with social media, website design, SEO and content–will enable you to add a professional touch to Internet marketing channels that are essential to success.

1. Design. Basic design skills and professional templates for websites, emails and other Internet marketing channels can get your start-up the polished look and feel your brand needs. However, even the best templates need to be tweaked to your brand message.

Of the scores graphic design books I’ve read, The Elements of Graphic Design is the most comprehensive introduction to basic design concepts. Understanding these concepts is essential to customizing a well-designed template with your brand message.

2. Photoshop. Photoshop skills are a must for every bootstrap company marketer. Photoshop allows the bootstrap marketer to edit company logos and images to fit the look and feel of each Web-marketing platform. This is essential to a professional digital brand presence.

Use tutorials to learn Photoshop quickly and easily. Adobe offers tutorial videos, and there are books, magazines and how-to guides devoted to the program as well. Grab a comprehensive book on the basics of Photoshop. Just one weekend invested in learning the basics can save you days and weeks of frustration down the road.

3. Copywriting. Unless you have a formal education in marketing, copywriting tends to be among the most challenging skills for most entrepreneurs to acquire. Copywriting skills allow the bootstrapped entrepreneur to communicate the value of their product or service offerings in a compelling way. Get started on developing copywriting skills in just one weekend with The Copywriter’s Handbook by Robert Bly. High quality and persuasive content is core to all online marketing channels–and having a command of copywriting mechanics will serve you in all aspects of your business.

4. Basic HTML and CSS. Whether it’s an email, WordPress theme or social media profile, the bootstrapped marketer will need to tweak HTML code. Most templates can be easily tweaked (or easily broken!) with very minor HTML/CSS edits. The books available on CSS and HTML don’t compare to the tutorials at W3Schools CSS and W3Schools HTML. Go through the tutorials and examples one-by-one on the left column of these pages, and you’ll know all you need to be able to professionally tweak any Web or email template.

Since bootstrapped organizations don’t have giant marketing budgets, learning these skills is crucial to maintaining a trustworthy brand online. Sacrificing just a few weekends out of your busy schedule can help you develop the tools you need to be a professional presence on the Web.