Pre-launch Checklist Before Make Your Site Live

Sometimes we the developers, up our site live and face some problems. this is very often happen when deadline comes nearer. if we maintain a pre-launch checklist before make our site live then we may not face such problems like:

1. Error Management: check whether your site has a 404 not found page that includes links to functional pages. this may happen when you port an existing site to some major changes. so include some pages links to this page so that user can easily find the working page.

2. Valid Markup: check whether every page validate as XHTML or at least HTML. otherwise you may find several problems in different browsers and may be a real mess if you browse from mobile phone.

3. Basic Browser Test: check your site’s pages in many browser as you can. specially FF3, IE6, IE7, IE8, Safari, Google Chrome.

4. Minimal Semantic: Check whether every page has unique and relevant title, meta description and meta keywords. without this your search engine rank will suffer.

5. Control Search Engine Indexing: Check if you created a robot.txt in your webroot or not. it’s better for search engine crawler.

6. Favicon: Check whether your site have a favicon file or not. if you omit the favicon icon then each visitor to your site will add an additional 404 ’favicon.ico’ not found error message to your log files.

7. Minify JS and CSS files: Minification is the act of stripping out whitespace and comments as well as implementing other space saving techniques such as consolidating CSS statements and refactoring JavaScript variables to minimize size.

8. Consolidate JavaScript and CSS: Try to avoid inline javascript and css code.

9. Search Submission: Create a valid XML sitemap and submit your site for search engine indexing.

10. Compress Throughput: Enable gzip compression on your web server, it will greatly improve your network throughput at the cost of a negligible amount of CPU overhead. You can also make it happen using php code at top of the page.

11. Domain Distribution: Keep your external files accessed by your site like images, js, css distributed over several domains. Many browsers, by default, will not make more than two simultaneous connections to a single domain. But it will make many connections to different domains simultaneously. You can use sub-domains but it will cost a slight delay as each domain needs to be resolved before any requests can be sent to it.

12. Common URL Checks: Check if the passwords or back-end source code be accessed by simply navigating to a URL? Some common examples to check are:

http://YOURSITE.com/.svn
http://YOURSITE.com/.htpasswd
http://YOURSITE.com/config.inc

Importance of Sitemaps

Presence of a sitemap will help index your web pages faster, and rank them better. With a sitemap, you needn’t submit each of your individual pages to search engines separately. In this article we will see the importance of sitemaps, and how you can add a sitemap to a blog.

Normally, Google bots crawl and index all pages on a website automatically. However, these bots can always miss some pages. The missed pages are usually standalone, without incoming links from other pages. You can find out which of your pages are actually indexed by Google with this search query: “site:the URL” (please notice there is no space next to the colon). This query will list all the pages indexed within the URL.

Importance of Sitemaps

New blogs may not get any considerable increase in traffic, even if their posts are regular. The cause may be that only the home page of the blog is indexed, and individual pages just escaped the index. Due to this, these blogs won’t get any traffic these individual pages can bring.

Dynamically updated websites should definitely have a sitemap. Search bots access newer pages for indexing through links from the already existing pages, while the indexing is happening. If any of your internal pages is standalone, it may not get indexed at all. A sitemap can help get these standalone pages indexed.

Another reason behind sitemaps is that the search bots find it difficult to crawl pages whose navigation is built using JavaScript or AJAX. Search bots are built to crawl only text links. So, by submitting a sitemap, you will make crawling and indexing of your pages easier for search engines.

Effect on Traffic and Search Engine Optimization

Lack of sitemap will not cause your site to rank lower for its optimized keywords. Without a sitemap, all indexed pages within your site will rank just as it would with a sitemap.

However, sitemap will greatly increase traffic of a site, merely due to the fact that the newer pages will be indexed far faster and show up in search queries. Also, any unindexed pages within the site will be indexed by search engines, driving traffic to those pages. The effect will be a big boom in traffic.

