Thursday, May 8, 2014

Styling Web- CSS

Cascading Style Sheets popularly known as CSS are very popular for providing a look to a web page or sometimes applications. These are generally used in combination with HTML and XHTML. How is the elements in the site going to look is decided with the CSS. 


CSS provides the beauty to a web page. Like how should be the background color of a page should be, what font style should be used and many small small things used for beautification is used with done using a CSS.

Lets study a example for better understand of CSS
I have created a block in div tag in HTML
i.e.

<div class="sample-class" id="sample">
This is a sample block
</div>

Now I want to style this block according to my requirement.

So I will define the CSS class (or may be ID) with the properties of its appearance.

<style>
.sample-class{
width:400px; //defines the width of the above block(sample-class) as 400px
height:300px; //defines the height of the above block(sample-class) as 300px
background-color:#111; //Define the background color of the block as shade of grey #111111(near to black)
color:#fff; //defines the color of the text as white (#ffffff)
}
</style>

Test this fiddle and make modification in it to learn the power of CSS http://jsfiddle.net/BfvC8/

I would highly recommend to visit this site, if people are interested in learning CSS tricks: http://css-tricks.com

For people who are interested in learning CSS from scratch: http://www.w3schools.com/css/DEFAULT.asp

Beta Testing

Two very important phases of the testing are alpha testing and beta testing. But when it comes to real environment Beta testing is one that helps companies, corporates or individuals releasing their applications. 

Whenever a product is developed, it's quality is assured internally by the testing teams. But this is not enough to make the release. We never know what people expect from the application and what all bugs in the system exist or may be some feedback they can come produce (as per user prospective).  It is always a great idea to get the product tested by the actual group of users who are going to use it because it is ultimately made for their convenience. 

There is nothing special that the users does but access the product as normal user does. Some might not be even aware of what actually beta in the site or product means. Whenever a user gives feedback about the feedback is noted down and the team makes the improvement to produce in the final release. In this was beta testing helps corporates to produce their best in software according to end user requirements.

So every time before launching the real product a beta version is launched to make is completely tested by end user and also this version has beta written on it.


As this image suggests, before the actual version of android is made available to users, its beta version is made available to a group of users so that it may be tested well and all the issues are fixed.

Image Credits: http://theflud.tumblr.com/post/6471987342/finally-flud-for-android-beta-testers-wanted

Thursday, April 17, 2014

Usability Testing- A irreplaceable practice

As we all know testing means to examine the application and find out the loopholes in the product as per the requirement. Usability testing is a type of testing in which the product or the software is tested by the experts. This  practice is unavoidable and irreplaceable because it gives the direct review of the real users how they are going to use the system.

In this testing cycle, a team of experts take on the system where they do the user interaction of the system. During this procedure a list of bugs is maintained such that it can be worked upon later. In this way the human made product is tested such that it meets the requirement of user is a user friendly manner. It is mostly conducted with the web applications, mobile apps, softwares, documents, devices etc. It basically measures the ease of use of a software application.

For example, If there is a webpage with a button placed on right side and it is a very important button. Than in testing results it may be concluded to place the button on center rather then on right because the center part of the screen gains more focus of the user. Also, lets say there is a registration form on the page and the submit button only handles action when mouse button is clicked over it, but this should't be the only case for the user. The submit button should also capture the click from the keyboard and not just from mouse. The pro user feels more comfortable when the flow gets connected such he does not have to change his input interfaces.

The goals of  usability testing

The usability testing technique comes under the technique of black box testing technique. And it aims at discovering the error as per users prospective and suggesting the improvement.  It mainly focuses on the areas of accuracy,  performance, recall and emotional response.
These terms can be broadly elaborates as follows:
Accuracy: how many mistakes the user has made? were those mistakes able to be recovered with right information?. How fetal were those errors were to the user?
Performance: How many steps and how much time did it take to complete the basis task?
Recall: Is the user able to recall things after a time of much use?
Emotional response: How comfortable was the user with this system? Did he like it? Will he be recommending this system or application to others?


As stated in the above image strip, the system asked the user to press any key but since we can make out the the system required n for no and y for yes. But since the system was not able to instruct the user well he pressed any other key ('A' here in this case), the system suffered some other results.

Wednesday, April 16, 2014

Techical Blogs - A Tale of technical enthusiast

The world today is driven by technology. Things are going automated thus reducing human labor. The knowledge in the technical arena is growing in exponential. This knowledge needs to be spread and one of most common source of spreading is and promoting are the technical blogs.

Technical Blogs are the blogs which are related to technology like machines, programmings, Software, Applications, Technical Languages, Open source community or anything that requires some technique to solve some of the world's tougher problems. Like if I talk about simple windows or any particular operating system installed on computer that can handle so many tasks and provides a interface between the hardware and other application level software. Its been such a discovery that it changed the course of machines i.e. how machine can perform a particular task as trained by human, is achieved through this operating system. Sometimes simpler ideas involves the biggest of problems solved at its abstract level.

