What to Do With a Failing Hard Drive

Posted by Tushar Bedekar

 When a hard drive eventually fails, for the vast majority of end users it can come as a real shock. Panic begins to set in, then you realise you did not back up the vast majority of the files on your hard drive.

Trying to fix it is the natural cause of action, especially if you have important data on it that you would like to access. But the chances are, unless you have some understanding of exactly what causes it or what you’re doing, there’s very little that you can do to fix it.

If you’re fortunate and most of the drive has remained to intact, then the problem could be caused by the printed circuit board (PCB). A damaged PCB is usually caused by a power surge which inadvertently overheats the drive. In situations like this, you can take the drive to a computer technician who can repair it by replacing the PCB with a working one.

However, there are those other circumstances when things can be a little more difficult to gauge what is what.

Determining What Causes the Crash

When you experience a hard drive crash, the first thing you’ll want to do is determine whether or not the crash was logical or physical. This can be quite tricky; though there are some tools that you can use to monitor your drive, letting you know when there may be potential problems with it. If your computer crashes and refuses to boot up, such circumstances can be caused by both physical and logical failure.

If your computer refuses to boot up, and you hear clicking, grinding or whirring sounds, that is a good sign that the cause of the failure is physical. At which point, you’d want to power the system down and consider physical repair solutions.

That said, as I touched on earlier, there are many tools that you can use to predict when your hard drive is going to fail, these tools do that by reading the S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) data that is recorded by the operating system. Unfortunately S.M.A.R.T is known for being quite unreliable when it comes to predicting hard drive failure as the drive failure will usually occur before the S.M.A.R.T warning kicks into action. If you have a hard drive that is working, but you’d like to keep tabs on its health, then there are a number of tools that you can use to do that. So be on the lookout for them.

Logical Hard Drive Failure

Logical failure typically occurs when the hard drive is fine, health wise, but you are unable to access your operating system. There are many different factors that can cause this. A corrupt system drive, a malicious file or human error, all are capable of causing a drive to crash. When you experience a failure on this scale, cloning or imaging the computer will usually not work. Utilising professional data recovery software is your best option, although there is a Check Disk tool that you may want to try (assuming you can boot into Windows).

Accessing this tool is as simple as doing the following:

1. First, boot into your computer with full administrative rights.

2. Then press Windows Key + R, type into the Run Command box and click on OK.

3. When My Computer loads up, right click on your Drive and select Properties.

4. This will load up Hard Drive Properties, from here, click on the Tools Tab, and then click on the Check Now button under Error-checking.

5. When the Check Hard Drive applet appears, tick the box next to automatically fix file system errors and scan for and attempt recovery of bad sectors, then click on Start.

One thing you must keep in mind is that, just because you are unable to access the data on a crashed drive, it doesn’t mean the data no longer exists. The option that you choose to take will be determined by how important the data on the drive is to you.

Physical Hard Drive Failure

If the crash of your hard drive was due to a malfunction, there is still a good chance that the data on it is still intact and accessible. The best giveaway for a physical fault is clicking and grinding noises whenever you turn the computer on, never mistaken these sounds for a malfunctioning cooling fan. In most cases the sounds will be relatively loud, however in some other cases you may be required to open up your PC case to hear the sounds.

If you are still able to boot into the operating system while the hard drive is making those noises, it’s possible that you could clone or copy the hard drive, but it will come at a risk. Do not try booting up the computer then using an external hard drive to copy the files from your active faulty drive, as this will stress the drive out even more. Your best solution is to remove the drive altogether and put it in a working computer as a secondary drive and use Data Recovery software to clone or copy its contents.

If you are able to retrieve the data on it, then you’re done. Next thing you’ll need to do is purchase a new hard drive and install your operating system and applications on it. This process can take some time, but is not too difficult. Alternatively, if you were able to clone your drive, you could simply copy the contents of the old drive to your new one. That way you won’t need to reinstall anything, just install the drive as your primary and you’re good to go.


