The 3 Main Principles of Object Oriented Programming – How to Program With Java


Object Oriented Programming (or OOP) is actually classified by three main principles.

1) Encapsulation

2) Inheritance

3) Polymorphism

These appear to be frightening terms but are actually fairly easy principles to grasp. In order to figure out how to program with java, you’ll need to understand these principles. So let’s consider our first main concept of OOP, encapsulation. Encapsulation just means we want to limit the access that some other pieces of code have to this particular object. So, to illustrate, if you have a Person object, and this Person object has a first and last name as attributes. In the event another chunk of code attempts to modify your Person object’s first name to be say “Frank3”, you could take note of what the first name is trying to be set to, and remove any digits so that we are simply left with “Frank”. Without encapsulation, we will not have the ability to prevent “silly programmers” from modifying the values of our variables to something which wouldn’t seem sensible, or worse, break the application. Seem sensible?

The second concept of OOP, and a essential principle if you wish to learn how to program with Java, is Inheritance. This specific concept refers to a super class (or parent class) and a sub-class (or child class) and the simple fact that a child class acquires each of the attributes of its parent. You can think of it in terms of a real world circumstance, like a real parent and child. A child will probably inherit certain traits from his or her parents, like say, eye colour or hair colour. Allow us to imagine yet another example in terms of programming, say we have super class “Vehicle” and sub-classes “Car” and “Motorcycle”. A “Vehicle” possesses tires, therefore through inheritance so would a “Car” and a “Motorcycle”, however a “Car” has doors, and a “Motorcycle” does not. So it wouldn’t be accurate to state that a “Vehicle” has doors, as that declaration would be inaccurate. So you can see how we could determine all the aspects that are similar regarding a “Car” and a “Motorcycle” and thus identify them inside of the “Vehicle” super class.

The 3rd concept of OOP is Polymorphism. This specific concept appears to be one of the most frightening, but I’m able to explain it in simple terms. Polymorphism means that an object (i.e. Animal) can take on several forms while your program is operating. Let’s imagine you have designed an Animal class and defined the method “Speak”. You then asked three of your buddies to develop kinds of animals and have them implement the “Speak” method. You won’t know what sort of animals your friends create, or how their Animals will speak, unless you actually hear those animals speak. This is very comparable to how Java addresses this issue. It’s called dynamic method binding, which simply means, Java won’t understand how the actual Animal speaks until runtime. So maybe your friends have created a Dog, Cat and Snake. Here are three varieties of Animals, and they each one speaks distinctly. Whenever Java asks the Dog to speak, it says “woof”. Anytime Java asks the Cat to speak, it says “meow”. Whenever Java requests the snake to speak, it hisses. There’s the beauty of polymorphism, all we did was to define an Animal interface with a Speak method, and we can make a bunch of kinds of animals which speak in their own specialized way.


Source by Trevor J Page

7 Striking Features of Meteorjs


When Node.js arrived in the market, it was quickly adopted by a vast community of individual developers and large-scale companies for being a viable development technology. It is because of the fact that it allowed server-side implementation of JavaScript. Node.js gave a big boost to the development of mobile and web applications.

Earlier developers had to continuously switch contexts between JavaScript and a server language like PHP. It caused a lot of hassle since similar functions had different names in JavaScript and PHP. Node.js put an end to this by offering a platform to use JavaScript everywhere. Since then, a lot of Node.js frameworks like Sails.js, Geddy.js, Total.js and others were developed and released in the market. Though these frameworks are very useful, they lack some modern features as well as learning resources.

Hence, Meteor.js framework was born which fulfilled much of the requirements of modern developers. Meero.js not only provides advanced features but also has good documentation and learning resources.

At present, Meteor.js is a robust and full-stack JavaScript platform for developing real-time web and mobile applications. It is built on top of Node.js and is written in JavaScript. MEAN.js and are also quite powerful but they are not better than Meteor.js and we will outline some reasons about why it is so. So let us take a look at 7 striking features of Meteor.js.

1) Full-Stack Solution:

MEAN stack is just an instance of using a combination of technologies (MongoDB, Angular.js, Express.js and Node.js) and it cannot be called a framework. When using MEAN stack, developers are required to perform synchronization between Node.js and MongoDB as well as between Express.js and Angular.js.