Talking about Email, see how inconvenient it used to be when people just had only mode of communication was USPS i.e. United States Postal Service or The Royal Postal Service of London to send a message from USA to London and vice versa. Now today with simple convenience of email. Just type the mail id on the email client type the message you want to send and bingo message is delivered in even less than a second.
The life is faster so as the mode of communication also, with text messaging service or social media application like facebook, whatsapp  etc, People are connected to each other in the quickest of possible ways and making life moving with quite a high pace. Sharing has been a problem in recent times and even it is right now but technology today has been able to solve these big issues to a great extent. we are habitual of these services and this awe-striking technology, if even for a day we are stolen away from it we start feeling so depressed for unfulfilled. We are surrounded by technology and its a fact that currently each and every person is technology driven.

The blogs on the internet has taken a very effective participation on enriching the knowledge among individuals about technology. Not only it benefits the public reading the blog but also gives challenge to the person writing it to be well prepared before presenting it in front of the world. Oh, Common the world is going to read it, technology attracts everyone not necessary if he is belonging to technical background or not (by this I am talking about engineers, scientist and mathematicians). Technical blogs makes a persons mind open to think out of the box as well and give a collective summary of the knowledge that he owns. So you see in a way these blogs become a social media of idea sharing and imparting knowledge of what you have.

Saturday, March 15, 2014

QR Code

Quick Response Code Popularly known as QR Code is a two dimensional bar encoding scheme. It can encode a greater amount of Information in it involving various encoding modes (numerics, alphabetics, Kanji, Byte or Binary). It was first designed by Japanese automotive industry. 

A bar code is a machine readable optical label that contains the specific information about the item to which it is attached or associated. A QR code is the 2D extended version of the same that stores much more data and can also be read very fast as compared. It has applications in various domains like: product tracking, time tracking, document management, information transfer in a encoded manner, item identification etc.

The components present in the QR Code scheme is its white background and Square grids on its edges with information stored in the form of patterns.These color schemes were decided originally as black and white only but now it can be customized to any color combinations like blue grids over white background. Data can be extracted from the combination of both horizontal and vertical components of the QR code

Today QR code has become popular with numerous of applications with for instance if a user wants to go to a web site he can just scan the QR Code of that company using his mobile camera (obviously using his QR Code readability application) and he will be redirected to that site with an effort required in typing it. Users can create email, text message, store information, send information using QR Code. QR code today has become a very popular method of getting limited but required amount of information in a quick way.

So here is my QR Code to my linkedin profile like, try it and you will get to practically know its usability.


Tuesday, March 11, 2014

Cyber Security

What?

Cyber security often termed as Information Technology security too, primarily means protecting computer, programs or applications, networks and protecting information breach from unauthorized access, modification in information or destruction.

Importance?


Not only Private Organizations but Government, medical hospitals, research institutes, financial institutions, military intelligence also store a great deal of sensitive information on their computers and networks. With the growing amount of threat in the form of cyber attacks, this ultra sensitive information is needed to be protected for national security.

During a Senate hearing in March 2013, the nation's top intelligence officials warned that cyber attacks and digital spying are the top threat to national security, eclipsing terrorism. Source: http://www.trcsolutions.com/NewsRoom/Articles/Documents/Understanding-Cyber-Security-Federal-Grant-Writing.pdf

Terminology


Access:  
Whenever a user is authenticated, he is provided with the access of the system where he is allowed to change, read or take information based on the rights provided to him.

Blacklist
It's a list of entries may be (IP Address, resources, etc) that are blocked from access.

Bot:
It can be a software program that can automatically perform a sequence of steps. This can be of either protective or destructive nature.

Cloud Computing
It's latest of the models present today to provide the resources to the user based in the request made, thus avoiding wastage of resources.

Cryptography
It is the art making system secure via means of keys and other encryption techniques. A system information can be made secured, confidential and authenticated before access.

Some others are: Enterprise Risk Management, Cyber Space, Data Breach, Digital Forensics, Intrusion Detection, Key, Malware, Passive Attack, Penetration Testing, Phishing, Root, Software Assurance, Virus and Whitelist etc.



Tuesday, March 4, 2014

Open Source Software

Open Source Software is available with their source code available for free. Anyone with the knowledge of development can make changes in its source code and may produce modified version. These open source software in today's era have started taking over most of the present software (Closed source software) , which are available at some price.



Linux is a very famous open source Operating System.

Linux:

Linux is a very powerful and the famous operating system available today. It has many other flavors for satisfying various needs. To name some: Ubuntu, Mint OS, Kubuntu, Zorin OS, Fedora, Backtrack etc.

Artificial Intelligence Open Source Community

I would like to provide some examples over AI (Artificial Intelligence) Open Source Software in various categories.

  • General
    • OpenCog: A project that aims to build an artificial general intelligence (AGI) framework. OpenCog Prime is a specific set of interacting components designed to give rise to human-equivalent artificial general intelligence.
  • Computer Vision
    • AForge.NET is a Computer Vision, Artificial Intelligence and Robotics library for the .NET Framework.
    • OpenCV is a Computer Vision Library in C++.
  • Machine Learning
    • R Programming Language is an open source language for Data mining, statistical computing and graphics.
  • Robotics
    • ROS is an Open Source Software framework used for the Development in Robotics.