4 product development tips for increasing success

Share on Facebook0Share on Google+0Tweet about this on Twitter0Share on TumblrShare on LinkedIn0

checklist-for-product-development-tips

Planning, developing and launching products has both never been easier and never been harder. The explosion of tools and platform eco-systems around the internet, have opened the doors for product developers everywhere. The problem is that it’s also easier then ever before to derail your product development efforts.

Keeping these tips in your arsenal will help to give you a better perspective when making product development choices.

  1. Assign your own “right fit” budget – it’s common for projects to suffer from either not enough funding or resources, or having too many. While there’s nothing harder then making product development estimates, try to gauge from your own experience where money or resources would’ve helped, and where you didn’t need much.
  2. Focus on the money – I’ve written before about making sure you’re being “choosy different” not just “different”. We all have bills to pay for and/or staff or family to take care of. When scoping a path for your product development make sure you’re following the money. Use tools like Google Keyword Planner to help create a map of how large your market is. A big warning sign here is that you’re trying to enter a market with little competition. While sometimes “little competition” means you’ve got a market to capitalize, it may also signal that there is little competition because there are no customers.
  3. Engage with iterative collaboration – While you don’t want to derail yourself by surrounding yourself with too many different opinions, you do want to make sure that you’re engaging and eliciting feedback from many different angles to your product; not just your internal team. Front-line support staff, sales and perhaps existing customers should be engaged to make sure you really nail with laser focus the key elements of your product launch.
  4. Wasted time and/or Devil’s Advocates should be eliminated – While you can really benefit from increased communication with people / stakeholders outside of your team, this needs to be tempered against those who are either just wasting your time or continuously “playing Devil’s Advocate”. Having different viewpoints is extremely important during the creative process, but there’s also a time when everyone involved with the product need to go into heads down focus mode to just crank things out. These are the development periods where objectives shouldn’t be continuously challenged just for the sake of challenge.

The explosion of platforms and tools have increased product development to new heights.

what is multi-page web application design?

Share on Facebook0Share on Google+0Tweet about this on Twitter0Share on TumblrShare on LinkedIn0

multi-page-web-application-design

Multi-Page Application (or MPA) Design has been a stable application pattern of web development since nearly the beginning of the world wide web itself. It is still a popular application approach of technology bases such as PHP / Django, Ruby on Rails and the ASP.Net stack, yet is under constant fire from some recent application design purists. Despite it’s popularity, they commonly argue that it is a pattern best left on the scrap heap of the World Wide Web.

Rather than stick to the academic or theoretical discussions, I’m going to use my own application development experiences to run through some of the benefits and costs of using such a pattern for your project.

the benefits of a multi-page application design

  1. A Page-Per-Function – in typical MPA design, a physical page in your application is nearly always responsible for a single function in the app. This can really help the development team behind the application. Suzy can take pages x and y, while Tom can work on CSS and layout for page z.
  2. Strong SEO – if this web application is accessible by the Internet at large, then part of an application development strategy could be to structure the page and/or content a specific way to try and increase visibility and ranking with Google, Bing or Yahoo! indexing. For every page in your app, you can create and fine-tune its own specific keyword focus.
  3. Lazy Loading Pages – depending on the size and complexity of the MPA, one of its benefits is that it enforces a “lazy loading” behaviour. In other words, content and resources are not fetched by the browser until they are needed. Why force visitors of your application to download any heavy images or JavaScript modules if they are in an area of the app that isn’t used much?
  4. Application Security – another benefit of the MPA design is that application security is handled in the safest spot it can be; on the web server. Permissions, tokens and authorization can be controlled and enforced by the server making it a little more difficult to be exposed to the client.
  5. Deep linking / preserving browser navigation history – one of the cornerstones of the internet in general is its strong and careful preservation of site navigation. The MPA design allows for the browser to manage and control the site’s history taking it out of the hands of the application developer. This also comes into play when the requirements for the application involve the support of “deep linking”.

the cost of using a multi-page application

As you might imagine by now, there is no such thing as the perfect application design. The MPA has several costs associated with it, so let’s go through them now.

  1. Common is never usually “common” for long – the typical developer will start MPA design by creating common HTML markup that is defined once, but used around the application. For example, the header and footer areas of an app are usually common pieces of markup and/or business logic that quickly get muddled over time. As the application takes on more and more of a life, these common areas usually begin to pick up many “special cases”. Only display this header in case X and Y, but not in case Z where a different menu or text is required. The sales team have added role W which requires additional header display logic, etc.
  2. Many server round-trips with each page – as you move through an MPA, the browser needs to make requests to fetch resources such as images, CSS and/or JavaScript modules. Depending upon how many resources the browser is fetching and from where they are being fetched from, application performance can start to degrade having a negative experience for the user. While many cacheing techniques exist, it also depends on your application requirements; it may not be possible to cache these resources on the server.
  3. Lots of duplication – Because most areas of a web application often require similar-but-different layout, presentation and/or behaviour there can be a lot of areas with duplicate code. A “simple” change to one layout, can cause a ripple effect through the app as other areas may be forced into needing a fix as well.

There you have it. This is my own experience and education coming into play for this breakdown of the Multi-Page Application design pattern for the web.

What did I miss? What would you say is a benefit / cost of the MPA?

my 4 tips for buying wordpress themes 2015

Share on Facebook1Share on Google+0Tweet about this on Twitter1Share on TumblrShare on LinkedIn0

buyers-remorse

WordPress as a product has come a super long way in the past several years. Long since moving on past a mere “blogging tool”, it is often a multimedia platform for many companies trying to stay connected with their audience.

As a product it has also been consistently improving. With each release, either stability is improved or a few features are added – most oftentimes both – which is a real feat in software engineering.

What is the hardest WordPress task?

But let’s get real here. The hardest thing about WordPress is NOT the software. The hardest problem is still getting a theme.
Continue reading

choose to be choosy different not just different

Share on Facebook0Share on Google+0Tweet about this on Twitter0Share on TumblrShare on LinkedIn0

being-choosy-different

If you do any kind of research at all in product development, a common phrase spun by most of the online gurus is to “be different” in order for your product to stand a chance within the same marketplace that is swamped by other companies.

On the surface this passes as “good advice” but when it comes down to the meat and potatoes of actually building or launching your product, it’s nothing more than useless vague platitudes.
Continue reading