6 Ways to Reduce Email Bounce Rate & Improve Deliverability

Bounced emails are frustrating! When your emails bounce, it means that a portion of your prospects and customers may never get the email messages that you carefully crafted for them and that they wanted to see. Plus, high bounce rates can hurt your email deliverability, which is why you should closely monitor and proactively manage email bounces. Here, we discuss the important differences between soft and hard bounces, some typical bounce rates to let you see how yours compare, and steps that you can take to prevent your emails from bouncing.

Soft Bounce vs Hard Bounce—What’s the Difference and Why Should You Care?

An email bounce-back occurs when an email is rejected by a subscriber’s email server; the email bounce rate measures the portion of recipients who didn’t receive your email message. The bounce rate is further broken down into soft bounce rates and hard bounce rates:

  • Soft bounces are often caused by temporary delivery issues that may be solved by the next email send. These issues include:
    • Your subscriber’s mailbox is full
    • Your recipient’s email server is down
    • The email message is too big.
  • Hard bounces will never be delivered. They’re returned to the sending email server because of a variety of reasons that are permanent, including:
    • The email address is invalid or doesn’t exist
    • The domain name doesn’t exist
    • Your subscriber’s mailbox is no longer active.

How Do You Calculate Bounce Rate, and Does It Impact Deliverability?

The bounce rate is determined by dividing the total number of hard bounces by the total number of emails sent. A low bounce rate is a good indication of a high-quality, permission-based email list of active and engaged subscribers. A high bounce rate, however, suggests problems with your email list management and possibly with your acquisition methods. For example, typos in email addresses are frequently the cause of hard bounces, which indicates that your list needs to be cleaned up.

In addition, a high bounce rate can hurt your email deliverability in different ways, including:

  • Getting a bad reputation—To determine sender reputations, Internet service providers (e.g., Gmail and Yahoo!) watch for Internet protocol (IP) addresses that repeatedly send messages to invalid email addresses.
  • Getting blacklisted—High bounce rates can also land an IP address on the blacklists.

What’s an Acceptable Bounce Rate?

How do your bounce rates compare to other companies of similar size and in the same industry? To answer that question, check out MailChimp’s Email-Marketing Benchmarks (updated March 2018), which used “hundreds of millions of emails” delivered by the MailChimp system to calculate the report’s email campaign stats. Here are some highlights:

  • Average soft bounces by industry ranged from 0.12% (daily deals/e-coupons) to 1.39% (architecture and construction)
  • Average hard bounces by industry ranged from 0.07% (daily deals/e-coupons) to 0.98% (construction)
  • Average soft bounces by company size ranged from 0.42% (26-50 employees) to 0.54% (11-25 employees)
  • Average hard bounces by company size ranged from 0.28% (26-50 employees) to 0.38% (50+ employees).

A typical benchmark to strive for is an email bounce rate that is less than 2%. In other words, if you’re seeing bounce rates more than 2%, you should take a look at your email-marketing best practices to see what you can do to ensure that your emails get delivered to your subscribers’ inboxes.

6 Ways to Reduce Your Email Bounce Rate

Here are some important steps that you can take to help keep your email bounce rate low and your email deliverability high:

  1. When a hard bounce occurs, immediately remove the address from your email list and do not send to it again. Most email-deployment platforms automatically remove hard bounces. But it’s always a good idea to verify that your platform is permanently removing hard bounces, because we’ve seen setups in which it wasn’t occurring as expected. When a soft bounce occurs, however, you can try to resend it. Most email-deployment platforms will try to resend a soft bounced email for a certain amount of times until it is considered a hard bounce and is subsequently removed from the email send list.
  2. Authenticate your emails. Email authentication is essential to getting your emails delivered into your subscribers’ inboxes. It’s the way you verify that the domain used in the From address is under the control of you, the sender.
  3. Build and maintain a permission-based email list. This is a cardinal rule in keeping your email bounce rates low. For some great email list–building best practices, read “How to Build a Bigger, Better Email List.”
  1. Use a preference center. By giving your subscribers choices and control over what types of information and how much email they receive from you, an email preference center can help keep your bounce rate low and ensure the success of your email campaigns.
  2. Regularly and consistently send emails to your subscribers. By sending to your list regularly, you are not only less likely to see high bounce rates, but you are also likely to experience fewer spam complaints and higher subscriber engagement. People inevitably change their email addresses and abandon old addresses, which can result in email bounces. Contacting your subscribers regularly rather than sporadically will help prevent a high number of bounces occurring at once.
  3. Keep track of your email deliverability and performance results. The longer you let issues such as high bounce rates and weak subscriber engagement go undetected, the more likely you will get a bad-sender reputation that will negatively impact your email deliverability.

Testing your email with Telnet

These FAQs will teach you how to test your IMAP, POP3 and SMTP settings using Telnet

Simply click on a title below to skip to the most appropriate FAQ. You can also click the Top button to return and make another selection.

  1. How can I use Telnet to test my IMAP e-mail account is working?
  2. How can I use Telnet to test my POP3 e-mail account is working?
  3. How can I use Telnet to test that my email account can send mail via SMTP?

How can I use Telnet to test my IMAP e-mail account is working?

This article explains how to use the telnet command in your command prompt console to establish whether your e-mail account is accepting connections.

