2017 - Archive

Friday, August 18, 2017

Google Chromecast, How to Use it & Set it up.

August 18, 2017
Gone are the days Cable TV used to be the best way of getting foreign content on your TV screen as it is been replaced with something far better considering the facts that cable tv are somehow overpriced which I think its absolutely uncalled for.

If you are geeky or techie, you’ll bear me witness that streaming is the new cable. For God sake why will you pay extra subscription for cable TV when you can simply stream directly with the same internet subscription to your TV set?
Here are smart devices that you can use as a substitute for your cable tv to make life easier and access the same foreign content without the overpriced monthly cable TV subscription. With any of these devices, what you will only be concern of with is your internet subscription and nothing elese. No more Monthly cable tv subscription.

So, if you are planning to ditch your cable contract and go for internet content, you should be thinking about purchasing Roku Ultra Streaming Device, the Amazon Fire TV Stick, Apple TV or the Google Chromecast
But let’s talk about Google Chromecast.
Google helps simplify your online life—from email and online storage to news and digital maps. But it can also take over your TV with its Chromecast, a streaming dongle that got a colorful makeover in 2015 and a 4K "Ultra" upgrade last year.
The Google Chromecast
The Google Chromecast Ultra for media streaming allows you stream in up to 4K Ultra HD and HDR with stunning pictures and lightning speed. What this means is that when you plug it into your regular TV HDMI port over your WIFI network it allows you stream movies, music and entertainment content in crisper picture, deeper color and smoother video quality with almost to no buffering and smoother streaming.
Whether your TV is 4K or HD, Chromecast Ultra automatically optimizes your content for the best picture quality possible.
Why Do I Need Chromecast?
With Chromecast, you get unlimited entertainment, all on your schedule. So, you’re not limited to the restrictive bouquet type access that you get on cable. With the Chromecast, you can access the latest movies on Netflix, the latest series on HBO and YouTube or browse over 200,000 TV shows and movies, 30 million songs plus radio, sports, games and more plus a range of free, subscription or paid content from thousands of apps.

Why Don’t I Need Chromecast?
If you prefer to watch TV the old-fashioned way (via network television, cable or DVR), Chromecast won't do you much good. Similarly, if you don't subscribe any streaming video services, Chromecast may be of limited utility. If you own a Roku, Apple TV, PS4 or Xbox One, your device already gives you access to most of the same content you'd get via Chromecast.
How Do I Set Up Chromecast?
Just plug it into your TV, have a smartphone or computer handy, and follow the instructions. As soon as Chromecast and your controller device connect to the same Wi-Fi, they should recognize each other and walk you through the rest of the process. 

Now, that’s a whole lot more than Cable TV offers you. Even if your WIFI network isn’t ready for the demands of 4K, Chromecast comes with a built in Ethernet adapter so you can enjoy rock solid streaming over a wired connection.
Where Can I Get Chromecast?
Well, you can get it on AliExpress, Bestbuy, Ebay for $35or Jumia Global for just N33,900.
Are you using it already? Lets here what you think.

Wednesday, August 16, 2017

How To Run Or Start Command Prompt In Windows - CMD.

August 16, 2017

Recommended: Introduction To Windows Command Prompt - CMD

Step 1: Click on the Start Menu
Step 2: Click on the Run option
Step 3: Type the appropriate command in the Open: field. For example if we are using Windows XP we would type cmd.exe.
Step 4: Click on the OK button
After following these steps you will be presented with a window that look similar to Figure 1 below.

Windows Command Prompt
Figure 1. Windows Command Prompt
The command prompt is simply a window that by default displays the current directory, or in windows term a folder, that you are in and has a blinking cursor ready for you to type your commands. For example in Figure 1 above you can see that it says C:\WINDOWS>. The C:\WINDOWS> is the prompt and it tells me that I am currently in the c:\windows directory. If I was in the directory c:\program files\directory the prompt would instead look like this: C:\PROGRAM FILES\DIRECTORY>.

To use the command prompt you would type in the commands and instructions you want and then press enter. In the next section we will discuss some useful commands and how to see all available built in commands for the command prompt.

Useful commands

The command.com or cmd.exe programs have built in commands that are very useful. Below I have outlined some of the more important commands and further instruction on how to find information on all the available commands.

The Help command - This command will list all the commands built into the command prompt. If you would like further information about a particular command you can type help commandname. For example help cd will give you more detailed information on a command. For all commands you can also type the command name followed by a /? to see help on the command. For example, cd /?
The Exit command - This command will close the command prompt. Simply type exit and press enter and the command prompt will close.

The CD command - This command allows you to change your current directory or see what directory you are currently in. To use the CD command you would type cd directoryname and press enter. This would then change the directory you are currently in to the one specified. When using the cd command you must remember how paths work in Windows. A path to a file is always the root directory, which is symbolized by the \ symbol, followed by the directories underneath it. 

For example the file notepad.exe which is located in c:\windows\system32 would have a path as follows \windows\system32\notepad.exe. If you want to change to a directory that is currently in your current directory you do not need the full path, but can just type cd directoryname and press enter. For example if you are in a directory called c:\test, and there were three directories in that the test directory called A, B, and C, you could just type cd a and press enter. You would then be in the c:\test\a. If on the other hand you wanted to change your directory to the c:\windows\system32 directory, you would have to type cd \windows\system and press enter.

The DIR command - This command will list the files and directories contained in your current directory, if used without an argument, or the directory you specify as an argument. To use the command you would just type dir and press enter and you will see a listing of the current files in the directory you are in, including information about their file sizes, date and time they were last written to. The command will also show how much space the files in the directory are using and the total amount of free disk space available on the current hard drive. If I typed dir \test I would see the contents of the c:\test directory as shown in Figure 2 below.
Dir Command
Figure 2. DIR of c:\test
If you examine the screen above you will see a listing of the directory. The first 2 columns are the date and time of the last write to that file. Followed by whether or not the particular entry is a directory or a file, then the size of the file, and finally the name of the file. You may have noticed that there are two directories named . and .., which have special meaning in operating systems. The . stands for the current directory and the .. stands for the previous directory in the path. In the example above, .. stands for c:\windows.

