What is a Flowchart?

A flowchart is a diagram that represents a process or algorithm. The steps are represented by a series of boxes or other specialized symbols, then connected with arrows. A flowchart is a formalized graphic representation of a logic sequence, work or manufacturing process, organization chart, or similar formalized structure. The purpose of a flow chart is to provide people with a common language or reference point when dealing with a project or process.
Flowcharts use simple geometric symbols and arrows to define relationships. In programming, for instance, the beginning or end of a program is represented by an oval.  A process is represented by a rectangle, a decision is represented by a diamond and an I/O process is represented by a parallelogram. The Internet is represented by a cloud. 
What is a Flowchart - Flowchart Tutorial
Flow charting allows you to break down any process into bite-sized sections and display them in shorthand form. That way, your audience can easily see the logical flow and relationships between steps.
Flowcharts are an important tool across various industries and careers, since they’re a clear, concise method of displaying information. Plus, flowcharts can convey data in a visually pleasing way, so your work looks professional and communicates its information effectively.
Flowcharts are ideal for communicating a step-by-step process to others. You may also want to create a flowchart if you’re confused about the process; the act of mapping out the steps in flow chart format can clarify your own understanding. When a process is particularly complex, flowcharts allow you to focus intently on each step or element, so you don’t get overwhelmed by the bigger picture.
Drawing a flow chart might be helpful when:
  • Defining, analyzing, or discussing a process (or a set of processes).
  • Drawing a step-by-step picture of the process for your own or others’ understanding.
  • Standardizing or finding areas for improvement in a process.

10 Best Programming Languages of 2015

1. Java
Java is considered as the perfect language for the developers and programmers to learn. Currently it is the top-most programming language and has grabbed the highest position with Android OS yet again, though it was a bit down a few years ago. Java can be utilized for mobile-based applications, enterprise level purpose, for creating desktop applications, and for establishing Android apps on tablets and smartphones.

2. PHP
The web developers should learn about PHP or Hypertext Preprocessor, a well-known programming language. With the help of PHP, you can enlarge a web app very quickly and effortlessly. PHP is the actual foundation of many strong content management systems, for example, WordPress. PHP is really a valuable programming language for the developers and programmers.

3. JavaScript
While you are expanding your site, JavaScript is extremely functional as this language can immensely assist you in generating communication for your website. You can utilize various in style frameworks in JavaScript for constructing superb user interface. When you’re into web development, it’s very important to known about JavaScript for making interactive web pages. JavaScript is applied for including animations on the web pages, loading fresh images, scripts or objects on web page, and craft hugely responsive user interfaces.

4. Python
For becoming skilled at all-in-one language, you should begin learning Python language that has the ability to expand web apps, data analysis, user interfaces, and many more, and frameworks are also available for these tasks. Python is utilized by bigger companies mostly that can evaluate vast data sets, thus this is a huge chance to learn it and be a Python programmer.

5. Objective-C
If you are the one who is interested on constructing apps for iOS, then you have to know about Objective-C language efficiently. The most preferred choice for all the web developers is Objective-C. When you have learnt Objective-C, you can begin applying XCode that is known to be the authorized software development tool from Apple. Thus you can quickly produce iOS app that can be noticeable in App Store.

6. Ruby
Another popular programming language is Ruby and Ruby on Rails. This can be learnt easily, and also very strong and clear-cut. If you’ve small time in hand and still want to craft any project, then you can surely utilize Ruby language. This programming language is applied massively for web programming, and hence turned out to be the ideal selection for the beginner companies.

7. Perl
Perl is also a well-accepted programming language that offers distinct tools for various obscure setbacks such as system programming. Though this programming language is a bit puzzling, but it is really a strong one that you can learn for this year, and renew your knowledge. Perl is mainly used for sites and web app expansion, desktop app development and system administration, and test automation that can be applied for testing databases, web apps, networking devices, and many more.

8. C, C++ and C#
You can increase your knowledge by learning about C this year that is unique programming language. Being the oldest, it should be learnt firstly when you start up, and it is mainly applied in forming different softwares.

C++ or C plus plus is a bit more progressive than C, and utilized immensely in forming hardware speeded games. It is an ideal selection for strong desktop software as well as apps for mobiles and desktop. Known to be the strongest language, C++ is applied in vital operating systems, such as Windows.

After learning these 2, you can go ahead in knowing about C# language. It won’t be difficult for you to get accustomed with C# after knowing C and C++. C# is actually the prime language for Microsoft applications and services. While executing with .Net and ASP technologies, you are required to be familiar with the C# accurately.

9. SQL
When you are executing on databases such as Microsoft SQL server, Oracle, MySQL, etc, you should be aware of SQL programming language or Standard Query Language. From this language, you can achieve the proficiency of acquiring the needed data from big and multifaceted databases.