Its best that you do not rely on software or those tell-tell signs to let you know when, if ever, your drive will fail, as it is most likely that it will fail unexpectedly, without any signs or warnings. You’re best option is always to be one step ahead of these incidences, by backing the data up on your computer constantly.



Uchenna Ani-Okoye is a former IT Manager who now runs his own computer support website where he writes extensively on failing hard drives and other computer related issues and topics.

Read More

Types of Cloud Computing

Posted by Tushar Bedekar
Basically cloud computing is divided into 3 categories.

  • SaaS (software as a service)
  • PaaS (Platform as a service)
  • IaaS (Infrastructure as a service)

Software as a service - SaaS

SaaS s a software that is centrally hosted and managed for the end customer. It is usually based on a multi tenant architecture - a single version of the application is used for all the customers. It can be scaled to a multiple instances to ensure the best performance at all the locations. SaaS Software is typically licensed through a monthly or annual subscription.
Example :- Microsoft Office 365 is a prototypical model of SaaS. Other example are                                    Dropbox,WordPress and Amazon Kindle.

Platform as a Service - PaaS

With PaaS, you deploy your application into an application-hosting environment provided by the cloud service vendor. The developer provides the application, and the PaaS vendor provides the ability to deploy and run it. This frees developers from infrastructure management, allowing them to focus strictly on development.

Infrastructure as a Service - IaaS  

An IaaS cloud vendor runs and manages server farms running virtualization software, enabling you to create VMs (Virtual Machines) that run on the vendor’s infrastructure. Depending on the vendor, you can create a VM running Windows or Linux and install anything you want on it.
Read More

What Is SAP

Posted by Tushar Bedekar


SAP stands for Systems Applications and Products in Data ProcessingSAP SE is a German multinational software corporation that makes enterprise software to manage business operations and customer relations. Today Large number of companies are using SAP software to manage their day to day business activities.

SAP modules
  • SAP was founded around 1972 by five IBM engineers Hopp, Wellenreuther, Hector , Tschira and Plattner.
  • There are different products of SAP.

  1. SAP R/3 and R/3 enterprise.
  2. SAP business suite.
  3. SAP ERP (Enterprise Resourse Planning).
  4. SAP industry Solutions
  5. SAp xApps.
  6. SAP solution Manager.

  • There are different versions of SAP.

  1. SAP R/1.
  2. SAP R/2.
  3. SAP R/3.

  • Here R Stands for real time processing.
  • Basically the SAP is a 3 layered architecture.(Presentation - Application - Database) 
  • All these versions differ by the combination of these layers. 


It is one tier architecture in which three layers are installed in one system/server.


Here there are two system/server.The presentation and Application layer is combined to form one layer. and there is separate layer for database.

SAP R/3.

Here all the three layers are installed on 3 different server systems.

There are different Modules in SAP which are divided into two categories

  1. Functional Modules.
  2. Technical Modules.

Functional Modules of SAP.

  • FICO- Finance & Control.
  • PP- Production Planning.
  • MM- Material Management.
  • SD- Sales & Distribution.
  • HR- Human Resource.
  • CRM- Customer Relation management.

Technical Modules of SAP

  • ABAP- Advanced business application programming.
  • XI- Exchange Infrastructure.
  • Net Viewer
  • Basis
  • BIW - Business information warehousing.

In the next article You will learn about Introduction to SAP (ABAP) Advanced Business Application Programming 

Read More

What Is Object Oriented Programming Lanugages

Posted by Tushar Bedekar
There are basically two eras of the programming languages to which we have seen which are as follow:-

  • Structured (procedure) oriented programming language
  • Object oriented programming language
There are many structure oriented programming languages such as C, Cobol, Pascal, Assembly languages etc. where we make use of functions (procedures) and supposed to write the programme sequentially with the data and functions mashed up in the form of the sequential statements.
Here in the procedures oriented language the data is allowed to flow freely in the programme.A confusing statement. To understand it let's take an example we have a programme which consist of global variable declaration and being assessed by the two or more number of functions as given bellow