A blogger adds content to his site to get a steady traffic growth. Hard working bloggers may add hundreds of posts to their blogs in a year. If a hundred of these pages are not indexed by search engines, imagine the loss of traffic. He can get all those pages to the search index, by adding a sitemap.

Adding a Sitemap to Blogs

You can create a sitemap with an online sitemap builder and add it to your blog. These sitemap builders crawl a website through internal links and enlist all internal pages into an XML file.

Besides XML, you can also use HTML sitemaps, which was the traditional sitemap format. The advantage of HTML is that, you can use it with both search bots and human visitors, while XML sitemaps contain pure XML source code, which a human being may not understand. HTML sitemap is nothing but a directory page within your website, which links to all the internal pages arranged by categories.

Once the sitemap is ready, upload it to your web host and link to it from your Google Webmaster Tools interface.

If you don’t already have an account on Google Webmaster Tools, sign up and verify your blog. It provides two means for verification: Meta tag authentication and HTML file upload. Verified webmasters can add sitemap for their blogs by following the instructions given.

You can build sitemaps online with one of these websites:

* Xml-sitemaps.com
* Automapit.com
* Makeasitemap.com
* Sitemapdoc.com
* Freesitemapgenerator.com

Offline Sitemap Builders

If you are using an offline sitemap builder, you shouldn’t run it when you are logged into the site. Offline sitemap builders, run from your own system, can get access to your blog hosting account if you run it when you are logged in. It means, the comment deletion and post deletion links will be accessible to the program, which will index them. This will cause your important posts and comments getting deleted automatically.

Adding Sitemap to Blogger Blogs

Within Blogger blogs, you cannot upload an XML sitemap. There is no file upload feature within Blogger, unless you use self-hosted blogs. There is a good alternative to this for Blogger platform. You can use your blog’s RSS or Atom feed as sitemap. Follow these guidelines to add the feed sitemap to Google Webmaster Tools.

1. Access Google Webmaster Tools with your Google account.
2. Within your website profile, click Add below Sitemap.
3. Choose the sitemap type as General Web Sitemap.
4. In the text field, complete the blog feed URL. For this, you only need to add “feeds/posts/default”.
5. If you are using feed syndication services like FeedBurner and have set it as the default feed in the blog’s feed setting, then use “feed/posts/default?rss” instead of “feeds/posts/default”.

The sitemap, once added, needs to be approved by Google before it will have an effect. Once approved, Google will periodically access the sitemap to index any unindexed pages within the site. This way, all newer pages are guaranteed to be in the Google index.

Conclusion

Importance of the sitemap in traffic of a website shouldn’t be underestimated. Professional websites even provide a link to their sitemap on the home page. It can be also a great alternative for users to navigate the site.

Best Practices for SaaS Software Testing & QA

Corporates come across immense challenge when they migrate from traditional development platform to SaaS based software deployment. The constraints can be language for different regions, performance issues etc. When we think about testing for SaaS based software, we primarily emphasize on three things; a> Scalability b> Released Processes and c> Architecture.

SaaS based software testing can be categorized in the following areas.

a> Functional Testing: As like any other platform, you have to make sure that the functionality of the software is working properly. The following test can be conducted to confirm this ie.

* Manual test scripts
* Exploratory charters
* Checklists
* End-to-end scenarios

You can also use some type of tools like Selenium to automate regression test.

Multi Platform support: You can use both physical and virtual machines to test on multi platform like Windows, Mac and Linux and also on the browsers like IE, Firefox, Chrome and Safari.

Security: You have to keep an eye of your SaaS software from any external threat. In order to do this, you have to plug the gap so that cross-site scripting and other security loopholes can be avoided.

Load and Stress Test: It may be possible that your software is used by large number of users simultaneously. So, it is crucial that you conduct some type of Stress or Load test to simulate real life scenario. You can try Jmeter as a stress tool.

Disaster Recovery and Rollback: If system is down due to any power outage or other disaster, it should be brought up as soon as possible. Additionally, there has to be rollback option to the last known good version of the data.

