Category: Web development

Slack as a teamwork tool

Hello People. This article is about how to use Slack as a teamwork tool. As you know, Slack contains channels. You can create a different channel for each of your purpose. Channel contains all the people, messages and files related to a topic in one place.

In short, Slack is basically a messaging app. Teams and workplaces can be use Slack across multiple devices and platforms. You’re able to upload and share files with your groups too. You can also integrate with other apps and services and you can control almost every setting.

Slack Pricing

Slack is mostly free of cost to use. However you’ll only be able to browse and search your team’s 10,000 most recent messages, and you’ll be limited to 5GB of file storage and 10 apps or custom integrations. As of now, there are three pricing tiers available: Free, Standard ($8 or £5.25 a month billed monthly), and Plus ($15 or £9.75 a month billed monthly). A fourth tier, called Enterprise Grid, has special pricing for corporates.

Slack as a teamwork tool

How to start using Slack?

If you are an administrator of a team, please follow these steps:

  1. Go to Slack’s website and enter your email address to sign up 
  2. Choose a name for your Slack team
  3. Edit the URL to your Slack team
  4. Choose a username for yourself
  5. Enter emails of associates you’d like to invite to join your Slack team
  6. Your Slack team chat will then load in a browser window

Slack Settings

Click on your username or the drop-down arrow next to the Slack team name to access a settings menu. From here you can adjust your preferences (themes for the sidebar, messages, emoji style, and more), view your profile and account, access a Help/Feedback page, get Slack apps (more on that later), and set yourself to away.

If you’re an administrator, you can also access team settings, billing, etc. Team members will only see options to access app integrations, customise slack, and jump to team directory.

Hope this article on Slack as a teamwork tool is useful to you. Please read about Blockchain technology using Javascript

Blockchain technology using Javascript

Hello People. This article is about Blockchain technology using Javascript. As you already know, a blockchain is an open, digital, and duplicated ledger of transactions. Every new transaction history is recorded and stored in an encrypted way that is very difficult to modify. A copy of this recorded information is sent a cross the blockchain network. This makes it highly secure.

Blockchains are blocks of transaction data growing increasingly to create a chain of transaction occurrences. Valid transaction data is logged into the blockchain network following the peer-to-peer rule laid down by participants. Normally, the data in the databases are centralized. This means we operate based on only one server. Chances of risk are high due to failures of the system. Alternatively, decentralization allows data to be stored everywhere, thus making it faster, more secure and a better way of storing data.

We need to first install the crypto library using the command:

npm install --save crypto-js

We’ll use this library to import modules in our project.

We can start by creating a class BlockCypto as shown below:

const SHA256 = require('crypto-js/sha256');
class BlockCypto{
    constructor(index, current_time, info, nextHash=" "){
    this.index = index;
    this.current_time = current_time;
    this.info = info;
    this.nextHash = nextHash;
    this.hash = this.computeHash();     
    }
    computeHash(){
        return SHA256(this.info + this.nextHash + this.current_time + JSON.stringify(this.info)).toString();
    }   
}

Let us see each part of the code here:

We have created the class BlockCrytpo for our block and added a constructor just like any other JavaScript class.

In the constructor, we initialize its properties and assign parameters to it, as follows:

  • crypto-js/sha256: This is the module we’ve imported to calculate the hash of each block. We converted it to string using toString() method as the module will return the object.
  • index: This is a distinctive number tracking the index of every block in the blockchain.
  • current_time: As the name states, it keeps a record of the time when each transaction is completed.
  • info: All completed transactions data are recorded and stored by this method.
  • nexthash: It is pointing to the hash_key of the next block in the network chain. It’s mainly used to keep and maintain the integrity of the blockchain.
  • computeHash: Based on properties passed to this method, it is used to calculate the hashkey of the next block in the chain.
Blockchain technology using Javascript

What is blockchain theorem?

It is a type of database that stores a collection of data together in groups, with certain capacity of storage. The blocks are connected to the already created blocks, this forms a chain of a data tree.

The chain is irreversible as the system is decentralized. Here, each block is assigned a timestamp when added to the chain.