In circumstances where your usual e-mail client software is not connecting to your IMAP mailbox, using telnet helps you to perform a basic assessment of whether your mailbox is functional. This can help you to eliminate your local software as an issue in being unable to receive your mail.

Please be aware that for Windows Vista & Windows 7, the telnet function is by default disabled and therefore it must be turned on from the Windows Features menu within the control panel.

  • Step 1 of 2Open up your command console – in most versions of Windows, click Start, then Run, type cmd and hit Enter.
  • Step 2 of 2Enter only the text in bold as shown in the example command box below, hitting Enter at the end of each line.
telnet imap.123-reg.co.uk 143
* OK [CAPABILITY IMAP4rev1 SASL-IR SORT THREAD=REFERENCES MULTIAPPEND UNSELECT
LITERAL+ IDLE CHILDREN NAMESPACE LOGIN-REFERRALS UIDPLUS LIST-EXTENDED I18NLEVEL=
1 AUTH=PLAIN] ATLAS/WebFusion Mail Server
01 LOGIN username@domain.com password
01 OK [CAPABILITY IMAP4rev1 SASL-IR SORT THREAD=REFERENCES MULTIAPPEND UNSELECT
LITERAL+ IDLE CHILDREN NAMESPACE LOGIN-REFERRALS UIDPLUS LIST-EXTENDED I18NLEVEL
=1 AUTH=PLAIN] Logged in.

This test will indicate whether or not you are able to connect successfully to your e-mail account. If you are able to connect successfully using Telnet, but not through your regular e-mail client, this suggests the issue may be caused by your local software and you should re-check account settings in your e-mail client in accordance with the vendors help documentation and our e-mail support pages.

If you would like to view all folders within a mailbox you can use the below command when connected via Telnet to the IMAP server.

. list "" "*"

Please note: In the code example above, generic values have been used for the mailbox usernames and passwords.

When testing your e-mail account connection using telnet, please ensure you have the correct e-mail account username and e-mail account password to hand.

How can I use Telnet to test my POP3 e-mail account is working?

This article explains how to use the telnet command in your command prompt console to establish whether your e-mail account is accepting connections.

In circumstances where your usual e-mail client software is not connecting to your POP3 mailbox, using telnet helps you to perform a basic assessment of whether your mailbox is functional. This can help you to eliminate your local software as an issue in being unable to receive your mail.

Please be aware that for Windows Vista & Windows 7, the telnet function is by default disabled and therefore it must be turned on from the Windows Features menu within the control panel.

  • Step 1 of 2Open up your command console – in most versions of Windows, click Start, then Run, type cmd and hit Enter.
  • Step 2 of 2Enter the text as shown in the example command box below, hitting Enter at the end of each line. For each successful command you issue, the server will return the message ‘+OK‘ indicating you should proceed to the next command.
telnet pop.123-reg.co.uk 110
+OK Hello there.
user your-emailmailboxusername
+OK Password required.
pass youremailpassword
+OK logged in.

This test will indicate whether or not you are able to connect successfully to your e-mail account. If you are able to connect successfully using telnet, but not through your regular e-mail client, this suggests the issue may be caused by your local software and you should re-check account settings in your e-mail client in accordance with the vendors help documentation and our e-mail support pages.

Please note: In the code example above, generic values have been used for the mailbox usernames and passwords.

When testing your e-mail account connection using telnet, please ensure you have the correct e-mail account username and e-mail account password to hand.

How can I use Telnet to test that my email account can send mail via SMTP?

This article explains how to use the telnet command in your command prompt console to establish whether your e-mail account can send emails via the the 123 Reg SMTP server.

In circumstances where your usual e-mail client software is not connecting to the 123 Reg SMTP server to send emails, using telnet helps you to perform a basic assessment of whether your email account is functional. This can help you to eliminate your local software as an issue in being unable to send your mail.

Please be aware that for Windows Vista & Windows 7, the telnet function is by default disabled and therefore it must be turned on from the Windows Features menu within the control panel.

  • Step 1 of 2Open up your command console – in most versions of Windows, click Start, then Run, type cmd and hit Enter.
  • Step 2 of 2Enter the text as shown in Bold in the example command box below, hitting Enter at the end of each line. For each successful command you issue, the server a return the message.
telnet smtp.123-reg.co.uk 25
220 mail6.atlas.pipex.net ESMTP Exim 4.71 - "ATLAS SMTP Service" Wed, 13 Jul 201
1 10:47:06 +0100
EHLO smtp.123-reg.co.uk
250-mail6.atlas.pipex.net Hello hns01-fw.internal.gxn.net [195.224.160.13]
250-SIZE 31457280
250-PIPELINING
250-AUTH PLAIN LOGIN
250 HELP
AUTH LOGIN
334 DXNl4gddhbWU3
cwtui3lAcmlja2ljaeFoYewuY2 (Base 64 encoded username)
334 UGFzc3dvcmQ6
YeGjc3ducmE (Base 64 encoded password)
235 Authentication succeeded
MAIL FROM: emailaddress@domain.com
250 OK
RCPT TO: recipent@theirdomain.com
250 Accepted
DATA
354 Enter message, ending with "." on a line by itself
Subject Test using Telnet
.
250 OK id=4Qgw3m-023484q-I5