Language: Since, Saas platform is used by different clients from different locations, you have to make sure that it supports the international language.

Remote Usage: Since, clients from different locations can use the SaaS platform, it is important that those people can access to the system with good response time. You can use some kind of emulators to conduct the test. But, the best thing to create real life situation is to use the collaborators. They can conduct the test and report the results.

What is Software Escrow

What is Software Escrow:

When you arrange for your software to be written by an external developer, you and the developer can agree that a copy of the source code will be given to a neutral third party – an escrow agent. The agreement should mention that under what terms and condition the source code is going to be released.

When do you need Escrow account:

When you contract out your software to be written by any outside developer, you need to make several decisions. One of the crucial part is what the developer will do in terms of source code during delivery of the software. You may need the source code down the road to make necessary changes or any bug fixes. What is going to happen if the outsourced company goes out of business for bankruptcies or the developer may die. On the contrary, the developer may want to retain the software or may ask you extra money to release the source code. That’s where the role of the escrow account arises. You can request the company or developer to retain the source code with a third party agency, the escrow account.

What is Software Source Code:

Source code is a collection of statements written in human readable programming language. Programmer write source code to instruct the computer about the type of action it will take. The source code that builds the program is kept in a text file or database. When you purchase a program, usually, you receive the executable code and that is a machine language format. In order to change the software or any other fixing of bugs, you need the source code.

What is Software Escrow agreement:

Choosing the right Software Escrow services is the next major step. Although, you can do a google search to find many listing, but, it is equally important to know their pricing, how long they are into Software Escrow the type of services they actually offer and the number of Escrow actually claimed. Also, you can check any negative feedback about those companies through Better Business Bureau.There are three types of Escrow agreement Plan, namely, Single user Plan (SUP), Multi User Plan (MUP), Investor Security Plan(ISP).

* SUP: The single user plan is for software that will only be used by one business. Usually, it is going to be highly customized software and the cost is also very high. There are three signatories for this agreement, suppliers, the licensed user, and the software escrow agent.
* MUP: In this type of plan, the software is sold to many different users or licensees. This is suitable for packaged software. There are two signatories, the escrow agent, and the software supplier.
* ISP: Investors Security Plan is to protect software investors from fraud or scams,as huge sums of money are often involved with software development. In this case, investors, developers, and the escrow agent need to sign the agreement

What is the cost of software Escrow :

* In most cases, software escrow companies will charge both the beneficiary and the developer for getting their services. In this way, the cost is usually diversified so that the load is not going to be very high for every participant in this contract.
* If there is more than one beneficiary, everybody has to pay the fee. Generally, the fee is the same that they would have paid in case there is one beneficiary.
* If there is more than one developer, all of them have to pay the fee to the Escrow account. Escrow agreement does not only protect beneficiary, it also protects the developer. Most of the software Escrow services provide yearly and renewal rate

What are the procedures for Software Escrow:

* Agreement: The Escrow agreement is done among licensor as depositor, his licensee as beneficiary, and an escrow agent.
* Deposit: The licensor, as per the escrow agreement, delivers the asset to be escrowed, and change the ownership of it, to the escrow agent. The asset contains a copy of a source code and a copy of an object code, documents such as design, specification, flow chart, manual, maintenance material etc.
* Custody: The escrowed agent puts the asset in a sealed container. Once it is sealed, the agent or other person is not allowed to access it.
* Delivery: If any incident mentioned in the agreement occurs, like lisensor goes bankrupt, no maintenance for a certain period of time, the licensor’s closing his place of business, etc. the agent delivers the asset to the licensee on request. If the licensor raises an objection for delivery, he can hold the asset till the matter is settled between the parties.
* Fees: The licensor usually pays the fees. licensee is allowed to pay it to secure the continuance of custody.

Dedicated Hosting vs. Cloud Computing Infrastructure