On the other hand, Meteor offers a full-stack solution for developing and deploying web applications. Meteor comes bundled with several built-in features, such as reactive templates, automatic CSS and JS minification on the production server and hot code reload. Its cloud platform, Galaxy, is quite powerful for deploying, scaling and monitoring client applications. It also offers useful client-side technologies, including templates, helpers and events.

2) Development Ecosystem:

Meteor.js is more than a JavaScript development framework. It is an open-source Isomorphic Development Ecosystem (IDevE). Meteor.js allows building real-time web applications from scratch. It contains all the necessary front-end and back-end components (such as frameworks, libraries, configuration tools, databases and more) that aid developers through the entire app development lifecycle, right from setup and development to deployment.

3) Isomorphic JavaScript Code:

Meteor allows using the same code on the front-end and the back-end as well as for mobile and web applications. It prevents developers from requiring to install and configure different libraries, module managers, APIs, drivers and more.

Moreover, with Meteor, developers can leverage the power of JavaScript while reducing code length and complexity. This saves a lot of production time of developers as they do not need to perform context switching between server language and JavaScript.

4) Front-end Solution:

Meteor offers Blaze.js, a front-end development framework. Though, it is not an advanced framework, it offers some good features. But, Meteor also integrates with popular modern front-end frameworks like Backbone.js in order to yield better results.

Meteor offers isomorphic APIs that communicate between front-end and back-end. This allows developers to handle client-server management and server-session management with ease. Data communication between client and server happens automatically without having to write any boilerplate code.

5) Database Integration:

One of the disadvantages of Meteor.js is that it supports only MongoDB as of now. So, you cannot use Meteor if you need to include NoSQL database support for your applications. But, the Meteor ecosystem offers MongoDB database as well as a front-end representation of MongoDB called Minimongo, which is written entirely in JavaScript. Meteor has a Mongo API which seamlessly integrates MongoDB on the back-end and Minimongo on the front-end. This result in faster page reloads and page updates thus mitigating latency.

6) Live Reload:

Another prominent feature of Meteor.js is its integrated live-browser reloading. Whenever there are any development changes to make on the front-end, it automatically reloads the live web page. Live reloading also allows refreshing only the required DOM elements on the web page without making an entire page to reload in spite of any dependent changes to data on the back-end or front-end.

7) Custom Package Manager:

One can use NPM modules (98,000+ modules) with Meteor but it has also got its own custom Package Manager which features the necessary NPM functionalities and some additional functionalities. Meteor’s official repository of Meteor packages named as atmosphere.js features more than 2,600 smart packages.

Meteor has a built-in package to handle pre-processing and custom user authentication for Email, Facebook, Twitter, Google and more. Moreover, it also comes with requisite packages for popular frameworks like Backbone.js, Bootstrap and jQuery.


With so many exciting features in its kitty, Meteor.js is soon to become an ideal JavaScript development platform. Moreover, it is backed and funded by a vast community of developers who are committed to improve the Meteor functionality and features for optimizing its performance. Along with it you can also find different sites online which provides you platform to learn Meteor.js.

Though its server-side runs on top of Node.js, it uses a synchronous style coding. It uses Fibers JavaScript library to avoid asynchronous call back style which is central to Node.js. This results in a simple-to-read code structure and a linear execution model which is quite suitable for the server code in a Meteor application.

Mobile development with Meteorjs offers support for apps through Cordova phonegap integration. You can easily develop and deploy Android and iOS apps.

To sum up, the Meteor ecosystem has an isomorphic API (application programming interface) which links together all the components within the Meteor ecosystem as well as integrates with third-party packages, tools and managers. Moreover, you have a choice to deploy Meteor apps using Meteor or any other service provider. You can also deploy your Meteor apps to your own server as well.


Source by Paul GM

Why PHP Web Development Is Beneficial


PHP is amongst the most popular dynamic web development languages. The versatile and capable server scripting language is now what features on most sites which require username to login, download, upload, use shopping cart or even vote in polls. The open source has rich features and functionality, making it very beneficial to any website. You can find a PHP developer to make your website one of the most useful and dynamic ever. Most websites that are successful use PHP including top social media platforms like Facebook. But what really makes PHP web development all that advantageous?