Now, let’s create a class Blockchain that will maintain this operation:

class Blockchain{
    constructor(){
        this.block1chain = [this.startGenesisBlock()];     
    }
    initGenesisBlock(){
        return new BlockCrypto(0, "06/04/2021", "Initial Block in the Chain", "0");
    }
    latestBlock(){
        return this.block1chain[this.block1chain.length - 1];
    }
    addNewBlock(newBlock){
        newBlock.nextHash = this.latestBlock().hash;
        newBlock.hash = newBlock.computeHash();        
        this.block1chain.push(newBlock);
    }
}

Let’s understand the code snippet above.

As usual, we have our constructor which instantiates the blockchain.

But this time, we passed it to the initGenesisBlock() method, which initializes the block in the chain. This property refers to an array of blocks in our case.

  • initGenesisBlock(): This is the first block created in the peer-to-peer network and has not been linked to any other. To our knowledge of indexing it’s at index 0.
  • latestBlock: As named, we use it for finding the last block added in the chain. As explained earlier, it helps to ensure the hash of the current block and map it to the hash of the previous block to ensure the chain integrity.
  • addNewBlock: A new block is added to the chain using this method. The previous hash block is matched to the current hash block to ensure minimal or no tampering with the chain.

Now that our blockchain is ready to work. We are missing something that is a core blockchain principle, the blockchain integrity.

Let’s see how to verify it and test our app.

Verifying blockchain integrity

The main characteristic of a blockchain is that once a block has been added to the network, it can’t be changed without invalidating the entire blockchain integrity.

To perform this, we use digital security or cryptographic hash, which ensures the securing and validation of the blockchain by producing a new hash every time a change is made in the block.

We’ll loop over the entire blockchain to check whether any hash has been tampered with, taking into account the exception of the first block, which is hardcoded.

Besides, this method verifies if the cryptographic-key of each two blocks in series are pointing to one another. If the integrity of the blockchain has been compromised, it returns false; otherwise, in case no anomalies are encountered, it returns true.

We’ll create this method inside the Blockchain class:

checkValidity(){
    // Checking validity
    for(let i = 1; i < this.block1chain.length; i++) {
        const currentBlock = this.block1chain[i];
        const nextBlock= this.blockchain[i-1];
    // Checking current blcok hash
    
    if(currentBlock.hash !== currentBlock.computeHash()) {
        return false;
    }
    // Comparing current block hash with the next block

    if(currentBlock.nextHash !== nextBlock.hash) {
        return false;
    }
    return true;
}

Now, we can test our app and see the results:

But, before we dive into running the code, let’s create a new instance of the Blockchain class and name it thecoin, and add some blocks in the blockchain using random values.

let thecoin = new Blockchain();

thecoin.addNewBlock(new BlockCrypto(1, "06/04/2021", {sender: "Rabin Yitzack", recipient: "Loyd Eve", quantity: 20}));

thecoin.addNewBlock(new BlockCrypto(2, "07/04/2021", {sender: "Anita Vyona", recipient: "Felix Mush", quantity: 349}));

console.log(JSON.stringify(thecoin, null, 4));

Hope this article on Blockchain technology using Javascript is useful to you. Please read Child Tracker IOT project architecture

WordPress Site Health 

Hello People. This article discusses how to achieve 100% in wordpress site health. WordPress site health feature helps website owners to monitor performance and security issues. This feature looks for common performance and security issues and gives a health check score to the website based on various tests. For example a test that checks if your website is running the latest PHP version. Using older PHP versions can make your website slow and may not be compatible with popular WordPress plugins. To achieve 100% wordpress site health, focus on the following things.

WordPress Hosting

Chosing the right web hosting service is the most important decision you make for a website. Using an unreliable hosting provider can affect your WordPress site. They use older software and do not have all the PHP modules installed. It is recommended to use Bluehost, SiteGround, Dreamhost. These are officially recommended WordPress hosting providers.

Install SSL / HTTPS

SSL protects the website by encrypting data transfer from server to user’s browsers. SSL enabled websites use HTTPs in their URLs.

Update your wordpress

Always make sure that you are using the latest WordPress version.

Update WordPress Plugins and Theme

WordPress themes and plugins are regularly updated. So look for the available updates and install them to keep your site updated. Plugins and themes use updates to deliver new features, fix bugs, and close security issues. You need to install updates to make sure that your website is not vulnerable to any known security issue. Please go to Appearance » Themes page to install an update.

Use the Latest MySQL or MariaDB Version

Always make sure that your website is running the latest stable version of MySQL/Maria. You can check the information about your database software version by switching to the info tab in site health.

Use The Latest PHP Version

WordPress is written in the PHP programming language. It is a server-side language. It runs on your hosting server to dynamically generate WordPress pages. Using the latest PHP version gives your website a performance boost. It also ensures compatibility with new WordPress plugin features that may require the latest PHP version to work correctly.

WordPress Site Health 

Enable WordPress Automatic Updates

WordPress has built-in ability to update itself and install the latest security releases. These are minor releases. But they are crucial for the safety and security of your website. These security updates are automatically installed on websites. Always make sure that automatic updates are enabled on your WordPress site to keep your site secure.

Remove Unused WordPress Plugins & Themes

It is better that you delete any inactive plugins that are not required.

Enable Rest API

REST API in WordPress allows developers to securely use HTTP requests to perform actions on a WordPress site.

Make Sure Required PHP Modules are Installed

PHP Modules and extensions are additional libraries that extend the functionality of the PHP programming language. WordPress recommends several PHP modules to be installed for optimal performance.

Disable Debug Mode

WordPress comes with a built-in debug mode which allows you to see if a plugin, theme, or custom code is having some errors. This feature is intended to be used by developers or advanced users. It is not recommended to turn on the WordPress debug mode for a live website.

Hope this article on Achieve 100% in WordPress Site Health is useful to you. Please read What is WordPress Site Health

WordPress Site Health explained

Hello People. This article makes you WordPress Site Health explained. Site Health is one of the tools in WordPress. Site Health helps you monitor how your site is performing. It consists of two parts: a Status screen and an Info screen. You can find the Site Health tool via Tools > Site Health in your WordPress backend. In WordPress 5.4, the wordpress team added a Site Health Status widget to the dashboard.

Right on the Status screen, WordPress runs a performance and security analysis that checks your site and gives notifications. You will also notice a coloured circle. If it is red, then you have to pay attention and follow the recommendations.

If you go to the second page, you will see an Info screen with detailed information about the configuration of your site. You can use this information to get help from your web host or developer when you run into trouble.

Why is Site Health important?

It is very important to care about the health of your site. Site Health finds problems and proposes solutions. Proposed improvements range from upgrading your PHP version to deactivating unused plugins for security reasons and from implementing HTTPS to checking if the REST API is available. You can just click on a notification to see additional steps to take or more information about the check. You will also see which plugin notified you of the improvements. This makes it a critical part in building an awesome, secure and up-to-date site.

WordPress Site Health explained

The list below is the display of issues in their respective categories.

  1. WordPress: shows version, site & user language, home URL, site URL, permalink structure, multisite check, and more
  2. Directories and Sizes: shows directory location, size, upload location and size, theme location & size, plugin location & size, and more.
  3. Active Theme: shows theme name, version, author, author website, parent theme, theme features, theme directory location.
  4. Active Plugins: shows names of all active plugins, versions, and author names.
  5. Media Handling: shows name of active editor, ImageMagick version number, string, resource limits, GD version, Ghostscript version.
  6. Server: shows server architecture, web server , PHP version, time limit, memory limit, max input time, upload max filesize, post max size, Imagick library status, .htaccess rules, and more.
  7. Database: shows extension, server version, client version, database user, host, name, and prefix.
  8. WordPress Constants: ABSPATH, WP_HOME, WP_SITEURL, WP_CONTENT_DIR, WP_PLUGIN_DIR, WP_MAX_MEMORY_LIMIT, WP_DEBUG, WP_DEBUG_DISPLAY, WP_DEBUG_LOG, SCRIPT_DEBUG, WP_CACHE, and more
  9. Filesystem Permissions: it shows whether WordPress is able to write to the directories it needs access to. main WordPress directory, wp-content directory, uploads directory, plugins directory, and themes directory.

Hope this article on WordPress Site Health explained is useful to you. Please read Took Too Long to Respond error

Took Too Long to Respond error

Hello People. This article discusses about the “took too long to respond error”. Sometimes you might encounter the ‘website took too long to respond’ error when you try to access a particular website. This error indicates that there is a communication problem between the target server and the client. In this case your web browser. It must be understood that the targeted server is taking a long time to send a response to the client. The error appears if the client cannot get a response within 30 seconds. The connection attempt is then terminated.

Reasons for the ‘took too long to respond’ error?

Here are the reasons.

Internet connection problem

If you do not have an internet connection, this error occurs. Check that your device is connected to internet via a LAN or Wi-Fi. If you use a LAN, you need to check your LAN settings. You also need to make sure that your TCP/ipv4 protocols are correctly configured.

Much load on the server

If you are using shared hosting, there is a possibility that there is not enough memory to allow for a connection between your client and server. When using shared hosting, memory allocation is not equally distributed. There might be sites that use a lot of memory, leaving others with little memory available. Contact your service provider about your memory limit. If you are using WordPress, you can check your memory limit in the ‘Site Health Tool’ on your dashboard.

You may also want to change your hosting plan to a VPS (Virtual Private Server) package, where memory is shared equally among users.

There are also other reasons that may cause your site to be overwhelmed. Increase in site traffic, or code and scripts that have not been deferred to load only after your site fully loads.


Took Too Long to Respond error

Antivirus is blocking site access

Sometimes Your antivirus might block access to some sites or even all of them. You may need to temporarily disable it and see whether the ‘taking too long’ error is resolved.

DNS cache

The DNS (Domain Name System) is what converts domain names to IP addresses. DNS results are usually cached in order to make sure that subsequent requests are handled faster. If there was a communication problem between client and server, it may be cached, resulting in the ‘website took too long to respond’ error. Clearing the DNS cache should solve the error.

Outdated extensions

Extensions may not be as frequently updated for compatibility with web browsers. On Chrome, virus scanning extensions, for example, Symantec, outdated or not, tend to be ‘heavy’, which slows down your browser.

Browsing history

Stored data from browsing sessions such as saved passwords, cookies, site names, and URLs, as well as cache can contribute to client-server communication problems.

Chrome’s default profile folder issues

There is always a folder named ‘Default’ on your local machine which store’s your ‘Chrome Profile’ (your bookmarks, saved passwords, apps, browser settings, and extensions). If there is corrupted content in the folder, it may affect communication between client and server. You may need to edit or rename this file in order to fix ‘taking too long’ issues.

Windows hosts file

The hosts file is what maps domains to IP addresses. If you want to see for example how your site would look if you hosted on a different server, you would need to edit the hosts file.  If you have blocked website URLs or IP addresses in your hosts file, they might cause other sites to be blocked too, resulting in the page taking too long to load error.

The network adapter is not installed or is out of date

Drivers are very important for seamless communication between software and hardware. If your network driver is not up to date it may result in broken client-server communication.

Your browser contains corrupted files

Your browser may contain corrupted files. By reinstalling the web browser might solve this problem.

Theme incompatibility

If you are using WordPress, your theme incompatibility issues could be the reason for the ‘took too long to respond’ error. The only way to know whether it is your theme that is causing the issues is to change it to a default theme. If the error gets fixed, then you need to reinstall your theme.

Too much data in your database

If your database contains a lot of data, your site may take too long to retrieve all that data from your site.

Hope this article on Took Too Long to Respond error is useful to you. Please read about Power supply to Arduino boards


Blockchain Technology explained

Hello People. This article makes you Blockchain Technology explained. A blockchain is a distributed database that is shared among the nodes of a computer network. It stores information electronically in digital format.

Blockchains are used in cryptocurrency systems, such as Bitcoin, for maintaining a secure and decentralized record of transactions. It guarantees the fidelity and security of a record of data and generates trust without the need for a trusted third party.

Main Features

  • Blockchain is a shared database. It differs from a typical database in the way that it stores information.
  • Blockchains store data in blocks that are then linked together via cryptography.
  • When data comes in, it is entered into a fresh block. Once the block is filled with data, it is chained onto the previous block, which makes the data chained together in chronological order.
  • Most common use of blockchain so far has been as a ledger for transactions. 
  • In Bitcoin, blockchain is used in a decentralized way so that no single person or group has control. All users collectively retain control.
  • Data entered is irreversible. Transactions are permanently recorded and viewable to anyone.
Blockchain Technology explained

Blockchain working process

The purpose of blockchain is to allow digital information to be recorded and distributed, but not edited. In this way, a blockchain is the foundation for immutable ledgers, or records of transactions that cannot be altered, deleted, or destroyed. This is why blockchains are also known as a distributed ledger technology (DLT).

Blockchain’s first widespread application in use was Bitcoin in 2009. In the years since, the use of blockchains has exploded via the creation of various cryptocurrencies, decentralized finance (DeFi) applications, non-fungible tokens (NFTs), and smart contracts.

Blockchain has three important concepts: blocks, nodes and miners.

Blocks

Every chain consists of multiple blocks and each block has three basic elements:

  • The data in the block.
  • A 32-bit whole number called a nonce. The nonce is randomly generated when a block is created, which then generates a block header hash. 
  • The hash is a 256-bit number wedded to the nonce. It must start with a huge number of zeroes (i.e., be extremely small).

When the first block of a chain is created, a nonce generates the cryptographic hash. The data in the block is considered signed and forever tied to the nonce and hash unless it is mined.  

Miners

Miners create new blocks on the chain through a process called mining.

In a blockchain every block has its own unique nonce and hash, but also references the hash of the previous block in the chain, so mining a block isn’t easy, especially on large chains.

Miners use special software to solve the incredibly complex math problem of finding a nonce that generates an accepted hash. Because the nonce is only 32 bits and the hash is 256, there are roughly four billion possible nonce-hash combinations that must be mined before the right one is found. When that happens miners are said to have found the “golden nonce” and their block is added to the chain. 

Making a change to any block earlier in the chain requires re-mining not just the block with the change, but all of the blocks that come after. This is why it’s extremely difficult to manipulate blockchain technology. Think of it as “safety in math” since finding golden nonces requires an enormous amount of time and computing power.

When a block is successfully mined, the change is accepted by all of the nodes on the network and the miner is rewarded financially.

Nodes

One of the most important concepts in blockchain technology is decentralization. No one computer or organization can own the chain. Instead, it is a distributed ledger via the nodes connected to the chain. Nodes can be any kind of electronic device that maintains copies of the blockchain and keeps the network functioning. 

Every node has its own copy of the blockchain and the network must algorithmically approve any newly mined block for the chain to be updated, trusted and verified. Since blockchains are transparent, every action in the ledger can be easily checked and viewed. Each participant is given a unique alphanumeric identification number that shows their transactions.

Combining public information with a system of checks-and-balances helps the blockchain maintain integrity and creates trust among users. Essentially, blockchains can be thought of as the scalability of trust via technology. 

Hope this article on Blockchain Technology explained is useful to you. Please read about Printed Circuit Board designing business

Optical Character Recognition in React

Hello People. This article discusses about Optical Character Recognition in React. OCR is very useful when you want to extract text from a scanned document on a browser. Applying OCR technology through a React application, you can upload your images in various formats and can apply OCR to extract text content so easily. 

How to achieve Optical Character Recognition in React?

We’ll use two third party libraries for different purposes. The first one is “tesseract.js”. It’ll allow us to run OCR easily with just a couple of lines of code. The second one is “react-images-upload”, it’ll allow us to upload images to the browser and access their locations easily.

Here we do a couple of new things and you may want to follow them carefully. We should put the code snippet above the return we need to create 3 states here to achieve different goals. The first state we have here is to take the image URLs from our ImageUploader component and save it for further processing, the second state is the one that we keep our OCR applied texts, and the third one is the one for loading logic.

Optical Character Recognition in React

onDrop function is called whenever a change happened in our ImageUploader component . So whenever a change happens like adding or removing the photos in our component this function will be fired up. It’ll take the argument we need in the second position after the onChange event is fired so we can simply bypass the first argument by putting “_” and take the second one. It has link/links for our images in it and it’ll bring the full latest list of links so whenever we get a list from our function we can safely put that in our array.

runOcr function seems tricky but in fact, it’s quite simple, we take our URLs state and run the following recognition script for each element. Tesseract recognize function takes at least 2 arguments, first is the URL and the second one is the target language, tesseract.js supports over 100 languages. After the requests resolve we take output text and add it to our current array. After we fire runOcr command we can setIsLoading to true so we can display our spinner.

Hope this article on Optical Character Recognition in React is useful to you. Please read What is Node Red and its application

IOT institutes in Hyderabad

Hello People. This article shows the list of IOT institutes in Hyderabad. IOT is a rapidly growing market in India. Here is the locations list.

IOT GYAN

This training institute is located at 4TH Floor, Narmada Arcade, Above HDFC Bank Nacharam, Main Road, Hyderabad, Telangana 500076. Their contact number is +919000195116 and their website is http://iotgyan.com/

ISM UNIV

It is located at 6-3-347/22/2 , Aishwarya Nilayam , Dwarakapuri Colony Diagnally, Saibaba Temple Rd, opp. to Punjagutta, Hyderabad, Telangana 500084. They can be reached at +919448474282. Their website is http://www.ismuniv.com/

Great Learning Hyderabad

This training institute is located at B-Block, 1st Floor, Kavuri Incor9, Kavuri Hills Rd, above D-MART, Madhapur, Telangana 500081. Their contact number is +914048522700. Their website is https://www.mygreatlearning.com/

IOT institutes in Hyderabad

TBIPI

It is located at 25-35/3/B,1st floor, Above ICICI Bank, Sekhar’s Arcade, Ramachandrapuram, Telangana 502032. They can be reached at +919618581799.

360DigiTMG

This IOT institute is located at 2-56/2/19, 3rd floor,, Vijaya towers, near Meridian school,, Ayyappa Society Rd, Madhapur,, Hyderabad, Telangana 500081. You can contact them at +919989994319. Their website link is here https://360digitmg.com/

Techienest

The address of this institute is Srigiri Complex, Cyberaegis, 7-4 & 7-5, Dilsukh Nagar Main Rd, Hyderabad, Telangana 500060. You can call them on +917340033091. Their website is https://techienest.in/

Technocourses

This IOT institute is located at 8-3-903, B 12 – 3rd floor, Eureka Court complex Opp RS Brothers, above KS Bakers, Ameerpet, Hyderabad, Telangana 500073. You can contact them on the number +919121458441. Their website link is here http://www.technocourses.com/

Primebit Solutions

The address of this IOT institute is 404/2A,Surekha Chambers, Opp Vijay Textile , Lal Bungalow, Ameerpet Rd, Hyderabad, Telangana 500016. One can contact them at +918790059362. Their website is https://www.primebitsolution.com/

Open Source Technologies

This IOT institute is present at Plot No. 28, 3rd Floor,Suraj Trade Center Opp. Cyber Towers, Hi-Tech City, Hyderabad, Telangana 500081. You can contact them at +919030464455. Their website link is http://opensourcetechnologies.in/

Niltech Edu

The address of this IOT institute is Metro Station, 13-5-23, 2nd Floor, Model Bank Building Model Bank Road beside Khadims Showroom opposite UCO Bank, near Dilsukhnagar, Dilsukhnagar, Hyderabad, Telangana 500060. Their contact number is +917286981144. Their website link is https://niltechedu.com/

Hope this article on IOT institutes in Hyderabad is useful to you. Please read about IoT application in the Environmental Sector

SMTP server application explained

Hello People. This article makes you SMTP server application explained. SMTP stands for Simple Mail Transfer Protocol. It is the procedure behind the email flow on the internet. The process of email delivery is similar to classical mail. Basically an organized system takes care of your envelope and through a series of steps it drops it off to your recipient.

In the SMTP process, the SMTP server is simply a computer running SMTP, and which acts more or less like the postman. After the messages have been picked up they are sent to this server, which takes care of concretely delivering emails to their recipients.

SMTP server application explained

The transfer of a message from your computer to the recipient’s computer is as follows:

  • To begin with, you send an email with your webmail or mail client from your address to a recipient. The webmail or client is called Message User Agent, or MUA.
  • The message is sent normally via port 25 to an SMTP server (named for instance mail.website.com) which is given to your client when you set it up and acts as a Message Transfer Agent or MTA. Client and server start a brief “conversation” where the latter checks all the data concerning the message’s transmission (sender, recipient, domains, etc.). Note that SMTP language defines only the message’s transmission, and doesn’t deal with its body content.
  • Then, if the domain where your recipient has his account is directly connected to the server, the email is immediately delivered. If it’s not the case, the SMTP hands it to another incoming server closer to the recipient (in jargon these passages are called relays). In our example, the Website server connects with the Domain server, which (if everything has gone right) receives the email and stores it.
  • If the recipient’s server is down or busy, The SMTP host simply drops the message to a backup server. If none of them is available, the email is queued and the delivery is retried periodically. After a determined period, however, the message is returned as undelivered.
  • If there are no issues, however, the final segment is controlled by POP, another protocol that picks up the email from the receiving server and puts it into the recipient’s inbox.

It must be underlined, though, that the SMTP servers used when you send your “normal emails” – e.g. the ones associated to providers like Hotmail, Gmail and Yahoo Mail – are shared among users and they are based on non-dedicated IPs. This means that you could end up to rely on an IP that is also used by a spammer: a fact that will negatively affect the correct delivery of your messages. Also, common providers establish some strict limits on the number of emails you can send (e.g. Yahoo’s restriction is 100 email per hour).

That is why, if you plan to send a massmail or set up an email campaign we recommend to use a professional outgoing email service using SMTP which guarantees a controlled IP and avoids all the aforementioned problems.

Hope this article on SMTP server application explained is useful to you. Please read about How to make a website responsive using CSS

How to make a website responsive using CSS

Hello People. This article discuss about how to make a website responsive using CSS. Responsive web design makes your web page a perfect fit on all devices. Responsive web pages can be viewed using many different devices like desktops, tablets, and phones. Responsive design makes your web page look good, and be easy to use, regardless of the device.

What is The Viewport?

The viewport is the area visible to a user on a web page. The viewport varies with device. Viewport will be smaller on a mobile phone than on a computer screen.

Use CSS media queries to apply different styling

Setting large absolute CSS widths for page elements will cause the element to be too wide for the viewport on a smaller device. Better to use relative width values, such as width: 100%. Be cautious of using large absolute positioning values. It may cause the element to fall outside the viewport on small devices.

CSS for a Responsive Grid-View

Before building a responsive grid-view, ensure that all HTML elements have the box-sizing property set to border-box. This makes sure that the padding and border are included in the total width and height of the elements.

Add the following code in your CSS:* {
  box-sizing: border-box;
}

The following example shows a simple responsive web page, with two columns:

Example

.menu {
  width: 25%;
  float: left;
}
.main {
  width: 75%;
  float: left;
}

How to make a website responsive using CSS

What is a Media Query?

Media query is a CSS technique introduced in CSS3. It uses the @media rule to include a block of CSS properties if a certain condition is true.

Example

If the browser window is 600px or smaller, the background color will be lightblue:@media only screen and (max-width: 600px) {
  body {
    background-color: lightblue;
  }
}

Using The width Property

If the width property is set to a percentage and the height property is set to “auto”, the image will be responsive and it can scale up and down:

Example

img {
  width: 100%;
  height: auto;
}

There are many free CSS Frameworks that offer Responsive Design.


Using W3.CSS

A great way to create a responsive design, is to use a responsive style sheet, like W3.CSS

W3.CSS makes it easy to develop sites that look nice at any size.

Hope this article on How to make a website responsive using CSS is useful to you. Please read Production stage issue in APP development

Navigation

× Contact Us