10. Swift
Swift is reflected upon as the trendiest program language for expanding apps for Apple products. This language can be utilized by you for building up apps for iOS activated devices and Apple’s MAC in quick and simple method. When you are keen to expand a superb iOS application, then it is better for you to gain knowledge of Swift programming language.

Dual In-line Memory Module - DIMM

Dual In-line Memory Module, DIMM is a module containing a circuit board and one more random access memory chips.

DIMMs have a 168-pin connector and, since the advent of the Pentium Processor, a 64-bit path. Because of the new bit path, DIMMs can be installed one at a time, unlike SIMMs that would require installation in pairs.

SO-DIMM, which is short for Small Outline DIMM, is available in both a 72-pin and 144-pin configuration. SO-DIMMs are commonly utilized in laptop computers. Below is an example picture of a 4GB SODIMM memory stick from Crucial.

Advantages DIMMs have over SIMMs

DIMMs have separate contacts on each side of the board, which provides twice as much data as a single SIMM.
The command address and control signals are buffered on the DIMMs. With heavy memory requirements, this buffering reduces the loading effort of the memory.

Best laptops to buy in India

List of the best laptops in India for 2016 with a good blend of performance and features at every price point. According to http://www.digit.in Top 10 laptop include the best picks across budget laptops, mainstream laptops, ultrabooks, and business laptops. 

These are the best laptops to buy in India across various price segments.

Click here to check out the detials: Top 10 laptops

** Courtesy - digit.in

Power-Protection Systems

Backup Power

Power protection includes backup power-protection devices. These units can provide power in case of a complete blackout, thereby providing the time necessary for an orderly system shutdown. Two types are available: the SPS and the uninterruptible power supply (UPS). The UPS is a special device because it does much more than just provide backup power; it is also the best kind of line conditioner you can buy.

Standby Power Supplies

A standby power supply is known as an offline device: It functions only when normal power is disrupted. An SPS system uses a special circuit that can sense the AC line current. If the sensor detects a loss of power on the line, the system quickly switches over to a standby battery and power inverter. The power inverter converts the battery power to 120 V AC power, which is then supplied to the system.

For a stand-by (switching) type UPS to work, the hold-up time of the power supply has to be longer than the switching time of the UPS.
A truly outstanding SPS adds to the circuit a ferroresonant transformer, which is a large transformer with the capability to store a small amount of power and deliver it during the switch time. This device functions as a buffer on the power line, giving the SPS almost uninterruptible capability.


Perhaps the best overall solution to any power problem is to provide a power source that is conditioned and that can’t be interrupted—which is the definition of an uninterruptible power supply. UPSs are known as online systems because they continuously function and supply power to your computer systems. Because some companies advertise ferroresonant SPS devices as though they were UPS devices, many now use the term true UPS to describe a truly online system. A true UPS system is constructed in much the same way as an SPS system; however, because the computer is always operating from the battery, there is no switching circuit.

Extensible Markup Language (XML)

Extensible Markup Language (XML) is a markup language that defines a set of rules for encoding documents in a format which is both human-readable and machine-readable.
XML is a software- and hardware-independent tool for storing and transporting data.

XML plays an important role in many IT systems.

For this reason, it is important for all software developers to have a good understanding of XML.
Before you continue, you should also have a basic understanding of:
  • HTML
  • JavaScript

What is XML?

  • XML stands for EXtensible Markup Language
  • XML is a markup language much like HTML
  • XML was designed to store and transport data
  • XML was designed to be self-descriptive
  • XML is a W3C Recommendation

XML Does Not DO Anything

Maybe it is a little hard to understand, but XML does not DO anything.
This note is a note to Jack, from Jill, stored as XML:
  <body>Don't forget me this weekend!</body>
The note is quite self-descriptive. It has sender and receiver information. It also has a heading and a message body.
But still, this XML document does not DO anything. XML is just information wrapped in tags. Someone must write a piece of software to send, receive, store, or display it:


To: Jack
From: Jill


Don't forget me this weekend!

The Difference Between XML and HTML

XML and HTML were designed with different goals:
  • XML was designed to carry data - with focus on what data is
  • HTML was designed to display data - with focus on how data looks
  • XML tags are not predefined like HTML tags are

XML Does Not Use Predefined Tags

The XML language has no predefined tags.
The tags in the example above (like and ) are not defined in any XML standard. These tags are "invented" by the author of the XML document.
HTML works with predefined tags like p, h1, table, etc. 
With XML, the author must define both the tags and the document structure.

XML is Extensible

Most XML applications will work as expected even if new data is added (or removed).
Imagine an application designed to display the original version of note.xml ( ).

XML Simplifies Things

  • It simplifies data sharing
  • It simplifies data transport
  • It simplifies platform changes
  • It simplifies data availability
