Tuesday, 11 July 2017

Planning of Goods and Services Tax-2017


By,
Chaitanya

                 



Since last few months the GST Bill is a topic of discussion. Mainly due to its power to revolutionize the entire tax system and also its ability to make life a lot simpler for taxpayers. But what exactly does this Bill talk about and what are its features? 

On 29 March, 2017 India came a little closer to this sales tax regime. The Lok Sabha agreed to pass four important GST Bills for goods and services. The GST bill has the implementation of this wide-ranging tax development by the 1st of July, 2017. GST is accordingly doing changes to entire landscape of tax payment and charges in the country. 

The four GST Bills that were passed are Central Goods and Services Tax Bill or CGST Bill, Compensation GST Bill, Integrated GST Bill and Union Territory GST Bill. 

What? 

The plan behind the implementation of the GST Bill is to merge taxes that we pay on goods and services into one single entity. Goods and services are originally every product that is used by individuals and with the current tax system. Citizens are paying not just one type of tax for a product but many type of taxes for just one product or service. The main reason of this bill is to streamline these multiple taxes into one single system. 

Central Excise Duty, Special Additional Duty of Customs, Additional Duties of Excise and Customs, Service Tax and other surcharges would all be replaced by Central Taxes GST. Similarly VAT Entry Tax, Purchase Tax, Entertainment Tax, taxes on betting, lotteries, state surcharges would be replaced by State Taxes GST. 

Why? 

According to Arun Jaitley, the Finance Minister of India, GST will have a significant impact in curbing excessive inflation. Services and products such as beauty, electronics attract different types of taxes depending on the state that the consumer is staying in, but the implementation of this bill will remove ambiguity. Second reason of this GST Bill is to remove the possibility of excessive taxation on individuals. 

As of now, the State and the Centre calculate and levy taxes based not on the original cost of the service or product but on the layers of tax that are already being levied on the same service or product. This will have an adverse effect on the GDP or Gross Domestic Product of the nation. Through this bill, tax evasion will also be checked and business operations will become simpler. Essential products and daily needs such as food grains and agricultural products are not to be taxed so as to keep an eye on inflation. 

GST Bill 2017 - Changes and Updates 

However, unlike how most would have expected, the current four bills that have been passed do not put forth a single uniform rate across all categories. Instead a multi-tier tax slab has been put forth with four different tax rates i.e., 5%, 12%, 18% and 28%. The main purpose behind this tax system is that luxury goods cannot be taxed at the same rate as daily necessities. Additionally, there would also be goods that are tax-exempted and zero-rated which implies that there are six categories of products and services under the bill. An additional cess on demerit goods such as aerated drinks, luxury cars and tobacco products would be levied. There will not be any tax on food products and petroleum products as of now. There has been no information as of yet regarding alcohol under GST. 

The CGST Bill will allow the Centre to establish and collect tax on intrastate supply for products and services. Collection of tax on supply that is inter-state will be taken care of by the Integrated Goods and Services Tax Bill 2017. Compensation to states due to loss of revenue that may be incurred as a result of GST implementation will be taken care of by the Compensation GST Bill while the Union Territory Goods and Services Tax will allow imposition and collection of tax on supply of products and services that are intrastate by Union Territories. Finance Minister Arun Jaitley has also said that additional tax will not be imposed in order to provide compensation to states and compensation will be paid to them within the existing framework. 

Impact on the general public 

According to this Bill, services will not be taxed over 18% and 5% tax will be levied on mass consumer products such as packaged salts and spices although food grains and other agricultural products are not going to be taxed. For most other products and services, the nearest tax slab will be applicable. Items generally used by the common man such as toothpaste, oil, soap and others will be taxed between 12% to 18% as opposed to the current rate which is over 20%. 

Other products such as washing machines, refrigerators, air conditioners will be taxed at 28% as against the current rate of 30%-31%, thus making them cheaper. Luxury products such as luxury cars, aerated drinks and tobacco products would also attract a tax slab of 28%. 

GST Bill would not be very helpful for individuals working in offices who receive subsidized products, services or eatables as more will have to be paid due to these items being placed under the tax net. This also includes membership at fitness clubs, taxi services or even health insurance. Small firms would also be hit as if a supplier of the company is not registered, then the purchaser will have bear the brunt of the GST on such a sale. 