This test will indicate whether or not you are able to connect successfully to send email from your e-mail account and if you see the statement OK it means the that the email message was sent to the recipient.

What is application security?

Application security describes security measures at the application level that aim to prevent data or code within the app from being stolen or hijacked. It encompasses the security considerations that happen during application development and design, but it also involves systems and approaches to protect apps after they get deployed. 

Application security may include hardware, software, and procedures that identify or minimize security vulnerabilities. A router that prevents anyone from viewing a computer’s IP address from the Internet is a form of hardware application security. But security measures at the application level are also typically built into the software, such as an application firewall that strictly defines what activities are allowed and prohibited. Procedures can entail things like an application security routine that includes protocols such as regular testing. 

Application security definition

Application security is the process of developing, adding, and testing security features within applications to prevent security vulnerabilities against threats such as unauthorized access and modification.

Why application security is important

Application security is important because today’s applications are often available over various networks and connected to the cloud, increasing vulnerabilities to security threats and breaches. There is increasing pressure and incentive to not only ensure security at the network level but also within applications themselves. One reason for this is because hackers are going after apps with their attacks more today than in the past. Application security testing can reveal weaknesses at the application level, helping to prevent these attacks.

Types of application security

Different types of application security features include authentication, authorization, encryption, logging, and application security testing. Developers can also code applications to reduce security vulnerabilities.

  • Authentication: When software developers build procedures into an application to ensure that only authorized users gain access to it. Authentication procedures ensure that a user is who they say they are. This can be accomplished by requiring the user to provide a user name and password when logging in to an application. Multi-factor authentication requires more than one form of authentication—the factors might include something you know (a password), something you have (a mobile device), and something you are (a thumb print or facial recognition).
  • Authorization: After a user has been authenticated, the user may be authorized to access and use the application. The system can validate that a user has permission to access the application by comparing the user’s identity with a list of authorized users. Authentication must happen before authorization so that the application matches only validated user credentials to the authorized user list.
  • Encryption: After a user has been authenticated and is using the application, other security measures can protect sensitive data from being seen or even used by a cybercriminal. In cloud-based applications, where traffic containing sensitive data travels between the end user and the cloud, that traffic can be encrypted to keep the data safe. 
  • Logging: If there is a security breach in an application, logging can help identify who got access to the data and how. Application log files provide a time-stamped record of which aspects of the application were accessed and by whom. 
  • Application security testing: A necessary process to ensure that all of these security controls work properly.

Application security in the cloud

Application security in the cloud poses some extra challenges. Because cloud environments provide shared resources, special care must be taken to ensure that users only have access to the data they are authorized to view in their cloud-based applications. Sensitive data is also more vulnerable in cloud-based applications because that data is transmitted across the Internet from the user to the application and back.

Mobile application security

Mobile devices also transmit and receive information across the Internet, as opposed to a private network, making them vulnerable to attack. Enterprises can use virtual private networks (VPNs) to add a layer of mobile application security for employees who log in to applications remotely. IT departments may also decide to vet mobile apps and make sure they conform to company security policies before allowing employees to use them on mobile devices that connect to the corporate network.

Web application security

Web application security applies to web applications—apps or services that users access through a browser interface over the Internet. Because web applications live on remote servers, not locally on user machines, information must be transmitted to and from the user over the Internet. Web application security is of special concern to businesses that host web applications or provide web services. These businesses often choose to protect their network from intrusion with a web application firewall. A web application firewall works by inspecting and, if necessary, blocking data packets that are considered harmful.

What are application security controls? 

Application security controls are techniques to enhance the security of an application at the coding level, making it less vulnerable to threats. Many of these controls deal with how the application responds to unexpected inputs that a cybercriminal might use to exploit a weakness. A programmer can write code for an application in such a way that the programmer has more control over the outcome of these unexpected inputs. Fuzzing is a type of application security testing where developers test the results of unexpected values or inputs to discover which ones cause the application to act in an unexpected way that might open a security hole.

What is application security testing?

Application developers perform application security testing as part of the software development process to ensure there are no security vulnerabilities in a new or updated version of a software application. A security audit can make sure the application is in compliance with a specific set of security criteria. After the application passes the audit, developers must ensure that only authorized users can access it. In penetration testing, a developer thinks like a cybercriminal and looks for ways to break into the application. Penetration testing may include social engineering, or trying to fool users into allowing unauthorized access. Testers commonly administer both unauthenticated security scans and authenticated security scans (as logged-in users) to detect security vulnerabilities that may not show up in both states.  

100+ World Top Rivers and Lakes Lists

The world top 100 rivers and lakes name. Important top 100 list of rivers and lakes. Read and learn all of these GK and improve your GK skills. Get start here.