Many computer systems contain data in incompatible formats. Exchanging data between incompatible systems (or upgraded systems) is a time-consuming task for web developers. Large amounts of data must be converted, and incompatible data is often lost.
XML stores data in plain text format. This provides a software- and hardware-independent way of storing, transporting, and sharing data.
XML also makes it easier to expand or upgrade to new operating systems, new applications, or new browsers, without losing data.
With XML, data can be available to all kinds of "reading machines" like people, computers, voice machines, news feeds, etc.

XML is a W3C Recommendation
XML became a W3C Recommendation on February 10, 1998.

20 essential PC shortcuts keys

There are certain shortcuts I use all day, every day. They work whether I’m doing stuff with photos, music, documents, or spreadsheets.
  • Copy a selected item: Ctrl+C
  • Cut a selected item: Ctrl+X
  • Paste a selected item: Ctrl+V
  • Undo an action: Ctrl+Z
  • Redo that thing I just undid: Ctrl+Y
  • Select everything: Ctrl+A
  • Print: Ctrl+P
  • Switch between open windows
    Clear away everything and show the desktop
  • Windows logo key Picture of the Windows logo key+D
    Minimize the window
  • Windows logo key Picture of the Windows logo key+Down Arrow
    Maximize the window
  • Windows logo key Picture of the Windows logo key+Up Arrow
    Compare and contrast in a snap
  • Windows logo key Picture of the Windows logo key+Left Arrow or Right Arrow
    Multitask with multiple monitors
  • Windows logo key Picture of the Windows logo key+Shift+Right Arrow or Left Arrow
    Open Task Manager 
  • Ctrl+Shift+Esc
    Lock your PC or switch users
  • Windows logo key Picture of the Windows logo key+L
    This shortcut locks your PC and instantly displays the login screen. 
  • Choose a presentation display mode
    Windows logo key Picture of the Windows logo key+P
    Zoom in, zoom out
  • Windows logo key Picture of the Windows logo key+Plus Sign or Minus Sign
    Search for files and folders
  • Windows logo key Picture of the Windows logo key+F
    Open a new instance of a program
  • Windows logo key Picture of the Windows logo key+Shift+Click a taskbar icon
    And when you need it …get help
  • Windows logo key Picture of the Windows logo key+F1

Cloud Robotics Explained

Cloud robotics is a field of robotics that attempts to invoke cloud technologies such as cloud computing, cloud storage, and other Internet technologies centred around the benefits of converged infrastructure and shared services for robotics. When connected to the cloud, robots can benefit from the powerful computational, storage, and communications resources of modern data centre in the cloud, which can process and share information from various robots or agent (other machines, smart objects, humans, etc.). Humans can also delegate tasks to robots remotely through networks. Cloud computing technologies enable robot systems to be endowed with powerful capability whilst reducing costs through cloud technologies. Thus, it is possible to build lightweight, low cost, smarter robots have intelligent "brain" in the cloud. The "brain" consists of data centerknowledge base, task planners, deep learning, information processing, environment models, communication support etc
Cloud robotics is the use of remote computing resources to enable greater memory, computational power, collective learning and interconnectivity for robotics applications.
When computational or storage demands exceed the on-board capacity of a robot, they are offloaded to the cloud, where the massive resources of a datacenter can supplement their limited local resources. Cloud robotics also represent a significant advance for robot learning. Where it might take one robot 150 hours to learn a task using its own individual artificial intelligence (AI) resources,  the collaborative effort of 150 robots learning different parts of a task might complete the task in an hour.

With a Wi-Fi connection to cloud-based resources, a robot can access a vast library of known objects to  identify things in its environment. Object recognition helps a robot to better perform tasks like sorting, cleaning and using appliances. Relying on the cloud for resources also means that the robot itself can be simpler, eliminating costly compute power and the associated cooling and electrical power draw. Due to this offloading, cloud connected robots have lower battery requirements and are overall lighter and less expensive. Cloud robotics are typically used for tasks that don't require real-time execution, preserving local resources for applications with demanding time constraints.
The connection to the cloud eliminates the need for a robot to learn a task any other connected robot has: It can download the necessary information instead of having to feel out or observe how to do a task. This interconnectedness can help robots work together more smoothly too, coordinating their tasks automatically.
Google’s self-driving cars are one type of cloud-connected robot. The autonomous cars access data from Google Maps and images stored in the cloud to recognize their surroundings. They also gather information about road and traffic conditions and send that information back to the cloud.
Another example is Romo, an inexpensive ($150) cloud-connectable robot that moves on a treaded base housing a battery. An iPhone provides computational power and its camera, microphone and speakers. The cloud compute factor makes the robot better able to recognize its environment. Romos can be used to play games or can be used for telepresence, which allows a human operator to be virtually present in a remote location.