Also note for many commands you can use the * symbol which stands for wildcard. With this in mind, typing dir *.txt will only list those files that end with .txt.

The Copy command - This command allows you to copy files from one location to another. To use this command you would type

copy filetocopy copiedfile. For example if you have the file c:\test\test.txt and would like to copy it to c:\windows\test.txt you would type

copy c:\test\test.txt c:\windows\test.txt and press enter. If the copy is successful it will tell you so and give you back the prompt. If you are copying within the same directory you do not have to use the path. Here are some examples and what they would do:
copy test.txt test.bak Copies the test.txt file to a new file called test.bak in the same directory
copy test.txt \windows Copies the test.txt file to the \windows directory.
copy * \windows Copies all the files in the current directory to the \windows directory.
The Move command - This command allows you to move a file from one location to another. Examples are below:
move test.txt test.bak Moves the test.txt file to a new file renaming it to test.bak in the same directory.
move test.txt \windows Moves the test.txt file to the \windows directory.
move * \windows Moves all the files in the current directory to the \windows directory.
At this point you should use the help command to learn about the other available commands.


Redirectors are an important part to using the command prompt as they allow you to manipulate how the output or input of a program is displayed or used. Redirectors are used by appending them to the end of a command followed by what you are redirecting to. For example: dir > dir.txt. There are four redirectors that are used in a command prompt and they are discussed below:
> This redirector will take the output of a program and store it in a file. If the file exists, it will be overwritten. If it does not exist it will create a new file. For example the command dir > dir.txt will take the output of the dir command and place it in the dir.txt file. If dir.txt exists, it will overwrite it, otherwise it will create it.
>> This redirector will take the output of a program and store it in a file. If the file exists, the data will be appended to the current data in the file rather than overwriting it. If it does not exist it will create a new file. For example the command dir >> dir.txt will take the output of the dir command and appends it to the existing data in the dir.txt file if the file exists. If dir.txt does not exist, it will create the file first.
< This redirector will take the input for a program from a specified file. For example the date command expects input from a user. So if we had the command date < date.txt, it would take the input for the date program from the information contained in the date.txt file.
| This redirector is called a pipe. It will take the output of a program and pipe it into another program. For example dir | sort would take the output of the dir command and use it as input to the sort command.

Batch Files

Batch files are files that have an extension ending in .bat. They are simply scripts that contain command prompt commands that will be executed in the order they are listed. To create a batch file, just make a file that ends in .bat, such as test.bat, and inside the file have the commands you would like. Each command should be on its own line and in the order you would like them to execute.
Below is example batch file. It has no real use but will give you an example of how a batch files works. This test batch file contains the following lines of text:

cd \test
cd \

If I was to run the test.bat file I created I would have output that looks like the following:
Batch File
Figure 3: Example of a batch file running.
As you can see from the figure above, my batch file executed each command in my batch file in the sequence they were written in the batch file.

Console Programs

If a program is created for express purpose of running within a command prompt, or console window, that program is called a console program. These are programs that are not graphical and can only be run properly from within a command prompt window.
Below is a list of sites that contain console programs that may be useful to you:

There are many more sites that have tools available. Just do a Google search on windows console programs.

Introduction To Windows Command Prompt - CMD

Introduction To Windows Command Prompt - CMD

Before Windows was created, the most common operating system that ran on IBM PC compatibles was DOS. DOS stands for Disk Operating System and was what you would use if you had started your computer much like you do today with Windows. The difference was that DOS was not a graphical operating system but rather purely textual. That meant in order to run programs or manipulate the operating system you had to manually type in commands. When Windows was first created it was actually a graphical user interface that was created in order to make using the DOS operating system easier for a novice user. As time went on and newer versions of Windows were developed DOS was finally phased out with Windows ME. Though the newer operating systems do not run on DOS, they do have something called the command prompt, which has a similar appearance to DOS. In this tutorial we will cover the basic commands and usage of the command prompt so that you feel comfortable in using this resource.

Using the Command Prompt or Dos Window

When people refer to the command prompt they may we refer to it in different ways. They may refer to it as a shell, console window, a command prompt, a cmd prompt, or even dos. In order to enter the command prompt you need to run a program that is dependent on your operating system.

Tuesday, August 15, 2017

Facebook Covertly Launches A Photo-Sharing App In China

August 15, 2017
The Chinese market is no doubt a pot of gold for big technology giants with over 700 million internet users, but the Chinese government heavily controls the Internet within its borders through its Golden Shield project – the Great Firewall of China.
Now it seems like Facebook is trying to secretly enter the largest populous market by releasing an all new social networking app in China that does not carry its brand.

Dubbed Colorful Balloons, the photo-sharing app appears to mimic the look and feel of Facebook's Moments, an app that allows its users to share photos with their friends and family members.
According to The New York Times, Facebook approved the release of Colorful Balloons back in May and released it through a Chinese company called Youge Internet Technology, without any affiliation with the social networking company.

China banned Facebook in July 2009, its photo-sharing app Instagram in 2014 and even partially blocked the largest instant messaging platform WhatsApp in July. Since then Facebook CEO Mark Zuckerberg trying to break into the world's biggest online market.

Zuckerberg has made a number of visits to China in recent years to re-enter in the market, meeting with Chinese government officials and reportedly working on a censorship tool for the country to help it suppress posts from appearing in a particular geographic area.

Colorful Balloons now gives the social networking company a way to get an idea on how Chinese users digitally share information with their families and friends or interact with their favourite social media platforms.

Unlike the Moments app which connects users through Facebook, the Colorful Balloons app links users through China's biggest social network, WeChat.
Like Moments, Colorful Balloons has been designed to collate photographs from your smartphone's photo albums and then share them, but in China, it does so with the use of a QR code used by WeChat.