Place/CountryNameRiver/Lake
IndiaGangaRIVER
IndiaYamunaRIVER
Toledo (USA)ErifLAKE
Buffalo (USA)OntarioLAKE
Asuncion (Paraguay)ParaguayRIVER
Belem (Brazil)AmazonRIVER
Cairo (Egypt)NileRIVER
Colombo (Sri Lanka)KelaniRIVER
Kabul (Afghanistan)KabulRIVER
Bucharest (Romania)DimbovitaRIVER
Cognac (France)CharenteRIVER
Galafi (Romania)DanubeRIVER
Galafi (Romania)SiretRIVER
Cambridge (U.K.)CamRIVER
Oxford (U.K.)ThamesRIVER
Panaji (Goa, India)MandoviRIVER
Alexandria (Egypt)NileRIVER
Khartoum (Sudan)Blue NileRIVER
Khartoum (Sudan)White NileRIVER
Omudurma (Sudan)NileRIVER
Kisume (Kenya)VictoriaLAKE
Kampala (Upanda)VictoriaLAKE
Jinja (Upganda)NileRIVER
Jinja (Upganda)VictoriaLAKE
Lokoja (Nigeria)NigerRIVER
Lokoja (Nigeria)BenueRIVER
Vancouver (Canada)FraserRIVER
Qyuebec (Canada)St. LawrenceRIVER
Hamiliton (Canada)OntarioLAKE
Arvida (Canada)SaguenayRIVER
Sarnia (Canada)HuronLAKE
Sudbury (Canada)HuronLAKE
Portland (USA)ColumbiaRIVER
Cleveland (USA)ErifLAKE
Gary (USA)MichiganLAKE
Milwaukee (USA)MichiganLAKE
Philadelphia (USA)DelawareRIVER
New York City (USA)HudsonRIVER
Baton Rouge (USA)MississippiRIVER
Port Harcourt (Nigeria)NigerRIVER
BrazzavilieZaire (Congo)RIVER
KinshasaZaireRIVER
MatadiZaireRIVER
BomaZaireRIVER
Kiruna (Sweden)TorneRIVER
Lisbon (Portugal)DouroRIVER
Paris (France)SeineRIVER
Bordeaux (France)GarroneRIVER
Lyons (France)SaoneRIVER
Lyons (France)RhoneRIVER
Le Havre (France)SeineRIVER
Rouen (France)SeineRIVER
Rome (Italy)TiberRIVER
Antwerp (Belgium)ScheldtRIVER
London (Britain)ThamesRIVER
New Castle (U.K.)TyneRIVER
Glasgow (U.K.)ClydeRIVER
Moscow (Russia)MoskvaRIVER
Petrozavosk (Russia)OnegaLAKE
Stalingrad (Russia)VolgaRIVER
Krasnoyark (Russia)YeniseyRIVER
Bratsk (Russia)AngaraRIVER
Irkutsk (Russia)BaikalLAKE
Nickopol (Ukraine)DnieperRIVER
Dnepropetrovsk (Ukraine)DnieperRIVER
Zaragoza (Spain)EbroRIVER
Nantes (France)LoireRIVER
Saratov (Russia)VolgaRIVER
Rostov (Russia)DonRIVER
Kiev (Ukraine)DnieperRIVER
Vienna (Austria)DanubeRIVER
BudapestDanubeRIVER
BelgradeDanubeRIVER
DublinLiffeyRIVER
MadridManzanaresRIVER
PragueVltavaRIVER
BratislavaDanubeRIVER
Dusseldorf (Germany)RhineRIVER
Cologne (Germany)RhineRIVER
EssenRuhrRIVER
WuppertalWupperRIVER
StuttgartNeckarRIVER
Washington (USA)PotomacRIVER
Perth (Australia)SwanRIVER
Freemantle (Australia)SwanRIVER
Sydney (Australia)DarlingRIVER
Nanking (China)Yangtze KiangRIVER
Hongkong (China)CantonRIVER
Macao (China)PearlRIVER
Vientiane (Laos)MekongRIVER
Vatican CityTiberRIVER
Berlin (Germany)SpreeRIVER
Frankfurt (Germany)RhineRIVER
Frankfurt (Germany)MainRIVER
Leipzig (Germany)ElbeRIVER
Dresden (Germany)ElbeRIVER
Bingen (Germany)RhineRIVER
Hamburg (Germany)ElbeRIVER
Bremen (Germany)WeserRIVER
Krakow (Poland)VistulaRIVER
Mandalay (Myanmar)IrrawaddyRIVER
Chauk (Myanmar)IrrawaddyRIVER
Bangkok (Thailand)Chao PrayaRIVER
Baghdad (Iraq)TigrisRIVER
Lahore (Pakistan)RaviRIVER
Kathmandu (Nepal)BaghmatiRIVER
Kathmandu (Nepal)VishnumaRIVER

gstr 9c explanation

GSTR 9C is the GST reconciliation Statement for a particular financial year. Taxpayers have to get it certified by CAs before filing. The due date for filing GSTR-9C is on or before 31st December.

GSTR 9C is used for Normal GST Audit / Certification by a Chartered Accountant or a Cost Accountant. It means every registered taxpayer whose aggregate turnover during a financial year exceeds 2 crore rupees has to get their statement audited. Also, they have to furnish a copy of audited annual accounts and a duly certified reconciliation statement in FORM GSTR 9C.

What is GSTR-9C?

GSTR-9C is a statement of reconciliation between:

  • GSTR 9 (Annual returns) filed for an FY, and
  • Figures as per Audited Annual Financial statements of the taxpayer.

GSTR-9C is to be certified by the CA. It is similar to the tax audit report furnished under the Income tax act.

It will consist of gross and taxable turnover as per the Books reconciled with the respective figures as per the consolidation of all the GST returns for an FY. Hence, any differences arising from this reconciliation will be reported along with the reasons for the same.