Cost effectiveness – Being an open source, its components are free to use and also distribute. It is developed and also updates by a large community of developers from across the world, thus making it free of any cost for those who wish to develop their websites using it.

Ease of use – When compared with other web languages, PHP is easily readable and understandable. The syntax is logical and its command functions are described hence making creation and optimization easy to achieve. PHP code is embedded in HTML, making it familiar to programmers who have an easy time coding it.

Support flexibility – PHP web development can be run on all operating systems, including Mac OS, UNIX, Linux and also Windows. It also supports major servers such as personal webserver, Netscape, Microsoft IIS and Apache among others. Also important to note is that PHP also supports major databases like dBase, MySQL, FrontBase, SQLite among others. It is the kind of independence and flexibility that gives developers and programmers and easy time handling different web development projects to meet client needs.

Reliable performance – PHP is scalable in creating applications and when writing codes making it very reliable even for those who wish to serve a number of web pages. It can be used in designing any kind of website even those that experience huge traffic. It remains to be the framework used by major websites like Wikipedia and Facebook.

Efficient developments – Because PHP utilizes its own memory space, loading time and server workload are greatly reduced. It ends up offering faster processing speed and web applications that are developed faster such as CRM, Ecommerce and CMS. PHP had indeed proven versatility and capability by developing and actually maintaining highly visited popular websites.

Security – The other thing that makes PHP web development beneficial is the high security levels it offers to websites. PHP uses multiple layers of security, thus preventing malicious attacks and threats that have become very common today. Web site owners feel so much protected when using this language than when using any other because of the safety aspect.

Supportive community – The large community of developers who ensure that PHP remains updated offer reliable support to all users. You can get help when start using the programming or obtain tips from the pros to find your way around it. There are tutorials, online help and documentations that you can use to find or learn whatever you wish to.


Source by Sean A

How to Fix an Out of Memory Error


Experiencing an “out of memory” error usually means that whatever program was being run was not able to load or was not able to complete the task requested by the user. In order to get back on track, here are some suggestions for fixing an “out of memory” error without having to take the computer to a professional.

Overview of Computer Memory Types

A computer makes use of several different kinds of memory during normal use. The two most common are physical memory, such as what is provided by the hard disk, and random-access memory, known as RAM. The latter is what allows a computer to pull up different and unrelated pieces of information almost instantly, while the former type of memory takes time to move physical parts in order to call up information.

These two types of memory work together often. When the user opens a program, the time it takes to load is due to the time required for the part of the disk to move to the appropriate locations and retrieve the program. Once the program is opened, even if it is minimized, it is using up RAM, and it is, thereby, quickly available to the user.

A third type of memory is virtual memory, which is a way (to put it simply) of extending RAM and allowing larger programs to run without actually taking up all of the RAM.

Common Causes of Memory Errors

An “out of memory” error refers to the amount of RAM available for whatever task the computer is being asked to perform. One cause of an “out of memory” error is having too many programs open at once.

Each program takes up an amount of RAM, and once the amount available on the computer is used up, the machine has no more virtual memory available for various tasks, like saving a document. The solution in this case would be to close a few programs and try to limit the number of programs open at one time.

Sometimes a computer is set to have too much RAM, which does not leave enough virtual memory available for certain actions. Occasionally simply opening Windows in this situation may be impossible.

Microsoft recommends fixing this issue by lowering the amount of RAM allowed on the machine to less than 512 megabytes. To do this, a registry key may have to be edited and the user will have to run the command msconfig. Search Microsoft’s Support center for detailed instructions on fixing this issue depending on the version of Windows being run.

Keeping the Registry Clear Boosts Memory

Another way to address an “out of memory” error is to look into using a registry cleaner on the system. A cluttered registry contains too many entries, and ones that may also have been corrupted or misplaced. Extra data takes up memory space and it takes the computer extra time wade through it all.


Source by John E. Blake

10 Reasons Why C is the Best Programming Language For Beginners


With the plethora of programming languages these days, and the massive programming information available in the Internet, it can be difficult for a beginner like you to know where to start. When it comes to programming language for beginners, C is an excellent choice. Not only will it educate you of programming fundamentals, this language is also powerful and is widely used in the industry today.

Here are the reasons why C is a great programming language to begin with:

1.    You can’t learn Java or C directly.

For you to learn and master C and Java languages, you should have a rock-solid concept of the elements of programming like classes, polymorphism, inheritance, and others. Come to think about it, how will you learn complicated concepts like these if you are not even familiar with the basic elements of computer programming? The language that starts from scratch is C and its foundational concepts are the basis of any other programming concepts we have these days.

2.    It is the basis of C , C#, and Java.

C and C# are programming languages based on C. Java also derives its syntax and programming concept from C. This is known as the world’s most dominant programming language and it is also derived from C language.

3.    Programs that need Object Oriented Programming (OOP) are written in C.

Java, C#, and C employ OOP. Despite being powerful, not all programs use it and those utilizing it are still written in C.

4.    C boasts unbeatable performance.

When it comes to speed of execution, C is still unmatched.

5.    Most parts of Linux, Windows, and Unix are written in C.

So if you want to program these OS, or if you wish to have your programs run in the said operating systems, better be familiar with C.

6.    Drivers of modern gadgets are written in C.

Why is this so? Well simply because C gives users access to the computer’s basic elements. It also provides you with direct access to your CPU’s memory by means of pointers. You can also use C to control bits and bytes.

7.    Mobile phones, PDAs, palmtops and other handheld devices as well as appliance are becoming more popular than ever.

You may not be aware of it, but your handheld devices and home appliances may contain CPU that requires programming and has software dubbed as embedded system programs.

8.    Most PC games employ C as their foundation.

No one will be interested in games if it takes too much time for commands to be done. C is used to make things fast and prompt.

9.    C is considered as mid-level language.

Programming languages are categorized into three – Low Level, Middle Level, and High Level. Aside from being user-oriented, high level languages also make development of programs fast enough. Machine oriented, low level languages execute programs faster. Middle level languages like C combines the best attributes of the high and low level languages.

10.     C is a block-structured language.

This means every code is written in separate block and is not connected with the code in the next block. With this, you can make programming easier and you can minimize the possibilities of unnecessary side effects.

With the above-mentioned reasons, do you still have doubts why C is the best computer programming language for beginners?


Source by Steven Winters

Fixing the Error – "ASN Bad Tag Value Met"


For some files in your system that are not digitally signed, an error message ASN1 bad tag value met would appear when you install any new software or any critical updates for Win XP.

To fix this error, you can follow the steps given below, after which you will be able to download correct critical updates for WinXP, etc and your problem will be solved!

1. Basic step: Click START->RUN


3.Click ADVANCED -> then inside the SEARCH tab

4.Click on Look for other files

5.Then Down check the check box (Include Subfolders). Click on browse button. Then under the Windows Folder -> Select SYSTEM32 ->CatRoot. Then click OK button. Then click again OK in the SEARCH tab. Then click START on File Signature Verification.

6.After scanning you will get a list of files that have not been digitally signed. Now without closing this window, create a Folder name TEMP into your desktop.


1. Go to start-> run and type C:WINDOWSSYSTEM32CATROOT

2. Now search the list of files that are not digitally signed by comparing the files that you got in the previous step 6

3. Now select those files from C:WINDOWSSYSTEM32CATROOT and cut and paste into the TEMP folder created into your desktop

4. THUS “ASN1 bad tag value met “error is fixed

5. Now delete the TEMP folder from desktop.

Thus now you again try to install any new software or any critical updates for XP, you can see the error being eliminated !!


Source by Tauseef M

Using AngularJS to Create Awesome Web Applications


Angular JS Makes Web Applications Work More Efficiently

AngularJS is good news for developers because it creates a more efficiently development workflow through logical and flexible methods. For example, it makes a developer divide up their application model view controller (MVC) into components, and then AngularJS manages the interaction of those components, removing the need to write code to make the components interact together. It also has a number of systems to make life easier when writing web applications, including data binding (so that when information changes on the system it is reflected in all of the application); it has built in support for AJAX queries.

AngularJS Extends the Functionality of a Web Page

AngularJS makes web pages into highly functional and adaptable web pages. These means that user experience can be greatly enhanced by the use of AngularJS and its scope for practical implementation in uses such as enterprise solutions is vast. Multiple users can log into a web page and access functions such as ordering, purchasing, e-commerce solutions, requesting information and also providing information.