There are various choices for web hosting plan for businesses. The best choice for web hosting entirely depends on how the business is set up. For the established businesses dedicated hosting seems to be the ideal choice. However, for the startups, cloud hosting is a better choice.

Who should use Cloud Computing Infrastructure?

Cloud hosting infrastructure relies on its web-based technology, and is ideal for those lacking resources to invest heavily into your hosting. It is anticipated that cloud computing must experience several significant growth spurts during the next few years. It’s probably cloud hosting what your business needs.

Who should use Dedicated Hosting?

Dedicated server is meant for established businesses that doesn’t wanna invest in any hardware or infrastructure or the additional space that comes with having your servers on-site.

A dedicated hosting is dedicated to the business’s websites, applications and platforms. The business will enjoy the full and complete power and bandwidth of your dedicated servers, and nothing should affect server performance, unless you choose to let it.

Key Differences

Hardware requirements

One of the major drawbacks with cloud hosting is the lack of access to the operating system and/or hardware. In case you need to fine tune the software/hardware stack then dedicated server is the best solution.

Scaling

This is one of the most considerable advantages cloud hosting, scaling up beyond a single server is notoriously difficult on a dedicated server setup -load balancing, maintenance session across different machines and such other issues make scaling quite difficult.

Comparatively, Cloud hosting allows easier scaling by spinning up more instances as required. The instance can be programatically spun up and destroyed as required meaning the application can handle all the scaling without the need for intervention. Further, to write custom code, third party products such as RightScale can sit on top of a cloud hosting instances and implementing all the scaling automatically.

Requirement for OS/Hardware

One of the major shortcoming with cloud hosting is the lack of access to the operating system and/or hardware. In case you wanna upgrade or fine-tune a software/hardware stack then dedicated hosting is the only way to go.

Cost

Dedicated hosting offers price advantage for small installations. The single low-spec (2GB RAM, 160 GB Storage, 2Ghz single-core CPU) dedicated server will cost about $130 per month for dedicated hosting. This actually comes with a huge amount of bandwidth (2TB per month on Server Beach for example). Contrastingly, the cloud hosts charge a little less for the hardware. However, the charges for bandwidth with cloud hosts are much more expensive approximately $0.11 – $0.14 per GB. In case the visitors to your site require lot of bandwidth that means extra charge.

Security

A cloud server is less secure than the dedicated host. In case, your instance is a part of a cluster of machines normally that will be less secure than an isolated machine, which has fewer connections. It needs to be considered that cloud hosts will have a dedicated security team to patch the OS when necessary and implement security best practices which will often not be fully adhered to if you have to manage the security of a dedicated host. The greatest vulnerabilities are usually at the application level that is independent of the platform.

Ease of use

Cloud servers are easier to handle and use than the dedicated servers. Further, servers can be added via control panel and all OS patching can be easily managed.

Reliability

Cloud servers have a built in failover, which ensure that you don’t have a hardware/server failure. It must be remembered that a cloud host is a cluster of servers that you can share with other users, severe slowdowns can occur from the other users running long running queries on the cluster.

Migrate from Google Blogger to Self-hosted WordPress Blog

When Google Blogger hit the Blogging market in 1999, it was very popular because it is very easy to set up. Then, WordPress came in the scene and it changed the traditional concept of blogging platform. It is simple to use and users can customize the theme using CSS and HTML. Self-hosted WordPress blogs got much popularity for the last few years. If you already hosted your blog using Google Blogger and want to move to self-hosted wordpress blog, this article shows you different steps.