Since the app is currently not widely distributed in the country, it is not clear if the Chinese government is aware of this Facebook's efforts. The Cyberspace Administration of China did not respond to a request for comment from the NYT.

In response to this news, Facebook said it's "spending time understanding and learning more about the country in different ways. Our focus right now is on helping Chinese businesses and developers expand to new markets outside China by using our ad platform."

The Chinese government is likely already reviewing the app in question, which could end up disappearing if the government find anything suspicious.

Self-Driving Cars Can Be Hacked By Just Putting Stickers On Street Signs

August 15, 2017
Car Hacking is a hot topic, though it's not new for researchers to hack cars. Previously they had demonstrated how to hijack a car remotely, how to disable car's crucial functions like airbags, and even how to steal cars.

But the latest car hacking trick doesn't require any extra ordinary skills to accomplished. All it takes is a simple sticker onto a sign board to confuse any self-driving car and cause accident.

Isn't this so dangerous?

A team of researchers from the University of Washington demonstrated how anyone could print stickers off at home and put them on a few road signs to convince "most" autonomous cars into misidentifying road signs and cause accidents.

Saturday, August 12, 2017

Free Download - Yoast SEO Wordpress Plugins Pack v5.2 With 4+ Addons Latest Updated

August 12, 2017

Download Yoast SEO v5.2 WordPress Plugin With 4+ Addons Pack Updated On August 2017

Yoast SEO Premium v5.2 WordPress SEO plugin adds several features to the Yoast SEO plugin. This plugin is written from the ground up by Joost de Valk and his team at Yoast to improve your site’s SEO on all needed aspects.

In This Yoast SEO Plugins Pack has Included Addons List :
Yoast Local SEO v5.2
Yoast SEO News v5.2
Yoast Video SEO v5.2
Yoast Woocommerce SEO v5.2

Demo   |     Download

Thursday, August 10, 2017

Dangers of SSL Certificates Warnings and How to Resolve Them as a Website Owner

August 10, 2017


An Overview of SSL Warnings

Common SSL errors include warnings of a security certification mismatch, security certificates aren’t issued by a trusted certificate authority and notices that the site may be a phishing scam. Warnings in web browsers like these are intended to inform users of the potential risks of using the website, while website administrators who fail to resolve these warnings create a serious risk for their business.
These warnings are taken to a new level by Google Chrome 56 and Mozilla Firefox 51. These browser versions put insecure login page warnings prominently on the top of the address bar. The SSL warnings in web browsers will only become more severe, since Google plans to eventually show a not secure warning for every page served over HTTP to force sites to migrate to HTTPS. Right now, the warnings will be prominent for every login page that isn’t already HTTPS.
Browsers will be amping up the warnings until it is almost impossible for someone to go to an unsecure site or any site that appears to be unsafe.
Browsers are building in warnings to sites that don't have the right SSL certificates that warn your customers away.
Browsers are building in warnings to sites that don't have the right SSL certificates that warn your customers away. | Source

The Danger of SSL Warnings to Users

Users are warned away from sites with SSL warnings because their browser outright states the site may be a phishing site intended to steal your information. Other SSL warnings state that the site may intercept any data you send to the legitimate server, essentially letting you access the legitimate site but steal your credentials or financial information in the process.
Warnings in web browsers are stop signs for most users. A majority of browsers will abandon your website at the sight of these warnings, killing your site’s search engine optimization as surely as a failure to load due to a slow connection. Those few that click through will now be ambivalent to doing business with the site due to security concerns. That negative perception will only grow as the red alerts given by browsers for sites without SSL and HTTPS will become not only unavoidable but require deliberate circumvention.

The Danger of SSL Warnings to Website Administrators

SSL protects the privacy and security of your website. A large percentage of web users will refuse to buy anything from a website that isn’t secure; even websites that are protected by high level antivirus software and stringent information security guidelines will lose out on a fifth percent of potential purchases because customers prefer to buy from sites they know are safe. The ideal solution is installing SSL certificates from a reputable Certificate Authority and putting security icons near the total amount owed in the shopping cart. These security icons are separate from giving customers a variety of payment options that let them protect their financial information like Paypal or Bitcoin or letting them checkout as guest so they don’t have to register with your site.
As Google pushes everyone to a secure web by warning users about sites that are not already on HTTPS or using active SSL certificates, there is the possibility that websites will be pushed to the back pages of search results when they don’t meet security requirements just as mobile-unfriendly sites are being penalized in search engine results pages now.

How to Solve SSL Warnings on a Website

If the certificate is valid but listed as expired or not yet valid, the simplest thing to check is the server’s date and time. If this is wrong, it could cause security errors on an otherwise secure site. You should also check the certificate’s expiration date, and if it is actually expired, renew it. If necessary, generate a new SSL certificate. If the group that issued the certificate is no longer in business, buy a new one from a good SSL certifying authority.
Web browsers use a list of certificate authorities to determine which SSL certificates they will accept. Many self-signed certificates issued by the server itself will generate certificate is not trusted errors, an invalid security certificate notice or warning that the SSL certificate was not issued by a trusted provider. Website administrators can solve this problem by getting a certificate from a widely trusted certificate provider. If you have an SSL certificate from a Certificate Authority on the server, the errors could be caused by a second, self-signed certificate still on the server that needs to be removed.
These two issues are rare, but they are the simplest to solve, which is why they were mentioned first. The most common reason why websites generate a certificate not trusted error is that the certificate wasn’t installed correctly. You may need to reinstall the certificate or an intermediate certificate in the broken chain. Don’t forget to check the installation with an SSL certificate tester to verify that the chain that verifies that your SSL is secure is now complete.
Mismatch errors like “the security certificate presented by this site was issued for a different address” or “this certificate is only valid for otherdomainaddress.com” occur when the web address for the SSL certificate doesn’t exactly match the domain name in the URL bar. SSL certificate mismatch errors could generate warnings that you reached the wrong site (listing the site name versus the certificate’s site). Some browsers identify the mismatch error as a potential misconfiguration error, while most simply flag it as a threat to the user.
Self-signed certificates can cause this error, as well. In rare cases, the error is due to the domain name being misspelled in the certificate. Administrators can solve this problem by installing multi-domain certificates that work across multiple domain names or IP addresses. This is one way to prevent mobile ready websites and redirects from other domains from being killed by incorrect SSL warnings. If you set up brand new domains, the best solution to prevent errors is to buy an SSL certificate for that site.