The government also plans to set up an authority in order to see if there is any reduction in the rate of tax to the consumer by companies after GST has been passed. 

There are a number of pros and cons to this bill and a number of decisions yet to be made. However, it is suffice to say that the GST Bill would serve to simplify the somewhat complicated tax brackets that are currently in use in the country.

Wednesday, 5 July 2017

Web Real-Time Communication


by Anjali Pawar,


WEBRTC



WebRTC stands for web real-time communication this is a free and modern web application, this application is a collection of communications protocols and application programming interfaces that is use for real-time communication over (p-to-p) peer-to-peer connections via simple APIs.

The WebRTC components have been optimized to best serve this purpose. This applications use for video conferencing, file transfer one to another, chat, or desktop sharing without using any internal or external plugins.

WebRTC is being standardized by the World Wide Web Consortium (W3C) and the Internet Engineering Task Force (IETF). OpenWebRTC provides another free implementation based on the multimedia framework GStreamer. WebRTC utilizes Real-time Transport Protocol for transfer of audio and video.


WebRTC is supported to some browser like Google chrome, Opera, Firefox, Microsoft edge, Android, chrome OS, Firefox OS, Blackberry.also there are some video stroming software support to WebRTC functionality like Flussonic Media Server and Wowza Streaming Engine.


WebRTC Components
Following are 4 main components in WebRTC

· GetUserMedia: It helps or allows a web browser to access the camera and microphone helping to capture media such as video and audio.

· RTCPeerConnection: This function helps in connecting audio and video calls.

· RTCDataChannel: This function helps browser for sharing the screen components..


The WebRTC API also includes a function:

· getStats: This function allows the web application to fetch a set of information about WebRTC sessions. This informative data are being explained in a separate W3C document.


The MediaStream API was developed for easier access to media streams from local cameras and microphones. The getUserMedia() method is the primary way to fetch local input devices.


The API has a few key features −
· A real-time media streaming is represented by a stream object in the form of video or audio

· It provides a high security level through user rights asking the user before a web application can start fetching a stream

· The input devices are chosen and handled by the MediaStream API (for example, when there are two cameras or microphones connected to the device)

Each MediaStream object includes different MediaStreamTrack objects. They provide video and audio from different input devices.

Each MediaStreamTrack object may contain many channels (right and left audio channels). These are the smallest parts defined by the MediaStream API.


There are two ways to output MediaStream objects. First, we can represent output into a video or audio element. Secondly, we can render output to the RTCPeerConnection object, which then shown to a remote peer.

Monday, 3 July 2017

How to Design a Website Header




by Shital Kadukar


                  

How to Design a Website Header

A website header is the area where is one of the most valuable areas of your website. It runs across the top of the page and appears in every page of your website, except on sales or landing pages and templates that have it removed.

The main reason of your website header is to best part your brand and make your website instantly recognizable to those who are already simple with you. For many businesses, the header is the perfect place to efficiently and effectively convey exactly what your site is about and what your business does.

Website Header Design Considerations
Branding a Person:
If branding a product as the famous or valuable for the brand, the header should focus on making and the connection between the visitor and the person right away. The fastest way to achieve this feeling of contentedness, to accelerate the relationship building process, and to build recognition is to use a happy and smiling photo of the person in the header. Even if a visitor has never met you, simply seeing your face repeatedly will, over time, make them feel like they already know you.
Branding a Business:
If branding a business, understand the the header of your website isn’t going to make or break your online market. In fact, in many cases the best strategy is to minimize the header to bring the content higher up on the page, or to not use a website header at all. Because let’s be honest here, your website logo isn’t what is going to persuade someone to hire you, buy from you, or learn from you.

· When you designing a website header that is branding a business, consider keeping it simple and only including your logo and tagline to keep the header area nice and small.

· If you adding imagery to the header design be careful not to overdo it and consider sticking with one main hero image, and be sure it is relevant and communicates what the site is about.
Branding a Thing:

If branding a thing, event, product, website, program, or service, consider creating a logo for the core offering. If it is offered by a brand, mention that the offer is “brought to you by…” or “presented by…” to add instant credibility. Adding a short statement of use can also help the users and visitors figure out if they are in the right place faster.

· When designing a website header that is branding a thing or product, consider including the logo of the item, a short description or tagline explaining what it is, and if needed a photo of the item.

· If designing a website header for a program site or event site, be sure that the imagery used relate the energy of the event or the program.