int a=10;

int add()
int b=5;

int sum()
int c=7;

int main()
return 0;

as here we are seeing that the different functions sum() and add() are modifying the value of the (global variable a).Also as the function sum() is being executed after add().So due to which the value of variable a gets changed before the execution of sum(). This actually the free flow of the data within the different functions.

This drawback is being removed by the object-oriented programming language which binds the data and functions together. This data and function bounded together was collectively known as object.

Read More

Top 5 C++ Manipulators Every Programmer Should Know

Posted by Utkarsh Jain 2 Comments
The main purpose of C++ manipulators is to format the output. These manipulators increase the enhance ability in the program.These manipulators allow the programmer to show data in different according to his wish. Some important manipulators used in C++ are as follows:

1: endl

2: setw

3: setprecision

4: showpoint

5: setfill

To use these manipulators in a program, iomanip.h shoud be included in the program. However one manipulator called endl can be used without adding that header file. And these manipulator functions are designed to be used in conjunction with the insertion(<<) and extraction(>>) operators. For example


'endl' Manipulator:

endl is probably the most used manipulator in C++. The word endl stands for end of line and it is used to move the cursor to the beginning of next line. It works similar to '\n' escape sequence and requires no parameter.





The above line first prints "Hello" and then endl manipulator displays a new line and then "World" is printed on the next line.

'setw' manipulator:

The setw manipulator is used to display the value of an expression in specified columns. The value of expression can be string or number. If the value of expression is less than specified columns then the additional columns are left blank from left side. The word setw stands for set width.



The n indicates the number of columns in which the value is to be displayed. This specified width is just applied to the value that is inserted after it.



'setprecision' manipulator:

The setprecision manipulator is used to set the number of digits to be displayed after the decimal point. It is applied to all subsequent floating point numbers written to that output stream. The value is rounded with the use of this manipulator. This manipulator has no impact on integer type variables.



The n indicates the number of digits to be displayed after the decimal point.


float n=2.12345;





'showpoint' manipulator:

In C++, the decimal part of a floating-point number is not displayed if it is zero by default. The showpoint manipulator is used to display the decimal part even if the decimal part is zero. When this manipulator is set then all the floating values being used in that stream displays the trailing zeros after decimal point. There is also a noshowpoint manipulator which tells the compiler not to show decimal part if it is zero. The precision setting can be modified using the setprecision manipulator.




float a = 30;



'setfill' manipulator:

The setfill manipulator is used to replace the leading or trailing blanks in the output by the specified character. It requires one parameter to specify the fill character. The parameter can be a character constant , character variable or an integer that represents the fill character in ASCII system. The manipulator must be used with fixed width output.



Here c indicates a character or its equivalent ASCII value.


cout<<setw(18)<<setfill('@')<<"Hello World"<<endl;

cout<<setw(18)<<setfill('+')<<"Hello World"<<endl;

cout<<setw(18)<<setfill('*')<<"Hello World"<<endl;

Author Bio

Kamal Choudhary is a tech geek who writes about c++ programming tutorials on C++ Beginner. He is a student of computer science in University of Gujrat, pakistan. He loves to write about computer programming. You can find his full bio here. Follow him on twitter @ikamalchoudhary
Read More

Windows Phone Development vs Android Development Tutorial for Beginners

Posted by Tushar Bedekar


As we all are familiar with the smartphones today covering the era of today's world.As basically there are three platforms :-

  • Windows Phone
  • Android Phone
  • IOS (Apple Phones)
Each of the platform are equally good in certain perspectives and in other some not.now a days there is big competition between them. so lets discuss about different points about windows and android phones. 

1.Development Tools:

Android: Android app development is done mostly in Java (in a few cases with C or C++),Declarative screen design in Android is represented in an XML file which gets injected into the corresponding activity code at run time