Wednesday, August 9, 2017

Download For Free MagOne v6.2.6 – Responsive News & Magazine Blogger Template

August 09, 2017
MagOne v6.2.6 – Responsive News & Magazine Blogger Template

MagOne v6.2.6 – Responsive News & Magazine Blogger Template

MagOne v6.2.6 is one of the best seller responsive newspaper and magazine Blogger templates of ThemeForest. Drag and drop to build a magazine Blogger website in minute. you can also Download Previous version of this Blogger template MagOne v6.1.2 – Responsive News & Magazine Blogger Template. for more Information about this Blogger template Please Click on Demo Button.

Demo  |    Download

Download For Free Brakt v5.0 – Responsive Personal Blogger Template

August 09, 2017
Brakt v5.0 is a Clean, Elegant and Personal Blogger Template specially made for creative bloggers. It provides clean, clutter free and gorgeous minimalistic layouts that make your content look great on any kind of device. It is ideal for personal, lifestyle blogs. You can also Download Previous Version of this Blogger Template Brakt v4.0 – Personal Blogger Template. for more information about this Blogger template please click On Demo Button.

Demo   |    Download

Download For Free Admin Columns Pro v4.0.7 | Admincolumns WordPress Columns Manager Plugin

Admin Columns Pro v4.0.7 is a Add, remove and re-order your columns WordPress Admin Columns Manager Plugin. Using there drag-and-drop-interface, loved by thousands of users around the world, you gain full control over your posts and other overview screens. Add, remove and re-order any column for posts, users, taxonomies, comments and media. With over 90 columns to choose from including: featured images, custom fields and taxonomies. Create the interface you’ve always dreamed of (if you’re into WordPress that much). You can also Download Previous Version of this plugin Admin Columns Pro v4.0.6 – WordPress Columns Manager Plugin. for more information about this WordPress plugin please click on Demo button.

Demo   |    Download

Download For Free Mailster v2.2.8 – Email Newsletter Plugin for WordPress

August 09, 2017
Mailster v2.2.8 – Email Newsletter Plugin for WordPress.

Download Mailster v2.2.8 | Codecanyon Premium Email Newsletter Plugin for WordPress

Mailster v2.2.8 is an easy to use Email Newsletter Plugin for WordPress. This plugin will help you to Create, send and track your Newsletter Campaigns without hassle. You Can also Download Previous Version of this plugin Mailster v2.2.7 – Premium WordPress Email Newsletter Plugin. for more Information about this WordPress plugin please Click on Demo Button.

 Demo   |   Download

Download For Free AdForest v2.5.0 | Themeforest Premium Responsive Classified Ads WordPress Theme

AdForest v2.5.0 | Themeforest Premium Responsive Classified Ads WordPress Theme
AdForest v2.5.0 is one of the leading and the latest Premium Classified Ads WordPress theme. Adforest provides an outstanding front-end UI. You can get Directory & Listing classified wordpress theme with different color options and with awesome functionality. Google map is also integrated in WordPress ads theme. for more information about this WordPress theme please click On Demo link.

 Demo  |   Download

Benefits Of Using Responsive Related Posts Widgets On Your Blog

August 09, 2017
Having a mobile responsive related posts widget for a blogger blog is of great importance. Before now, every BlogSpot user would have to install LinkWithin related post widget but now we have a better alternative to LinkWithin which is a simple and stylish blogger related post widget with a thumbnail image.

A related posts widget has its own pros and cons and before sharing with you this simple LinkWithin alternative, I would first explain a bit about why you need a related post widget and also the side effect it pulls to your blog.

how does a  related posts widget work?

A related post widget as the name implies is a customizable posts widget just like the recent post, random post and popular posts. It organises a set of posts which are similar to the post in question. How does it define related posts? Through blog labels.

When you post an article you are most certain to add a blog label (category) to it, this tells the related post widget that these posts with the same blog label are alike and should be sorted together. That is the simple system operated by the related posts widgets.

How about when I don't use labels? when you don't use blog labels, the related post widget randomly selects blog post as related posts by doing this, it assumes that all posts on your blog are related since they all don't have labels.

why do I need related posts widget? - Pros

Often times, bloggers demand certain widgets just because they have seen it somewhere else on the web without even knowing the exact use of the widget. You might also like blogger widget (related posts) is important for every blog for a few reasons which you might want to consider.
  1. Increase traffic
  2. Suggests new contents for readers
  3. Decreases your bounce rates
  4. More earnings for you
  5. Most certain improves your blog SEO
  6. better navigation for your site
Better navigation for your site: Whenever you apply for Google AdSense, it keeps rejecting your application for a few reasons which includes "clear navigation" - a visitor should be able to move around your blog easily and find what she/he needs without having problems.
thus, this brings in the function of a similar post widget which simply navigate blog visitors to pages similar to the one they are reading. By doing this, your visitors can easily move around contents they like without having problems.
Increase traffic: without a you might also like widget, a visitor would probably leave your website after reading the first post but with a related post widget, a visitor is most likely to read a post similar to the one he just read.
Many blog owners have used this system of what is related to increase their pageviews or traffic. Not forgetting; increase blog traffic is most certainly to bring increase earnings especially when you use services that pay per impression.