Backup and recovery

  1. In information technology, a backup, or the process of backing up, refers to the copying and archiving of computer data so it may be used to restore the original after a data loss event. 

  2. Backup is the activity of copying files or databases so that they will be preserved in case of equipment failure or other catastrophe. 

  3. Backup is usually a routine part of the operation of large businesses with mainframes as well as the administrators of smaller business computers. For personal computer users, backup is also necessary but often neglected. The retrieval of files you backed up is called restoring them. 

  4. Backup and recovery refers to the process of backing up data in case of a loss and setting up systems that allow that data recovery due to data loss. 

  5. Backing up data requires copying and archiving computer data, so that it is accessible in case of data deletion or corruption. Data from an earlier time may only be recovered if it has been backed up. Data backup is a form of disaster recovery and should be part of any disaster recovery plan. Data backup cannot always restore all of a system's data and settings. For example, computer clusters, active directory servers, or database servers may need additional forms of disaster recovery because a backup and recovery may not be able to reconstitute them fully. 

  6. Today, a great deal of data can be backed up when using cloud storage, which means archiving on a local system's hard drive or using external storage is not necessary. Mobile devices, in particular, can be set up using cloud technologies, allowing data to be recovered automatically.


A motherboard (sometimes alternatively known as the mainboard, system board, planar board or logic board, or colloquially, a mobo) is the main printed circuit board (PCB) found in computers and other expandable systems. It holds many of the crucial electronic components of the system, such as the central processing unit (CPU) and memory, and provides connectors for other peripherals. Unlike a backplane, a motherboard contains significant sub-systems such as the processor and other components. 
Motherboard specifically refers to a PCB with expansion capability and as the name suggests, this board is the "mother" of all components attached to it, which often include sound cards, video cards, network cards, hard drives, or other forms of persistent storage; TV tuner cards, cards providing extra USB or FireWire slots and a variety of other custom components (the term mainboard is applied to devices with a single board and no additional expansions or capability, such as controlling boards in televisions, washing machines and other embedded systems).

Basic Words - Program and Data

A "program" is a set of instructions for the computer. A program tells the computer how to do something. Some examples of programs are a game like Solitaire or Hearts, a "word processing" program for doing typing on, a "spreadsheet" program for doing calculations on, a genealogy program for recording and keeping track of your genealogy information, and a "paint" or "drawing" program for drawing pictures on.

"Data" is your information, your work. Some people think of data as "facts" (either written facts or numbers). This could be a letter you typed in, some addresses, some calculations, your tax information, a short story, genealogy information, a picture or photograph, etc. Data is what you put in the computer.

Everything put in the computer is either a program or data.

Data is distinct pieces of information, usually formatted in a special way. All software is divided into two general categories:data and programs. Programs are collections of instructions for manipulating data.
Data can exist in a variety of forms -- as numbers or text on pieces of paper, as bits and bytes stored in electronic memory, or as facts stored in a person's mind.

The program is your tool. The data is your work. You use the "program" to work on "your data."

Windows 8.1

Windows 8.1 is a version of the Windows NT operating system and an upgrade for Windows 8. First unveiled and released as a public beta in June 2013, it was released to manufacturing on August 27, 2013, and reached general availability on October 17, 2013, almost a year after the retail release of its predecessor. Windows 8.1 is available free of charge for retail copies of Windows 8 and Windows RT users via Windows Store. Unlike service packs on previous versions of Windows, users who obtained 8 outside of retail copies or pre-loaded installations (i.e., volume licensing) must obtain 8.1 through new installation media from their respective subscription or enterprise channel. Microsoft's support lifecycle policy treats Windows 8.1 similar to previous service packs of Windows: It is part of Windows 8's support lifecycle, and installing 8.1 is required to maintain access to support and Windows updates after January 12, 2016. However, unlike previous service packs, Windows 8.1 cannot be acquired via Windows Update and only accepts 8.1-specific product keys.
Released as part of a shift by Microsoft towards regular yearly major updates for its platforms and services, Windows 8.1 was primarily intended to address complaints of Windows 8 users and reviewers on launch. Visible enhancements include an improved Start screen, additional snap views, additional bundled apps, tighter OneDrive (formerly SkyDrive) integration,Internet Explorer 11, a Bing-powered unified search system, restoration of a visible Start button on the taskbar, and the ability to restore the previous behavior of opening the user's desktop on login instead of the Start screen. Windows 8.1 also added support for such emerging technologies as high resolution displays, 3D printing, Wi-Fi Direct, and Miracast streaming.
Windows 8.1 received relatively positive reception, with critics praising the expanded functionality available to apps in comparison to 8, its OneDrive integration, along with its user interface tweaks and the addition of expanded tutorials for operating the Windows 8 interface. Despite these improvements, 8.1 was still panned for not addressing all of the digressions of 8 (such as a poor level of integration between Metro-style apps and the desktop interface), and the potential privacy implications of 8.1's expanded use of online services.