The certification is separate for different GSTINs of the same company. So, for one PAN there can be many reports of GSTR 9C.

Who will prepare & submit GSTR 9C?

A Cost Accountant or a Chartered Accountant has to prepare and certify GSTR 9C. It has to be submitted on the GST portal along with:

  • the GST Annual Returns(GSTR-9) and
  • the Audited Financial Statements

You can also file through the facilitation center.

This statement is applicable to all those taxpayers who must get their Annual Accounts audited under the GST laws.

What is the due date for GSTR 9C?

The due date for submitting the GSTR 9C has the same deadline as of submitting GSTR 9. Hence, you have to file GSTR 9C on or before 31st Dec of the year subsequent to the relevant FY under audit. For example, for the FY 2017-18, the due date for filing GSTR 9C will be 31st Dec 2018.

What’s the importance of GSTR 9C?

A Chartered accountant or cost accountant will prepare this GST Reconciliation statement. The CA has to report any differences between the details in GST returns and the audit.

Also, this statement acts as a base for the GST authorities to verify the correctness of the GST returns filed by the taxpayers. This is because the CA has to certify any additional liability arising out of the reconciliation exercise and GST audit in GSTR 9C.

What are the contents of the GSTR 9C?

GSTR-9C consists of two main parts:

  • Part-A: Reconciliation Statement
  • Part-B: Certification

Part-A: Reconciliation Statement

The figures in the audited financial statements are at PAN level. Hence, the turnover, Tax paid and ITC earned on a particular GSTIN must be taken out from the audited accounts of the organisation as a whole.

The Reconciliation Statement consists of five parts as follows:

Part-I:

Basic details -> Consists of FY, GSTIN, Legal Name, and Trade Name. The taxpayer must also mention if they are subject to audit under any other law.

Part-II:

Reconciliation of turnover declared in the Audited Annual Financial Statement with turnover declared in Annual Return (GSTR 9) -> the process consists of reporting the gross and taxable turnover declared in the Annual return with the Audited Financial Statements. As Audited Financial statement is at a PAN level, this might require the break-up of the audited financial statement at GSTIN level for reporting in GSTR 9C.

Part-III:

Reconciliation of tax paid -> This section requires GST rate-wise reporting of the tax liability that arose in FY as per the accounts and paid as reported in the GSTR 9 respectively with the differences thereof. Also, it requires the taxpayers to state the additional liability due to un-reconciled differences noticed upon reconciliation.

Part-IV:

Reconciliation of Input Tax Credit (ITC) -> this consists the reconciliation of input tax credit availed and utilized by taxpayers as reported in GSTR 9 and as reported in the Audited Financial Statement. Also, it needs a reporting of expenses booked as per the audited accounts, with a breakup of eligible and ineligible ITC. And the reconciliation of the eligible ITC with that amount claimed as per GSTR 9. This declaration will be after considering the reversals of ITC claimed, if any.

Part-V:

Auditor’s recommendation on additional Liability due to non-reconciliation -> Here, the Auditor must report any tax liability identified through the reconciliation process and GST audit, pending for payment by the taxpayer.

This can be non-reconciliation of turnover or ITC on account of:

  • Amount paid for supplies in case not included in the Annual Returns(GSTR 9)
  • Erroneous Refund to be paid back
  • Other Outstanding demands to be settled

Part-B: Certification

The GSTR 9C can be certified by the same CA who conducted the GST audit.  Also, it can be certified by any other CA who did not conduct the GST Audit for that particular GSTIN.

The difference between both is that in case the CA certifying the GSTR 9C did not conduct the GST audit, he must have based an opinion on the Books of Accounts audited by another CA in the reconciliation statement. The format for certification report will vary depending on who the certifier is.

And with that, we end this post of GSTR 9C. If you have any questions, drop them in the comment section below.

oops in php interview questions

1) What is OOPS?

OOPS is abbreviated as Object Oriented Programming system in which programs are considered as a collection of objects. Each object is nothing but an instance of a class.

2) Write basic concepts of OOPS?

Following are the concepts of OOPS:

  1. Abstraction
  2. Encapsulation
  3. Inheritance
  4. Polymorphism

3) What is a class?

A class is simply a representation of a type of object. It is the blueprint/plan/template that describes the details of an object.

4) What is an Object?

An object is an instance of a class. It has its own state, behavior, and identity.

5) What is Encapsulation?

Encapsulation is an attribute of an object, and it contains all data which is hidden. That hidden data can be restricted to the members of that class.

Levels are Public, Protected, Private, Internal, and Protected Internal.

6) What is Polymorphism?

Polymorphism is nothing but assigning behavior or value in a subclass to something that was already declared in the main class. Simply, polymorphism takes more than one form.

7) What is Inheritance?

Inheritance is a concept where one class shares the structure and behavior defined in another class. If Inheritance applied to one class is called Single Inheritance, and if it depends on multiple classes, then it is called multiple Inheritance.

8) What are manipulators?

Manipulators are the functions which can be used in conjunction with the insertion (<<) and extraction (>>) operators on an object. Examples are endl and setw.

9) Explain the term constructor

A constructor is a method used to initialize the state of an object, and it gets invoked at the time of object creation. Rules for constructor are:

  • Constructor Name should be the same as a class name.
  • A constructor must have no return type.

10) Define Destructor?