Decreased bounce rate: Bing and other search engines have always mentioned bounce rate as a ranking criterion for every blog, now you might be thinking I have SEO properly optimise my blogger blog and still bounce rate will be killing your site. Indeed to decrease your bounce rate, you need to speed up your blogger blog
but still, you need a related post widget especially when you publish short posts such as music and gossip bloggers. Including a you might also like blogger widget will help you your blog visitors stay longer on your blog,
which will definitely improve the SEO ranking of your blog, and next thing search engines will start showing your posts on the first page.

Cons of a related post widget

Something that saves you can also kill you. All related posts widgets often have similar problems and these problems always affect the loading of your blog.
Related posts just like every other post widgets, uses callback which decreases the loading speed of a blog. A smart way to reduce this effect is to limit the number of related posts shown per page. Because of the higher the number, the higher the callbacks to be made.
Other problems may be peculiar with different types of widgets. Related posts with thumbnail image often have the issue of non-optimized images while externally loaded related post widget such as LinkWithin, AddThis often act as rendering blocking JavaScript which again can kill your blog loading speed.

How To Add AdSense In-Feed Ad Unit To Blogger - Blogspot

Learn in Simple Steps, How To Easily Add The New Google AdSense In-Feed Ad Unit On Your Blogger BlogSpot Blog & Increase Your Earnings. Both beginners and advanced bloggers can get this setup done in few minutes.

adsense in feed ad unit for blogger

Google has announced a new ad unit style which is the In-Feed ads unit. The new Ad unit is expected to bring Increase in publishers' earnings due to improved Ads functionality for the AdSense users.

The new ad unit should give you better clicks and improved revenue because it is optimized to show just like posts article with snippet and Call to Action word on your homepage and archive pages.

Above is an example of the AdSense In-Feed ad unit. As an update to Blogspot bloggers, I will be showing you how to enable the in-feed Google AdSense ad unit in blogger.

You are using the same code, which I used in "Add Adsense Ads Before, Between And After Posts In Blogger Blog," this gives you room to decide where you want the in-feed ad code to show.

Types of In-Feed Ads

Google AdSense also added type/structure of In-Feed ad units. This will bring in more similarity between your blog post layout & the ad code shown.

Image Above

This ad unit is specifically for those bloggers, whose post layout is of the grid style.

Image on the side

This is the post layout most blogs use. Free Naijaloaded blogger template is a good example.

Title Above

This is quite similar to Image on the side but this introduces a title at the top. A good example is Free OgbongeBlog blogger template

Test Only

Displays only test and no image. Use this if your post structure is of the list format.

In-Feed Ads Theme Selection.

Google also added this feature to increase the functionality of the new ads unit. Many bloggers today prefer to use the white background, while others prefer dark.

Light Background

If your blog has white or any other colour similar to white as the background colour, then you should select this option.

Dark background

If you use black or any other dark colour as the background colour of your blog, you should choose this ad.
P.S it all depends on you, you could have a dark background and decide to use a light background ads.

Advantages of In-Feed Ad Unit

The new Google Ad unit comes with advantages for its publishers. This unit might just be one of the best thus far with its ability to blend to the layout of your existing template.

Many bloggers have enabled it and I guess this is because of the advantages listed below.
  1. Increased ad unit click
  2. Better AdSense earnings
  3. Ad units are properly optimized
  4. Provides an alternative to banner ads
There are other advantages of this new ad unit. Hopefully, bloggers should be getting a decent amount of money monthly.