Not All Websites Have A Header
A website header takes up valuable real estate at the top of the browser window that isn’t always necessary. For some businesses, there is no need to use a traditional website header, and instead just use the logo and bring the content up higher on the page.

· When designing your website, consider whether or not you really need a header — you may be surprised to discover that you don’t!

· Is your logo or your header are the part of your sales funnel? Is it critical in guiding visitors to take action on your site? If the answer is no, you may not need a header.

· Consider what will happen to your header on mobile devices. Will it disappear anyway or shrink down so small no one can see it anyway? Or will parts of the header start dropping off as the screen gets smaller and smaller until only your logo shows?

Here are some website header design tips:
1. Keep it simple. Don’t try to create too much things in the header — while it is valuable real estate, the more you things into it, the less valuable it becomes.

2. Keep text to a minimum. Your header is primarily for branding and brand recognition, and it should be primarily visual. Keep text in your hear to a minimum. You don’t need to cover your domain name, and your name, product, and your title, and a tagline, and a mission statement or a marketing message etc.

3. Don’t put an opt-in in your header. Adding an opt-in box to your website header was all the rage when it was new back in 2007/2008. But nodes that it’s pass through the web and opt-ins are plastered everywhere, the strategy losing its effectiveness and it can make you appear desperate and amateur if not done correctly . A website opt-in box does not belong on every page of your website — like your services, products, programs, and other conversion focused pages.

4. Hire a professional designer. Certain we believe on you should hire a professional web designer for your entire site, but if you are a do-it-yourselfer or don’t have the budget, at minimum, invest in a experience graphic designer (GD) to design your website header or banner image for you. You only have a couple second to make a first impression, so make it count.

Saturday, 1 July 2017

Laravel - Security


by Shakuntala Naroda


Laravel - Security

                      

Security is important feature while designing web applications. It assures the users of the website that their data is secured. Laravel provides various mechanisms to secure website. Some of the features are listed below –

1. Passwords − Laravel provides a class called “Hash” class which provides secure Bcrypt hashing. The password can be hashed in the following way.

2.make() function
will take a value as argument and will return the hashed value. The hashed value can be checked using the check() function in the following way.

The above function will return Boolean value. It will return true if password matched or false otherwise.
Laravel - Security The other main security features in Laravel is authenticating user and perform some action. Laravel has made this task easier.

4.CSRF Protection/Cross-site request forgery (XSS) − Cross-site scripting (XSS) attacks happen when attackers are able to place client-side JavaScript code in a page viewed by other users. To avoid this kind of attack, you should never trust any user-submitted data or escape any dangerous characters.Laravel automatically generates a CSRF "token" for each active user session managed by the application. Anytime you define a HTML form in your application, you should include a hidden CSRF token field in the form so that the CSRF protection middleware can validate the request.

5.Avoiding SQL injection −
SQL injection vulnerability exists when an application inserts arbitrary and unfiltered user input in an SQL query. By default, Laravel will protect you against this type of attack since both the query builder and Eloquent use PHP Data Objects class behind the scenes. Consider for instance a form field used to supply an e-mail address which might be used for searching a user table.

6.Cookies Secure by default - Laravel makes it very easy to create, read, and expire cookies with its Cookie class. In Laravel all cookies are automatically signed and encrypted. Laravel will automatically discard them. This also means that you will not be able to read them from the client side using JavaScript.

7.Forcing HTTPS when exchanging sensitive data −
HTTPS prevents attackers on the same network to intercept private information such as session variables, and log in as the victim.



Conclusion: Of course, there are plenty of other things you should do to further secure your Laravel application, such as ensuring browser-based error reporting is disabled . However Laravel really does ensure a much more secure application by eliminating these three very common attack vectors.

Wednesday, 28 June 2017

BOOTSTRAP 3 BASICS



by Karishma,






Bootstrap is a front-end framework that builds responsive websites. With a mobile-first approach at its core, its grid system allows designers to create sites for small screens, then scale designs up from there.

It uses a combination of HTML5 mark-up, compiled and minified CSS styling, fonts, and JavaScript. Bootstrap CSS is customizable, and even supports Less and Sass pre-compiled CSS, in addition to plain CSS files.

Other highlights:

1. What you can do with Bootstrap: create transition effects, image galleries, image carousels, alert messages, tool tips, dashboards, sticky footers, buttons, progress bars, popovers, pagination, drop-down menus, cover pages, and the Scroll Spy plug-in, which automatically updates a nav bar for the user, depending on where they are on the page.

2. A variety of templates: Bootstrap design templates include features like typography, forms, buttons, tables, different navigation styles, modals, and more.

3. Convenient layout classes: These consist of Large (desktops), Medium (smaller desktops or laptops), Small (tablets), and Extra Small (mobile phones), which include containers, rows, and up to 12 columns that can be combined to make larger columns. Bootstrap allows you to start out with stacked layouts (for mobile devices) that migrate to horizontal, for desktop versions. 

4. The convenience of Grunt: Grunt is a JavaScript task runner that’s all about automation. It manages repetitive tasks like compiling, “magnification,” and unit testing, so your team doesn’t have to. 

5. Browser compatibility: It’s compatible with Chrome, Firefox, Internet Explorer 8 and up, Safari, and Opera. Note: Bootstrap will degrade some of its features by default to work finely on older browsers. 

6. The Bootstrap Markup API: Bootstrap’s all-around best API that lets you use every JavaScript plugin without writing a single line of JS code. 

7. Open source: Bootstrap is open-source. Download Bootstrap from GitHub and link it right into a site’s HTML file. 

8. CSS pre-processors: Bootstrap lets you implement both the Sass and Less CSS pre-compilers. 

9. Easy JavaScript extensions: JavaScript plugins can be downloaded in just one file. To use Bootstrap with JavaScript add-ons, just reference the jQuery library in the HTML. It’s also consist custom jQuery plugins that can be used individually, or compiled and minified. 

10.Compatible with Bower: Bootstrap can be installed with Bower, a powerful package manager that helps you manage all the parts of your website like libraries, frameworks, utilities, and more.

Tuesday, 27 June 2017

Working with JQuery and CDN


by Rahul Maske,

Introduction
jQuery is not a language, but it is a well written JavaScript code. As quoted on official jQuery website, "it is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development".




                   




What is jQuery?
jQuery is not a language, but it is a well written JavaScript code. As quoted on official jQuery website, "it is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development."

In order to work with jQuery, you should be aware of the basics of JavaScript, HTML and CSS.

It was released in January 2006 at BarCamp NYC by John Resig.

Licensing
It is free, open source software Dual-licensed under the MIT License and the GNU General Public License. Microsoft has integrated jQuery officially into its IDE Visual Studio 2010 and jQuery intellisense is available in Visual Studio 2010 now.

Why jQuery?
jQuery is very compact and well written JavaScript code that increases the productivity of the developer by enabling them to achieve critical UI functionality by writing very small amount of code.

· It helps to improve the performance of the application

· It helps to develop most browser compatible web page

· It helps to implement UI related critical functionality without writing hundreds of lines of codes

· It is fast

· It is extensible – jQuery can be extended to implement customized behavior

Other advantages of jQuery are:
· No need to learn fresh new syntaxes to use jQuery, knowing simple JavaScript syntax is enough

· Simple and cleaner code, no need to write several lines of codes to achieve complex functionality
  Where to Download jQuery from?

 jQuery JavaScript file can be downloaded from jQuery Official website.

How to Use jQuery?
jQuery usually comes as a single JavaScript file containing everything comes out of the box with jQuery. It can be included within a web page using the following mark-up:

To Load Local jQuery File

<script type="text/javascript" src="jQuery-1.4.1-min.js"></script>

Ideally, this markup is kept in under <head></head> tag of your web page, however you are free to keep anywhere you want.
Loading jQuery from CDN
What is CDN?

CDN Stands for Content Distribution Network or also called Content Delivery Network is a group of computers placed at various points connected with network containing copies of data files to maximize bandwidth in accessing the data. In CDN, a client accesses a copy of data nearer to the client location rather than all clients accessing from the one particular server. This helps to achieve better performance of data retrieval by client.

There are two leading CDNs available that host jQuery files.

A jQuery file can be loaded from Google CDN. You will need to keep the following tag in your page.

<script type="text/javascript" language="Javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
Why to Load jQuery File from CDN?

You may ask that if we can load the jQuery file from our own server, why load it from the CDNs. The answer is logical and very simple. The browser behavior is that whenever it loads any webpage, it keeps related files (e.g., JavaScript file, CSS file and Images) used for that page into its cache (also called history). When next time the user browses any web page, browser loads only those files that are new or modified and is not available in the browser cache or history. In this way, browser improves its performance and loads the page.