A destructor is a method which is automatically called when the object is made of scope or destroyed. Destructor name is also same as class name but with the tilde symbol before the name.

11) What is an Inline function?

An inline function is a technique used by the compilers and instructs to insert complete body of the function wherever that function is used in the program source code.

12) What is a virtual function?

A virtual function is a member function of a class, and its functionality can be overridden in its derived class. This function can be implemented by using a keyword called virtual, and it can be given during function declaration.

A virtual function can be declared using a token(virtual) in C++. It can be achieved in C/Python Language by using function pointers or pointers to function.

13) What is a friend function?

A friend function is a friend of a class that is allowed to access to Public, private, or protected data in that same class. If the function is defined outside the class cannot access such information.

A friend can be declared anywhere in the class declaration, and it cannot be affected by access control keywords like private, public, or protected.

14) What is function overloading?

Function overloading is a regular function, but it can perform different tasks. It allows the creation of several methods with the same name which differ from each other by the type of input and output of the function.

Example


void add(int& a, int& b);
 
void add(double& a, double& b);
 
void add(struct bob& a, struct bob& b);

15) What is operator overloading?

Operator overloading is a function where different operators are applied and depends on the arguments. Operator,-,* can be used to pass through the function, and it has its own precedence to execute

16) What is an abstract class?

An abstract class is a class which cannot be instantiated. Creation of an object is not possible with an abstract class, but it can be inherited. An abstract class can contain only an Abstract method. Java allows only abstract method in abstract class while other languages allow non-abstract method as well.

17) What is a ternary operator?

The ternary operator is said to be an operator which takes three arguments. Arguments and results are of different data types, and it depends on the function. The ternary operator is also called a conditional operator.

18) What is the use of finalize method?

Finalize method helps to perform cleanup operations on the resources which are not currently used. Finalize method is protected, and it is accessible only through this class or by a derived class.

19) What are the different types of arguments?

A parameter is a variable used during the declaration of the function or subroutine, and arguments are passed to the function body, and it should match with the parameter defined. There are two types of Arguments.

  • Call by Value – Value passed will get modified only inside the function, and it returns the same value whatever it is passed into the function.
  • Call by Reference – Value passed will get modified in both inside and outside the functions and it returns the same or different value.

20) What is the super keyword?

The super keyword is used to invoke the overridden method, which overrides one of its superclass methods. This keyword allows to access overridden methods and also to access hidden members of the superclass.

It also forwards a call from a constructor, to a constructor in the superclass.

21) What is method overriding?

Method overriding is a feature that allows a subclass to provide the implementation of a method that overrides in the main class. It will override the implementation in the superclass by providing the same method name, same parameter, and same return type.

22) What is an interface?

An interface is a collection of an abstract method. If the class implements an interface, it thereby inherits all the abstract methods of an interface.

Java uses Interface to implement multiple inheritances.

23) What is exception handling?

An exception is an event that occurs during the execution of a program. Exceptions can be of any type – Runtime exception, Error exceptions. Those exceptions are adequately handled through exception handling mechanism like try, catch, and throw keywords.

24) What are tokens?

A compiler recognizes a token, and it cannot be broken down into component elements. Keywords, identifiers, constants, string literals, and operators are examples of tokens.

Even punctuation characters are also considered as tokens. Example: Brackets, Commas, Braces, and Parentheses.

25) What is the main difference between overloading and overriding?

Overloading is static Binding, whereas Overriding is dynamic Binding. Overloading is nothing but the same method with different arguments, and it may or may not return the equal value in the same class itself.

Overriding is the same method names with the same arguments and return types associated with the class and its child class.

26) What is the main difference between a class and an object?

An object is an instance of a class. Objects hold multiple information, but classes don’t have any information. Definition of properties and functions can be done in class and can be used by the object.

A class can have sub-classes, while an object doesn’t have sub-objects.

27) What is an abstraction?

Abstraction is a useful feature of OOPS, and it shows only the necessary details to the client of an object. Meaning, it shows only required details for an object, not the inner constructors, of an object. Example – When you want to switch on the television, it is not necessary to know the inner circuitry/mechanism needed to switch on the TV. Whatever is required to switch on TV will be shown by using an abstract class.

28) What are the access modifiers?

Access modifiers determine the scope of the method or variables that can be accessed from other various objects or classes. There are five types of access modifiers, and they are as follows:

  • Private
  • Protected
  • Public
  • Friend
  • Protected Friend

29) What are sealed modifiers?

Sealed modifiers are the access modifiers where the methods can not inherit it. Sealed modifiers can also be applied to properties, events, and methods. This modifier cannot be used to static members.

30) How can we call the base method without creating an instance?

Yes, it is possible to call the base method without creating an instance. And that method should be “Static method.”

Doing Inheritance from that class.-Use Base Keyword from a derived class.

31) What is the difference between new and override?

The new modifier instructs the compiler to use the new implementation instead of the base class function. Whereas, Override modifier helps to override the base class function.

32) What are the various types of constructors?

There are three types of constructors:

–  Default Constructor – With no parameters.

–  Parametric Constructor – With Parameters. Create a new instance of a class and also passing arguments simultaneously.

–  Copy Constructor – Which creates a new object as a copy of an existing object.

33) What is early and late Binding?