How to create In-feed ad unit in Adsense dashboard

  1. Go to Ad Units >> New Ad Unit.
  2. Under the "What type of would you like to create", select "In-Feed ads".
  3. Next is to choose the style at which your posts are being displayed on your homepage - Image above, Image on the side, Title above, Test only. This is to make sure the ad unit looks similar to your post layout. So choose the one similar to your post style.
  4. Select the colour form of the Ad unit. If your site uses a dark colour as background choose the dark background and if you use white or anything similar, choose LightBackground.
  5. Save (I'm done) your In-Feed Ad Code and Copy Code snippet.

How to add In-feed ad unit to Blogger Blogspot

  1. Go to blogger.com >> Theme >> Backup your theme >> Edit HTML.
  2. Search for <b:loop values='data:posts' var='post'> (you will see this code more than once, you are to replace only the one under <b:includable id='main' var='top'>) replace this code with <b:loop values='data:posts' var='post' index='x'>.
  3. Search for <div class='post-outer'> (still under <b:includable id='main' var='top'>) and replace with the long code below.
adsense in-feed ad code in blogger

<div class='post-outer'>
<b:if cond='data:blog.pageType == &quot;index&quot;'>
<b:if cond='data:x==1'>
<div class='post'>
<b:if cond='data:x==3'>
<div class='post'>

In-Feed Code Customizations.

Replace YOUR IN-FEED ADSENSE CODE with the In-Feed AdSense code you copied earlier. If it gives you an error, parse your code here.

Rounding Up

Making money using Google AdSense is getting easier day by day. Though they implement harsh policies on their publishers, they still stand out to be the best Affiliate program for bloggers.

If you have not been approved by Google AdSense you could give it's top alternative media.net a try. A little advice for publishers is not to use too many of this ad unit.

Having at most 2 In-Feed ad units should boost up your revenue without you unnecessarily spamming your audience with too many ads.

Thursday, August 3, 2017

How To Stop People From Copying Your Blog Post On Bloggers Blog - Disable Right Click

August 03, 2017
This is a new trick for all bloggers on Google Bloggers Platform or blogspot that don't want anyone to copy their articles, so many people are now copying peoples blog posts nowadays and i think if i share this with you you will love it; lets go.

Follow below steps to disable right click on your bloggers blog.
  1. Log in to your blogger dashboard
  2. Click on layout
  3. Add Gadget
Copy Below Codes In The Text Area That Will Show Up.

<script language='JavaScript'>

var message="No Right-Click!";

function clickIE4(){
if (event.button==2){
return false;

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
return false;

if (document.layers){
else if (document.all&&!document.getElementById){

document.oncontextmenu=new Function("alert(message);return false")

// --> 
I hope it works for you please let me know if you are having any issue through the comment box and share with friends.

Introduction To Erlang Programming Language - Part 1 - All You Need To Know.

August 03, 2017
Introduction To Erlang Programming Language
Erlang Logo

What is Erlang?

Erlang was developed by Ericsson to aid in the development of software for managing a number of different telecom projects, with the first version being released in 1986, and the first open source release of the language in 1998. You can see this in the extended Erlang release information where the Open Telecom Platform (OTP), the application development platform for Erlang, exists as the primary method of delivering the Erlang development environment.
Erlang provides a number of standard features not found in or difficult to manage in other languages. Much of this functionality exists in Erlang because of it's telecom roots.
For example, Erlang includes a very simple concurrency model, allowing individual blocks of code to be executed multiple times on the same host with relative ease. In addition to this concurrency Erlang uses an error model that allows failures within these processes to be identified and handled, even by a new process, which makes building highly fault tolerant applications very easy. Finally, Erlang includes built-in distributed processing, allowing components to be run on one machine while being requested from another.
Put together, Erlang provides a great environment to build the type of distributed, scalable, and high-performance discrete applications that we often use to support modern network and web-based applications.

Functional programming versus other paradigms

A main difference between Erlang and more popular languages is that Erlang is primarily a functional programming language. This has nothing to do with whether it supports functions, but is related to how the operation of programs and components works.
With functional programming, the functions and operations of the language are designed in a similar way to mathematical calculations, in that the language operates on functions taking input and generating a result. The functional programming paradigm means that the individual blocks of code can produce consistent output values for the same input values. This makes predicting the output of the function or program much easier and, therefore easier to debug and analyze.
The contrasting programming paradigm is the imperative programming language, such as Perl, or Java, which rely on changing the state of the application during execution. The change of state in imperative programming languages means that the individual components of a program can produce different results with the same input values, based on the state of the program at the time.
The functional programming approach is easy to understand, but can be difficult to apply if you are used to the more procedural and state-focused imperative languages.

Get Erlang

You can get Erlang directly from the Erlang website (see Related topics). Many Linux distributions also include it within their repositories. For example, to install on Gentoo, you can use: $ emerge dev-lang/erlang. Or you can install Erlang on Ubuntu or Debian distributions using: $ apt-get install erlang.
For other UNIX® and Linux platforms you can download the source code and build it by hand. You will need a C compiler and the make tool to build from source (see Related topics). The basic steps follow:
  1. Unpack the source: $ tar zxf otp_src_R14B01.tar.gz
  2. Change into the directory: $ cd otp_src_R14B
  3. Run the configure script: $ ./configure
  4. Finally run make to build: $ make
A Windows® installer is available from the Erlang website too (see Related topics).

Your first Erlang program, a recursive Fibonacci function

A perfect way to see the benefits of the functional programming style, and how this works within Erlang, is to look at the Fibonacci function. The Fibonacci numbers are an integer sequence where for a given number, the Fibonacci value can be calculated using: F(n) = F(n-1) + F(n-2).
The result of the first value, F(0), is 0, and the result of F(1) is 1. After this, you can determine F(n) by calculating the previous two values and adding them together. For example, the calculation for F(2) is shown in Listing 1.
Listing 1. Calculation for F(2)

F(2) = F(2-1) + F(2-2)
F(2) = F(1) + F(0)
F(2) = 1 + 0
F(2) = 1
The Fibonacci series is an important calculation and shortcut for a number of systems, including the analysis of financial data, and as a basic for the arrangement of leaves on a stem or branch of a tree. If you play video games with 3D trees, the arrangement of the branches and leaves were probably calculated using the Fibonacci series to determine the location of the branches and leaves.
When programming the calculation in a programming language, the calculation can be achieved by using recursion, where the function calls itself in order to calculate the numbers from the roots, F(0) and F(1).
In Erlang you can create a function with variables and with fixed values. This simplifies the situation in the Fibonacci series where F(0) and F(1) return explicit values, rather than a calculated one.
Thus, the basic function has three situations, the one when supplied 0, another when 1, and another when any higher value. In Erlang, you separate these statements using a semicolon, so the basic Fibonacci function can be defined as shown in Listing 2.
Listing 2. The basic Fibonacci function

fibo(0) -> 0 ;
fibo(1) -> 1 ;
fibo(N) when N > 0 -> fibo(N-1) + fibo(N-2) .
The first line defines the result of calling fibo(0) (the -> separates the definition and the body of the function), the second line defines the result when calling fibo(1), and the third line defines the calculation to execute when we have been supplied a positive value of N. This works because of a system in Erlang called pattern matching, which we will look at in more detail later. Note how the final statement (and all statements in Erlang) is terminated by a period. The actual calculation is straightforward.
Now, let's take a closer look at the structure of the Erlang language.

The basics

If you are used to languages like Perl, Python, or PHP then the structure and layout of Erlang will seem slightly odd, but there are some aspects that make the entire process of writing any application a lot simpler, with you having to worry less about many aspects of the code. In particular, Erlang can look very sparse compared to other languages, and certain operations, expressions, and constructs are frequently shown on only one line.
The easiest way to get to know Erlang is by using the Erlang shell, which you can execute by running erl at the command line after Erland has been installed. You can see this in Listing 3.
Listing 3. Using the Erlang shell

$ erl
Erlang R13B04 (erts-5.7.5) [source] [rq:1] [async-threads:0]
Eshell V5.7.5  (abort with ^G)
You can use the prompt to enter statements, which you should terminate with a period. The shell evaluates the statement when completed. Thus, entering a simple sum returns the result as shown in Listing 4.
Listing 4. Entering a simple sum

1> 3+4.
We'll use the shell to look at some of the different types and constructs.

Number types

Erlang supports basic data types such as integers, floats and more complex structures, like tuples and lists.
Integers, and most integer operations, are the same as in other languages. You can add two numbers together, as shown in Listing 5.
Listing 5. Adding two numbers together

1> 3+4.
And you can use parentheses to group calculations together, as shown in Listing 6.
Listing 6. Using parentheses to group calculations

2> (4+5)*9
2> .
Note that in Listing 6, the terminating statement period is on a separate line and evaluates the preceding calculation.
Floats in Erlang are used to represent real numbers, and can be expressed naturally, as shown in Listing 7.
Listing 7. Floats expressed naturally

3> 4.5 + 6.2 .
Floats can also be expressed using exponents, as shown Listing 8.
Listing 8. Floats expressed using exponents

4> 10.9E-2 +4.5
4> .
The standard mathematical operators, +, -, /, * are supported on both integer and floating point values, and you can mix and match floating-point and integers in calculations. However, an error will be raised when using an equivalent of the modulus and remainder operators on floating values, as these support only integer values.


Atoms are static (or constant) literals. Listing 9 shows an example.
Listing 9. Atoms

8> abc.
9> 'Quoted literal'.
'Quoted literal'
Atoms should be used in the same way as you would use a #define value in C, that is, as a clearer method of specifying or identifying a value. As such, the only valid operation on an atom is a comparison. Using atoms in this way also extends to boolean logic, with the availability of true and false atoms to identify the boolean result of a statement. Atoms must start with a lower case character, or you can delimit with single quotes.
For example, you can compare integers and get a boolean atom as the result, as shown in Listing 10.
Listing 10. Comparing integers to get a boolean atom

10> 1 == 1.
Or you can compare atoms, as shown in Listing 11.
Listing 11. Comparing atoms

11> abc == def.
Atoms are themselves ordered lexically (that is, z has a greater value than a), for example (see Listing 12).
Listing 12. Atoms ordered lexically

13> a < z.
Standard boolean operators are available, such as and, or, xor and not. You can also use the is_boolean() function to check whether the supplied value is true or false.


Tuples are a composite data type and are used to store collections of items. Tuples are delimited by curly brackets (see Listing 13).
Listing 13. Tuples

14> {abc, def, {0, 1}, ghi}.
The contents of a tuple do not all have to be the same type, but one special construct is of a tuple where the first value is an atom. In this case the first atom is called a tag and this can be used to identify or classify the contents (see Listing 14).
Listing 14. Tuple where the first value is an atom

16> { email, 'example@example.org'}.
Here the tag is email, and the tag can be used to help identify the remainder of the content in the tuple.
Tuples are very useful for containing defined elements and describing different complex data structures, and Erlang allows you to set and get values in a tuple explicitly (see Listing 15).
Listing 15. Setting and getting values in a tuple explicitly

17> element(3,{abc,def,ghi,jkl}).
18> setelement(3,{abc,def,ghi,jkl},mno).
Note that the elements of the tuple are indexed with 1 as the first value, instead of 0, which is common in most other languages. You can also compare tuples in their entirety (see Listing 16).
Listing 16. Comparing tuples in their entirety

19> {abc,def} == {abc,def}.
20> {abc,def} == {abc,mno}.


The last data type is the list, which is denoted by square brackets. Lists and tuples are similar, but whereas a tuple can only be used in a comparison, lists allow a wider variety of manipulation operations to be performed.
Basic lists look like Listing 17.
Listing 17. Basic list

22> [1,2,3,abc,def,ghi,[4,56,789]].
Strings are actually a special type of list. Erlang does not support the idea of a string directly, although you can use a double quoted value to create a string value (see Listing 18).
Listing 18. Using a double quoted value to create a string value

23> "Hello".
However, a string is actually just a list of ASCII integer values. Thus the above string is stored as a list of the ASCII character values (see Listing 19).
Listing 19. String stored as a list of the ASCII character values

24> [72,101,108,108,111].
As a shortcut, you can also specify characters using the $Character notation (see Listing 20).
Listing 20. Specifying characters using the $Character notation

25> [$H,$e,$l,$l,$o].
Lists, including strings (lists of characters), support a number of different methods for manipulation. This highlights the main difference between a string and an atom. Atoms are static identifiers, but you can manipulate a string by examining the component parts (each character). You cannot, for example, identify the individual words in the atom (for example, 'Quick brown fox') because the atom is a single entity. But a string could be split into different words: ["Quick","brown","fox"].
A number of functions for manipulating lists are provided in the lists module For example, you can sort the items in a list using the sort function. As these are note built-in functions, you have to specify the module and function name (see Listing 21).
Listing 21. Specifying the module and function name

34> lists:sort([4,5,3,2,6,1]).

List manipulation

You can construct lists with multiple elements using the constructor, which builds a list from an element and another list. In other languages, this kind of construction is handled by functions or operators for push(). In Erlang, the | (pipe) operator is used to differentiate between the head (start of the list) and the tail, in the notation [Head|Tail]. Here the head is a single element, and the tail is the rest of the list.
Listing 22 shows how to add a new value to the beginning of the list.
Listing 22. Adding a new value to beginning of the list

29> [1|[2,3]].
You can repeat this for the entire list as shown in Listing 23.
Listing 23. Repeating this for the entire list

31> [1|[2|[3|[]]]].
In this example, the empty list at the end means that you have constructed a well-formed (proper) list. Note that the first item must an element, not a list fragment. If you merge the other way, you construct a nested list (see Listing 24).
Listing 24. Constructing a nested list

30> [[1,2]|[2,3]].
Finally, you can merge lists using the ++ operator, as shown in Listing 25.
Listing 25. Using the ++ operator to merge lists

35> [1,2] ++ [3,4].
And, you can subtract each element from the list on the right of the operator from the list on the left (see Listing 26).
Listing 26. Subtracting each element from the list

36> [1,2,3,4] -- [2,4].
Because strings are lists, the same is true for them too (see Listing 27).
Listing 27. The same is true for strings

37> "hello" ++ "world".
40> ("hello" -- "ello") ++ "i".
Although this has been a top level flight over the data types, hopefully it will give you enough to understand the basic types and operations.

Expressions and pattern matching

We've already seen a number of different expressions and constructs while looking at the different data types. One important element of expressions is the variable. Variables in Erlang must start with a capital letter and be followed by any combination of upper and lowercase letters and underscores (see Listing 28).
Listing 28. Variables in Erlang

41> Value = 99.
Assignment of a variable within Erlang is a one-time binding of the value to the variable. Once you have bound the variable once, you cannot change it's value (see Listing 29).
Listing 29. Binding a value to a variable

42> Value = 100.
** exception error: no match of right hand side value 100
This is unlike most languages — the very definition of variable tends to imply that the value is variable. Single assignment in this means that if you want to calculate the result of a value you must assign it to a new variable (see Listing 30).
Listing 30. Limitations of variables in Erlang

43> Sum = Value + 100
The benefit of this single assignment is that it makes it more difficult to introduce or accidentally change the value of a variable during a calculation, which makes identifying a value and debugging during programming much easier. It also makes the code clearer, and sometimes much shorter, as you can simplify the structure.
Note that this operation means that the value is calculated before being bound to the variable. In other languages it's possible to set the value based on a reference to a function or operation, which means the value can be different depending on the value of the reference at the time it is accessed. In Erlang, the value of the variable is always known at the time it is created.
You can explicitly forget the bounding of a variable using f(Varname), or all variables using f().
Assigning values to variables is actually a special type of pattern matching. Pattern matching in Erlang also handles the execution flow of individual statements, and extracts the individual vales from compound data types (tuples, arrays). The basics of pattern matching is therefore: Pattern = Expression.
The expression is composed of data structures, bound variables (that is, those with a value), mathematical operations and function calls. The two sides of the operation must match (that is, if you have 2 element tuple as the pattern, the expression must resolve to a 2 element tuple). When the expression is executed, the expression is evaluated, and the results assigned to the pattern.
For example, we can assign values to two variables simultaneously with one pattern matching (see Listing 31).
Listing 31. Assigning values to two variables simultaneously

48> {A,B} = {(9+45),abc}.
Note in the evaluation, if the pattern is a bound variable, or the element of the pattern is a bound variable, then the result of the pattern match becomes a comparison. This allows for more powerful selective assignment. For example, to get the name and email from a tuple, we can use pattern matching: {contact, Name, Email} = {contact, "Me", "me@example.com"}.
Finally, we can use pattern matching to pull out the elements from a list or tuple using the construct notation mentioned earlier. For example, Listing 32 shows how to get the first two elements from a list while retaining the remainder.
Listing 32. Getting the first two elements from a list while retaining the remainder

53> [A,B|C] = [1,2,3,4,5,6].
A has been assigned the value 1, B the value 2, and C the remainder of the list.


Functions in Erlang are the basic building blocks of any program, just as with any other language. A function is composed of the function name (defined by an atom), and zero or more arguments to the function in parentheses: sum(N,M) -> N+M.
Functions must be defined in within modules in files (you cannot define them from within the shell). The arguments can contain more complex types. For example, tags in tuples can be used to select different operations (see Listing 33).
Listing 33. Tags in tuples can be used to select different operations

mathexp({sum, N,M}) -> N+M ;
mathexp({sub, N,M}) -> N-M ;
mathexp({square, N}) -> N*N.
The semicolon is an or operator between each function definition. Pattern matching is used to evaluate the arguments to the function, so if you supply a tuple with three elements to the mathexp() function, the pattern matching will fail.
Functions in Erlang can also accept a different number of arguments, with the right definition of the function being selected by evaluating the pattern match until a valid definition of the function has been located. The number of arguments to a function is called it's arity, and is used to help identify the functions.
Looking back at our Fibonacci example, you can now see that when fibo(0) was called, this patten matched the first definition of the function, returning the value, and fibo(1) matched the second definition, while any other value matched the last definition. It also demonstrates how the recursion of the function execution works. When calling fibo(9), for example, the fibo(N) function is called with the corresponding value until the fibo(0) and fibo(1) functions are reached, and when the fixed values are returned.
The return value of any function is the result of the last expression in that clause (in our examples there is only one line). Note that variables are assigned only when a match is found, and when the variables are local to the function.


Modules, just like modules in other languages, are used to collate similar functions together.
You specify the module name in the file (and the file name must match), and then specify the functions within the module that you want to export to other programs that load the module. For example, Listing 34 shows the file fib.erl, which contains the definition of our fib module.
Listing 34. the fib.erl file

-export([fibo/1, printfibo/1]).
%% print fibo arg. and result, with function as parameter
printfibo(N) ->
   Res = fib:fibo(N),
   io:fwrite("~w ~w~n", [N, Res]).
fibo(0) -> 0 ;
fibo(1) -> 1 ;
fibo(N) when N > 0 -> fibo(N-1) + fibo(N-2) .
The module specification is in the -module() line. The -export() contains the list of functions to be exported. The definition for each function shows the function name with the arity of the function. This enables you to export very specific definitions of the function.
To use the module it needs to be compiled and loaded. You can do this within the shell using the c() statement, as shown in Listing 35.
Listing 35. Using the c() statement to compile and load a module

1> c(fib).
2> fib:printfibo(9).
9 34
Note that the function call includes the module name to ensure that we are calling the printfibo() function within the fib module.


The structure and format of Erlang programs is very different to most other languages. Although many of the data types and fundamental expressions are the same, their use and application is slightly different. Single use variables, and the significance of the evaluation of different expressions as demonstrated through the pattern matching system provide some powerful extensions to the typical language environment. For example, the ability to define multiple approaches to the same functions and employ pattern matching for recursive calls simplifies some functions.
Next time we will look at the processes, message parsing, and network facilities of Erlang, and take a look at the MochiWeb HTTP server as a way of understanding the power and flexibility of the language.

You can download this as a PDF
click here to download. Please share with your friends.