* You need to register your own domain with a domain register. Then, you have to buy some server space from the web host to host your site.
* Next, you have to create wordpress database.
* Then, you need to export your blog from Blogger blog, if something doesn’t go right. You do this by logging into Blogger, and then you go to your blog’s Settings, you will see Basic tab. You click the Export Blog link there, press Download Blog button and you will be able to download your blog.
* Your next task is to import your blog to self-hosted WordPress. Log into WordPress, click on Tools->Import. All of the Blogging platforms that can be imported to WordPress will be shown. Select Blogger link and hit Authorize button to import post, comments and blogger from Blogger to WordPress blog. Then, it will take you to Google Window where you have to press Grant Access button.
* You will see all of your posts from Blogger blog. Select the one you want to Import and click on Import button. After your Blogger posts and comments are imported into WordPress, you will be able to import the authors by pressing the Set Authors button. You will also be able to map the Blogger URL to WordPress one. The Add User button will let you create new author in WordPress.
Now, you are all set with the new imported Blogger blog to your self-hosted WordPress.

10 best Twitter Tips for Power Users

If you want to be a power user on twitter, make every tweet a magic, you need to go an extra mile. There’s a lot of things to explore on Twitter. If you wanna be a power user to make the most of Twitter, there are several cool tips and tricks to take your experience beyond the typical Twitter usage. Listed out are 10 best Twitter tips for power users.

1. Socialoomph

Even if you have a few hundred or a few thousands, you can manage them with Socialoomph. It offers a host of features that automates your job on Twitter. Some of the exclusive features of SocialOomph includes scheduling tweets, tracking keywords on Twitter, saving and reusing drafts, Bit.ly URL shortening, personal status feed and more. Automatically follow those who follow you and unfollow those who unfollow you.

2. Multiplying followers in Twitter

You need to propagate your Twitter posts on various social networks to get followers. There’s an aggregation service called HelloTXtt that allows you to post once through their interface and propagate the message to all other major microblogging networks like Twitter, Tumblr, Jaiku, Pownce, and a few smaller ones.

3. Blogging/ Twitter Mashup

Most of you must be having a blog. Do you know there are much more people reading blogs that those using Twitter. Why not use your blog for Twittering? There’s service called LoudTwitter that allows you take all your tweets for a day, bundle them up into a blog post and publish it on your blog. We all know Twitter is a real time application, but it’s spread across the world.

4. Tag your followers into groups

Are you using the same Twitter account for your personal or business life. Well, In the current form Twitter has no filters to draw a line between your close friends and potential clients following the same account. You can sort out people that follow you into groups using a simple third party service known as Twitter Groups. It allows you to tag your followers into different groups. With Twitter Groups you will be able to send the message to each person one at a time

5. Build up followers with like-interest

On Twitter you must be looking for people with the same interest as you. There’s a Twollow.com service that allows you automatically start following people based on keywords you are interested in. Simply it’s a great way to build up followers.

6. Tweet your status

If you are a Twitter user with lots of friends on Facebook, you can turn your tweets into your Facebook status updates. Twitter has a Facebook application that integrates Twitter feed into your Facebook feed. Once this application is installed your tweets would appear in the news feed of all your friends. This would allow you exposure without direct followers. What’s more, Twitter is smart enough to filter out @replies so that personal messages donation end up on your profile.

7. Handy Firefox Plugins

This is a handy Firefox plugin for any power users on Twitter. With TwitterBar you can post tweets about web pages you are currently browsing. Not just the web address, you can also type an additional text along with the tweet as a note. It gets added as a tiny icon into your Firefox address bar. When clicked it will send an update containing everything in the address bar.

8. Timeline for each city

This is a simple but handy idea for Twitter power users. Store the public timeline xml feed. This will allow you to input a specific city to see what’s been said lately by people that live in your city.

9. Fetching latest updates

For any power user Twitter updates are crucial. You can use a simple web application for Twitter updates called GeoTwitter. It is a mashup of Google Maps API and Twitter API. It fetches the latest updates from the public timeline every minute and displays them on an interactive map.

10. Making tweets keyword-rich

One of the simple tricks that every power user should adopt is optimizing your tweets. Start your tweet with a primary keyword to theme each message. Look for buzz word that would enable you to make the most of timely searches for that issue. However, it doesn’t mean you make your message keyword rich without adding value to your tweets. Choose the words that will best convey your message.