Early binding refers to the assignment of values to variables during design time, whereas late Binding refers to the assignment of values to variables during run time.

34) What is ‘this’ pointer?

THIS pointer refers to the current object of a class. THIS keyword is used as a pointer which differentiates between the current object with the global object. It refers to the current object.

35) What is the difference between structure and a class?

The default access type of a Structure is public, but class access type is private. A structure is used for grouping data, whereas a class can be used for grouping data and methods. Structures are exclusively used for data, and it doesn’t require strict validation, but classes are used to encapsulate and inherent data, which requires strict validation.

36) What is the default access modifier in a class?

The default access modifier of a class is Private by default.

37) What is a pure virtual function?

A pure virtual function is a function which can be overridden in the derived class but cannot be defined. A virtual function can be declared as Pure by using the operator =0.

Example –

Virtual void function1() // Virtual, Not pure
Virtual void function2() = 0 //Pure virtual

38) What are all the operators that cannot be overloaded?

Following are the operators that cannot be overloaded -.

  1. Scope Resolution (::)
  2. Member Selection (.)
  3. Member selection through a pointer to function (.*)

39) What is dynamic or run time polymorphism?

Dynamic or Run time polymorphism is also known as method overriding in which call to an overridden function is resolved during run time, not at the compile time. It means having two or more methods with the same name, same signature but with different implementation.

40) Do we require a parameter for constructors?

No, we do not require a parameter for constructors.

41) What is a copy constructor?

This is a special constructor for creating a new object as a copy of an existing object. There will always be only one copy constructor that can be either defined by the user or the system.

42) What does the keyword virtual represented in the method definition?

It means we can override the method.

43) Whether static method can use nonstatic members?

False.

44) What are a base class, subclass, and superclass?

The base class is the most generalized class, and it is said to be a root class.

A Subclass is a class that inherits from one or more base classes.

The superclass is the parent class from which another class inherits.

45) What is static and dynamic Binding?

Binding is nothing but the association of a name with the class. Static Binding is a binding in which name can be associated with the class during compilation time, and it is also called as early Binding.

Dynamic Binding is a binding in which name can be associated with the class during execution time, and it is also called as Late Binding.

46) How many instances can be created for an abstract class?

Zero instances will be created for an abstract class. In other words, you cannot create an instance of an Abstract Class.

47) Which keyword can be used for overloading?

Operator keyword is used for overloading.

48) What is the default access specifier in a class definition?

Private access specifier is used in a class definition.

49) Which OOPS concept is used as a reuse mechanism?

Inheritance is the OOPS concept that can be used as a reuse mechanism.

50) Which OOPS concept exposes only the necessary information to the calling functions?

Encapsulation

ITR forms for AY 2019-20 notified – Complete list of ITR forms and their usage

New Delhi: The Income Tax department has notified various forms related to I-T return filing for individuals as well as companies for the assessment year 2019-20.

The Tax department has made no change in ITR-1 form or Sahaj, however it has rationalised some sections in ITR 2, 3, 5, 6 and 7.

The last date of filing Income Tax Return (ITR) is July 31 for those who are not required to get their accounts audited.

Here are various types of ITR forms and their usage

ITR-1 for AY 2019-20

This form is to be filed by individuals total income upto Rs 50 lakh, having Income from Salaries, one house property, other sources (Interest etc.), and agricultural income upto Rs 5 thousand.

You can download the form here.

ITR-2 for AY 2019-20

This form is to be filed by individuals and HUFs not having income from profits and gains of business or profession.

You can download the form here.

ITR-3 for AY 2019-20

This form is to be filed by individuals and HUFs having income from profits and gains of business or profession.

ITR-4 or Sugam for AY 2019-20

This form is to be filed by individuals, HUFs and Firms (other than LLP) having total income upto Rs 50 lakh and having income from business and profession which is computed under sections 44AD, 44ADA or 44AE.

You can download the form here.

ITR-5 for AY 2019-20

This form is to be filed by persons other than,- (i) individual, (ii) HUF, (iii) company and (iv) person filing Form ITR-7

You can download the form here.

ITR-6 for AY 2019-20

This form is to be filed by Companies other than companies claiming exemption under section 11.

ITR-7 for AY 2019-20

This form is to be filed by persons including companies required to furnish return under sections 139(4A) or 139(4B) or 139(4C) or 139(4D) only.

which language is best for socket programming

It really depends on what you mean by network programming. So I’ll run through a couple possibilities. Commentators: Don’t fret if I forgot “your language.” The question is so open-ended. It’s like asking ‘What kinds of vehicles are good for getting me from New York City to Boston?’

  • You want to write a program that participates in XML-RPC or similar.
    • C# or Java
  • You are network programming in the context of a web page
    • JavaScript
  • You need some machines to talk to each other in some other existing protocol, and you need it done quickly.
    • Python or Perl
  • You need to write a distributed program that needs to be up and running all the time, not even resting for upgrades
    • Erlang
  • You need to write a distributed program that is very fast and does a bunch of things at once
  • You need to write a new network driver, for a new network protocol you thought up yourself
    • C, C++
  • You just want to network some TCP sockets together

Soa Technology

5 Best Programming Languages to Learn for Cyber Security

1. C and C++

C and C++ are critical low-level programming languages that you need to know as a cyber security professional.