Windows Phone: Windows phone apps support C++, C#, Microsoft Visual Basic .NET, and JavaScript.Declarative screen design in Windows Phone is represented in Extensible Application Markup Language (XAML).. XAML is a declarative language, with each XML node representing a Windows Runtime object.

The first question that concerns every developer during his first steps is “how easy is it to start developping on a platform”. Assuming that you already are a windows user, things are quite easy. You have to download the SDK and the Visual Studio Express (a striped down version of the standard Visual Studio) and you are ready to start. Of course the same stands for Android too, you download eclipse, the eclipse plugin and the Android SDK and again, you are set to go. Both platforms have rich documentation but Android has an advantage to online communities like StackOverflow and mailing lists. The problems begins when you are a linux or a mac user like myself. Eclipse and the Android SDK run on all operating systems and versions, while Visual Studio runs only on Windows Vista and later. The solution of using a virtual machine is rather disappointing.

Windows Phone
Company/ Developer
Programmed in
Mostly Java (in a few cases with C or C++)
C#, VB.NET,Java Script
(C++ is not supported officially)
RunTime OS 
Windows Phone
Initial release
September 23, 2008
October 21, 2010
Supported platforms
ARM, MIPS, x86, I.MX
Default user interface
Graphical (Multi-touch)
Graphical (Metro UI)
Android SDK
Windows Phone SDK
Source model
Open source software
Android Developers Tools(ADT) plugin for eclipse
Visual Studio Templates and Blend for Visual Studio.
Development OS
Windows,Mac, and Linux FlavorsBest to work with Windows 
Language support
Multiple language support
Multiple language support

2.Layout Controls:

Layout Controls
Windows Phone 7Android Equivalent

3.Basic Controls:

Basic Controls
Windows Phone 8.1Android Equivalent

4.UI Development:

You have your tools set up, now you must start the development. Both platforms are using XML to construct the UI of an application. In fact the similarities are quite suspicious.

WindowsPhone: Windows Phone offers a great drag and drop tool and the UI creation is a straight-forward procedure.
Android: Things are a little bit more complicated on Android. There is a basic drag and drop tool, but it doesn’t do a lot of things (it can’t really), designing the UI for so many different types of Android screen sizes and shapes is -despite the tools and the good documentation- more complicated than having to support a limited and documented set of screens.

5.UI Guidelines:

Another important issue is the design guideline. 

WindowsPhone: Microsoft came with the Metro UI. I find it so attractive, and many of my friends who work on the design industry find it splendid, so I have to trust their taste.

Android: What concerns me most is that the design guidelines for Android are constantly changing (can you find anything similar between Android 1 and the Holo theme? I can’t!), you have to redesign your app often (this can be a good thing too) but I believe the Metro UI has come to stay and we won’t see any dramatic changes to the UI or the UX of the Windows Phone applications in the near future.

6.Which programming language is best?

Google made the decision to use Java as the programming language of Android to attract many Java developers. Microsoft did exactly the same, only they used C#. Cloning the good elements and coming to fix Java’s weaknesses, offering extra functionality, C# is a more modern programming language and this is a point for Windows Phone. Do not forget the power of the jars though, as the majority of Java’s extra libraries are very likely to work on Android and this is a big issue if you just think of the Apache Commons’ set of libraries. (I do not want to go deeper into programming language performance war since, let’s face it, testing execution speed of these languages on a 600mhz mobile device has little value). Memory consumption on the other side is a big thing, but Garbage Collectors on both languages do a very good job and it’s up to you to use the phone’s memory conservatively.


WindowsPhone: Speaking of emulators, Windows Phones have a big advantage here. Strangely enough (!), the Android emulator’s speed hasn’t improved over the years and is still tremendously slow. (Yes, years have passed since version 1). Windows Phone emulator works like a charm and starts at the speed of light compared to the Android emulator.

Android: Strangely enough (again) eclipse’s Android plugin and toolset is very buggy and lacks of many features. Also, many developers state that Visual Studio is a much more stable and mature IDE than eclipse, but I’m afraid I’m not in a position to confirm that :)