The possibility is that if more and more websites are using CDNs, the user might have already browsed some other web pages that are using CDNs jQuery file and that file may have into browser cache; so when user browses your page and you are also using CDNs file, the older cached version of jQuery file will be used. In this way, your page will load faster as browser will not have to load the jQuery file for your page again.

The benefits are as follows:

1. Faster page load as jQuery file need not be downloaded

2. Saves your bandwidth as jQuery file is not loaded from your server

3. Scalable - generally CDNs place these files on the servers located at different geographical          locations of the world so that they load faster so irrespective of from where your user is browsing        your page, your application runs well.

4. How to Load Local jQuery File in Case CDN is Not Available?

5. Sometimes, it may happen that the CDN you have used to load the jQuery file is not available (it    rarely happens, however anything is possible, isn’t it?); in that case you should load your local    jQuery file that is available on your server so that all jQuery related functionality still works on your  page.

6. Write the following lines of code:

<!-- START - jQuery Reference -->

<script type="text/javascript" language="Javascript"



src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.1.min.js"></script>

<script type='text/javascript'>//<![CDATA[

if (typeof jQuery == 'undefined') {

document.write(unescape("%3Cscript

src='/Script/jquery-1.4.1.min.js' type='text/javascript' %3E%3C/script%3E"));

}//]]>

</script>

<!-- END - jQuery Reference -->



Replace bolded path with your own jQuery file path on the server. In the above code, the first line tries to load the jQuery file from CDN, if browser could load the file successfully, "jQuery" variable will not be undefined and next script will not run otherwise next script will run that will write the script tag to load the jQuery file from your server.

Friday, 23 June 2017

Coding Standards you must follow...

By Parikshit,





Cleanliness is a term that every programmer should learn and obey when creating code. When you create clean code it will help you troubleshoot any issues you may have with your code in the future. Here are five standards you should follow while writing the code.

1. Line Breaks:
This should be something that seems obvious for most designers but it should still be mentioned. When you put everything on one line, it becomes harder to read, and if you have to change any of the code in the future it takes longer. In CSS, it is nice to have a new line break after every attribute, this allows the designer and future designers to understand quickly where the attribute ends. Designers should get in the habit of pressing the Enter key for a page break after every semi-colon in their code. Having line breaks in your code also makes the code look more professional.

2. Tab Indention's / Single Indention's:
This is a debate that developers have all the time, should you tab indent or use a single space indention? Whatever you choose to use, be consistent with it. Don’t use tab indention for one attribute, then a single indention on the next. Like line breaks, being consistent with your indention's makes your code easier to read, troubleshoot, and look professional.

3. Clean Comments:
Comments play important role in coding. They can save a lot of time and stress when trying to find out what the original developer was trying to do. If the comments are not written cleanly, then comments can become useless. Comments should be as descriptive as possible and should be short and to the point. When writing comments, make them sound natural as if you are explaining the code to another developer. If you using one line comments your entire code, then switch to multi-line comments for no apparent reason, it can throw off the person reading the comments.

4. Consistent and Descriptive Classes and IDs:
In programming, one of the first things you are taught are to be descriptive when naming a variable. A class or ID with a descriptive name can assist in helping understand what the developer is trying to do. A class named odd isn’t very descriptive. Does odd mean an odd number, or something odd is happening that should not be happening. Whereas odd_row will let you know that the row is odd, and if you have an even_row class, then it is a little safer to assume that the classes affect something that alternates between even and odd numbers. Being consistent with variable names helps your code be clean also. If you had classes that started with a capital letter, then in the HTML tags you call them with a lowercase letter it can become confusing. CSS and HTML are not case sensitive, but it helps if you remember to keep an eye on upper and lower case characters. Perfection is in the details, and making for sure you are consistent with variable names is just one more detail to remember.

5. Nesting:
Nesting is the idea of putting similar code together so that it can be read easier. In CSS, you may want to nest attributes based on their class and ids. It is a lot easier to understand what a designer is trying to do when the designer puts all the attributes for a class called clean_code together. It also makes it easier to change one attribute that affects that class then searching through all the lines of code. When you use nesting with indention's and line breaks, this can make a big difference in how easy your code is to read.