These languages provide access to low-level IT infrastructure such as RAM and system processes, which if not well protected, hackers can easily exploit.

The C programming language is the backbone of most operating systems. It is a lean, flexible, and efficient language that can be used to complete a wide range of tasks such as cryptography, image processing, and socket networking.

Essentially, C++ is usually regarded as C’s big brother — which has been concocted with crack, meth, and steroids and mixed without any favors. C++ is a fantastic language that is largely based on C’s source code.

There are several cyber security programs created using C++. For example, Nmap, the network mapper tool, is created using C++.

Here is a marvelous quote from Bjarne Stroustrup, the creator of C++:

“C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows your whole leg off.”

As a cyber security expert, if you are experienced at using C/C++ programming languages, you’ll know how to respond to attacks targeting lower level operations within your computing environment.

2. Python

Python is a high-level programming language that is increasingly becoming popular among cyber experts.

It’s gaining traction mainly because of its adherence to code readability, clear and simple syntax, and availability of an extensive number of libraries.

So, whatever task you want to do, you can always complete it easily with Python.

For example, you can use the language to send TCP-packets to machines, perform malware analysis, and create intrusion detection systems with minimal reliance on third-party tools.

However, unlike C/C++, Python is not low-level; therefore, it may not provide enough visibility to hardware resources.

Learning Python for cyber security will give you an edge in your career. You’ll be equipped with programming skills that can assist you to identify vulnerabilities and discover how to fix them.

No programming knowledge required

3. JavaScript

JavaScript is a high-level programming language, which is often referred as the “lingua franca” of the web.

JavaScript is a core technology that powers the Internet. Primarily, it’s the language that adds interactivity to web pages.

Although JavaScript was initially implemented only on the client-side in web browsers, it’s now possible to use the language in other types of host infrastructure, such as server-side in databases and offline applications like PDF programs.

Therefore, because of its extensive usage, learning JavaScript can make you go one step ahead of the hackers.

You’ll understand the concepts of how websites and other applications work and the best designs to employ to ward off malicious users.

For example, cross-site scripting is a JavaScript-based attack that involves an attacker implanting malicious code in a web application.

If you are experienced in using the JavaScript programming language, you can prevent such types of attacks from occurring.

4. PHP

PHP is a server-side programming language for developing websites. Because most websites are created using PHP, learning the language will enable you to know how to fend off intruders.

For example, DDoS (Denial-of-service) attacks usually attempt to make web applications unavailable to intended users.

With PHP programming knowledge, coupled with skills in other technologies like JavaScript, you can implement robust solutions to secure web applications.

5. SQL

SQL (Structured Query Language) is mostly used in managing data stored in databases.

Because of the current explosion of data storage systems, SQL is widely used for maintaining and retrieving data.

Similarly, hackers are increasingly orchestrating the language for damaging or exfiltrating the stored data.

For example, SQL injection attacks involve exploiting SQL vulnerabilities to steal or modify data kept in databases.

Therefore, having a good understanding of the SQL language is critical in your cyber security career.

The difference between DV and OV certificates

We know that the SSL-certificates can be divided into three types: DV, OV and EV. In this article, we will focus on the first two types of certificates, DV and OV. We will explain how they differ and when you should choose DV over OV.

DV-certificates (Domain Validation). This is the most basic level of SSL validation. The Certification Authority (CA) only ensure that you are the owner of a specific domain using the information contained in the WHOIS. Naturally, this type of certificate enables secure data encryption on your site, but it does not verify that you are the owner of a legitimate business. It is legitimate, and, most importantly, it is a very quick solution to protect your site using HTTPS. Customers seeing the padlock in your browser will have more trust in your site than before, because the padlock is a recognised sign of legitimacy.

Example of a DV certificate:

A DV certificate is fine where security is not a concern: however, attackers can also use DV-certificates on phishing sites. Unsuspecting users see the trusted pad lock and enter their personal data on the site which can then fall into the hands of fraudsters. The fact that the data channel is secured does not necessarily mean that the data will go to the right people. A user needs to be sure that the site belongs to a legitimate company if they are to make a purchase or input important information. 

For this reason, if security is a necessity for your site, we recommend an OV-certificate.

OV-certificates (Organisation Validation) are required for companies and organisations where users must enter sensitive information (credit card numbers, contact information, etc.).In particular, they are useful for e-commerce sites or online sales. An OV-certificate authenticates the owner of the site and requires legitimate business information for that company. The validation process for these certificates is longer and more detailed. The Certification Authority not only verifies the fact that you own the domain, but also the fact that you are the owner of the company. The company must be in a business registry database and in a trusted online directory (for example, dnb.com). Fraudsters cannot get an OV certificate because their organisation cannot be validated. The main advantage of getting an OV-certificate is that your company will be listed on the certificate.

Example of an OV-certificate:

  • You need to protect sensitive user data
  • You want to display your company name on a certificate (provides more trust amongst users)
  • You are planning to expand the business and grow it to a new level
  • You want people to know that the site is a legitimate organisation, and not a phishing site

You should think about switching from a DV-certificate to an OV-certificate, if:

If you want to switch from a DV-certificate to an OV-certificate, be sure to contact our experts at LeaderTelecom. Our knowledge, experience and streamlined process for dealing with the CAs will make issuing an OV-certificate easy and convenient.