8.Development Cost:

And here comes another thing: cost. Not counting the cost of the operating system, since you have already paid for it

WindowsPhone: Windows Phone development has extra costs. if you want to publish an application or deploy your app on your device ,You have to pay for the full version of Visual Studio and you have to pay an annual fee (99$) which is now reduce to (19$) only due to summer offer .Good news are that if you are a student, some of these costs are withdrawn. 

Android: Android on the other hand, is significantly cheaper. You only need to pay 25$ once, and that is if you want to publish your apps on the Play store. Oh, I forgot, Android headsets are also cheaper, if you want to buy a real device!


WindowsPhone: Windows tablet does not run Windows Phone OS but it runs under windowsRT. windowsRT is a "light" version of Windows 8 that is dedicated for tablets. It does not run .exe files but only Windows store applications. But there is the Surface Pro which runs Windows 8 and .exe files. I should mention that 80% of Windows phone APIs are from windows8 APIs. So you can easily share your code between Windows Phone and Windows 8.

Note: Now WindowsPhone store 8.1 Development environment support more in common—a much larger API set, a similar app model and life cycle, a shared toolset, a common UI framework—Windows Phone and Windows Store app developer platforms truly have become one, single development platform.

Android: Android runs on smartphones, also on tablets. From the 3.0 version, Google added a bunch of APIs for larger screens so that apps will be more funny on tablet the mains components added were ActionBar and Fragments.

10.App Store Submission Process:

WindowsPhone: In order to publish windowsphone applications,There are two kinds of accounts: a developer account which will cost you 49$ and an Enterprise account which will cost you 99$(Present 19$ only due to summer special and it may be forever).The validation process will be very strict and take you about maximum 5 days and if your app is rejected, you will get an error report about what you have to change in your app.it don't have malwares in the Windows Phone Marketplace. It's a trusted store!
For more info you may read How to submit windows phone 8 app to windows phone marketplace

Android: In order to publish Android applications, you need to have a Google Play account,that will cost you 25 USD,you have to pass through a validation process which takes only 15 to 30 minutes.Google play has a lot of malwares, that's because of the very fast validation process and the huge number of Android developers.

Note: This post is does not pointing to which platform is winner,but as a developer it is best practices to know about both platform's environment  before going to develop apps.You can still discuss with me in the "Comments " section below.

Read More

Why Java is Platform Independent and C, C++ not !!

Posted by Tushar Bedekar 13 Comments
Most of the people have confusion regarding this Question. So I have decided to write something on this topic. Now we will go step by step whats this

What a Platform means to us

The operating system installed on the computer is known to be a platform. Each and every operating system have different structure and format. These operating systems (platforms) differs on the basis of the following factors

  • Like the way they execute the files. 
  • On the basis of system kernels
  • The way the optimize the system for best performance and make use of processor
  • On the basis of different file extensions, etc
For example, Windows operating systems executes .exe files. 
                       Linux here everything is a file. And also here there is no specific extension. Any file                            can be executable here
                       similarly, we have Unix and Mac Os  that have their own file extensions.

Platform Independent Vs Platform Dependent

Platform Independent means the program that we have developed can run / execute (show results) on any platform. That is on any operating system.

Platform Dependent means the program / software that we have developed can run /execute (show results) on a specific platform. That is on a specific operating system.

Why Java is Platform Independent and C, C++ not !!

The programming language like C and C++  do not generate any intermediate code like bytecode in java. The C and C++ generate directly Native Code which is specific to one platform or operating system. This Native code is known as object code (Machine Code ). 

As we also know that Object Code (Machine Code) generation requires some Operating system files to be included which makes it platform dependent.
Whereas in Java we have intermediate code by the name of Byte Code (not a machine code). This can is understandable by JVM (Java virtual Machine) which converts it to the object code (machine Code) . That  why in order to run Java code we need JVM installed on the device which makes java Platform independent. 

Read More
back to top