Integration with Server Technology

All the application interaction happens within the web browser, making it ideal for use for interaction with server technologies. It also makes applications independent of the platform that they are used on. Creating AngularJS apps means that they can be utilised across any number of browsers including Safari, Internet Explorer, Chrome and Opera. They can also be accessed independent of the operating system or type of hardware used to run the software. This means that web applications written in AngularJS can be run on an iPad or a Google Android tablet, or on a Linux, Windows or OS X system. This makes access highly effective and also frees all the users to be in any given geographic location.

How to Implement AngularJS in Your Web Application

You will first need to set up your development environment to build AngularJS applications, by installing AngularJS using Git and also NodeJS. It is best to utilise a web server to make AngularJS requests, so you will need to configure your server accordingly. For more information on how to do this, look at tutorials on how to configure the JSON package to operate using https requests on remote servers. You will need to use Karma and Protractor to test that end to end requests are working, and then you will be able to know that your web application will be configured to behave correctly.

Beginning Your AngularJS Web Application

All AngularJS programs are started from seed projects, and bootstrapped, this ensures that the basic framework is enacted in order to create the app to work properly in the browser environment. Setting up the seed project is the first procedure after configuring the web development server and the development environment. From there you can utilise a number of different templates that will help you to speed up your development process and have your application running up and quickly.


Source by Lori V Woodward

The Cyberspace and Its Intricacies


I think I live in cyberspace, as everything from my geyser to the air conditioner, cell phone to the car, coffee maker to the food processor work on the computer technology. From getting up in the morning to going to bed in the night, I am so incredibly surrounded by the computers that I have almost forgot to realize that these are computers.

Decades ago, cyberspace was in its embryonic stage and was actually tough to understand as its meaning was confined to the network of computers connecting a few organizations virtually. But, the scenario today is utterly different as every string that connects us with another string is connected by computers and the internet. Be it a politician, businessman, a common man, bureaucrat or ethicist, everyone is so damn affected by issues related to the internet. The name given to such issues is cyber security issues.

Every habitat of this cyberspace confronts with different cyber security issues and the variety is so high that a single issue hardly gets so viral that everyone can understand it. There are copious issues, questions and answers that remain so poorly understood by the masses. Hence, we need to be more knowledgeable and involved in order to understand more and think harder about the new cyber threats that pop up almost every day in the cyberspace we inhabit.

I really worry, “if the cyber anxiety among the nations tightens on cybersecurity issues, privacy issues and hacking issues then there would be a devastating cyber war”. The possibility of cyber war is so high that the business of cyber security is expanding massively and so are the special army units with cyber defence techniques. Cyber threats have so badly taken over our minds that we are ready to compromise with our privacy.

If I can ever imagine about the cyber war, the only thing that strikes my mind is:

Cyberwar would not be limited to the armies fighting with each other at the border or in the air, in fact, it would be beyond that. The cyber potent country will hack the tools of other nations` which are used to establish the network and disable them, i.e. the message encoding machines that are used to convey the troop movement and other vital information during the war would be destroyed, the communication channel, the transportation and other crucial organizations will be wiped away.

In simpler words the victory will be the fate of a cyber potent country or there will be no victory because the whole space will come to a stand still.

What we actually need to understand?

The age of Technology moves much faster than the human age. Every other day a new technology takes birth leaving the earlier ones behind. For example, there was a time when Roadrunner was the super fast computer, but, within a few years it was out of league of supercomputers as new technology with new possibilities came up ans there were other supercomputers faster than Roadrunner. It was a week before when I started writing about Moto 360 and Asus Zen Watch, but, finally when I thought of publishing it I found that LG Smartwatch was in the market with enhanced features. In this case, it was a matter of a few days and I had to think of rewriting the review. This is how technology is moving at an unimaginable speed and will keep on moving.

No one can really predict the future or fate of the cyberspace. The theories and trends we believe today, can be amazingly different in the near future. For example, the clogged water evaporates with the heat, but, we never know where the each evaporated water molecule actually goes and which water molecule is going to evaporate next. The only part of the theory we know as of now is that it is the heat that causes evaporation. There can be much more to know about the same in future.

So, is the case with the facts and believes related to cyber security. We can never predict the upcoming threats and the sustainability of the security measures which are the best in today`s date. There are threats we know and there are threats we know that we do not know about and then there are threats that are yet unknown about cyber security.

Had such threats been known to us at the time of inception of the computer world, the human race would have restricted its exposure to it. Well! this would also have proved a fatal decision because there would have been something else that would have replaced computer world with its own boons and curses.

Hence, more important is building proper understanding and enacting thoughtful responses towards every new possibility cyberspace can offer us. In short the inhabitants of the cyber world have to be vigilant enough to manage and understand the risks that are complementary with its comforts and joys – this is exactly what we need to understand.


Source by Punit Insa

Portal 2 Speedup Tutorial – How to Get This Killer Game To Run At Its Best


Portal 2 may be rated as one of the best games to hit the shelves, but for many people it will just run too slow for it to be enjoyable. This problem is not only a huge issue because of the hardware specifications of your system, but it’s a problem which will be preventing your computer from actually being able to operate as smoothly as possible. Fortunately, there’s a simple way to make Portal 2 run faster on a Windows PC, which is to fix a number of potential problems which will lead it to lag, or slow down.

The way to fix Portal 2 slow speed issues is to first ensure that the game is installed correctly, and that your computer has all the necessary files & settings to help it process your commands as quickly as possible. One of the main reasons why games such as Portal 2 will run slower is because Windows will not be able to process the options it requires for it to run, leading it to become unusable and extremely slow. The bottom line, therefore, is that you first need to be able to repair any of the possible problems that Windows has, as well as ensuring that the game it self is working correctly.

Step #1 – Turn Down The Graphics

The graphics of Portal 2 are extremely advanced, leading many systems to be unable to handle them correctly. This problem is only really an issue for the likes of Laptops, or really old PCs; and as a rule of thumb, it’s recommended that you tune down the graphics of the game to allow your computer to process it correctly again. To do this, we recommend you follow these steps:

  • Click onto Portal 2
  • Click “Options”
  • Click “Graphics Options”
  • Turn the graphics options to their lowest settings

Step #2 – Use A Registry Cleaner

Another great way to speed up this game is to use a registry cleaner. These are programs which have been created by software developers to scan through the “registry” of your computer, and fix any of the problems which it will have inside. We’ve found that one of the biggest problems for the registry is that it’s continually running slower and with a lot of problems, leading your computer to become highly unreliable and ineffective as a result. The registry is basically a big database which Windows computers use to store their files & options, and as a result, it’s vital that you’re able to clean out any of the potential problems that it may have in order to speed up Portal 2.

We recommend using a program called Frontline Registry Cleaner 2.0 to make Portal 2 run smoother, as this tool is able to scan through your system and fix the likes of Junk Files as well as a number of other errors & problems. To use it, just download the program, install it and then let it fix your PC.


Source by Haley Wilson

How to Fix Microsoft Setup Bootstrapper Has Stopped Working


When you want to reset your computer modifications to the factory default or remove trail versions but face the problem of “Bootstrapper has stopped working” or “Error 40” then here are the possible solutions to fix it.

If “Data Execution Prevention” (DEP) is turned on for all program and services with Windows Vista or Windows 2003, that might be the cause of the problem. If you check your DEP settings to make it turned on for the selected programs and services, that might help you to resolve this problem.

In order to change the settings for DEP, you have to follow the following steps. Go to the control panel and click on the system icon. In the left pane click Advance system settings. You will get a popup window, prompting to verify that you want to continue, click on yes. Go to ‘settings’.

Check if the box is selected for “turn on DEP for all programs and services except those I select”, then you need to change the setting to “turn on DEP for essential Windows programs and services”. If that does not work then go to the same properties again and add “autorun.exe” to the exception list. To add “autorun.exe” to the list, you have to click add button at the bottom of the screen. You will find an Open dialogue where you have to navigate to the folder that has “autosun.exe” and select the program.

Once you have either selected the different box for DEP or added “autorun.exe” to the list click OK button. You will have to restart Windows to let the changes takes effect. These steps should allow the installation to run the boot system software. After doing these steps and installation is complete, don’t forget to remove the “autorun.exe” from the list, added to the list above, as it creates a security hazard.


Source by Celly Kayser