Top 10 Best Practices used for Energy Efficiency

Thursday, 18 February, 2016

Top 10 Best Practices used for Energy Efficiency

Energy efficiency is the basic requirement to ensure optimum functionality of a Data Center. Certain practices to monitor energy consumption and avoiding energy wastage are the secrets of running a successful data center facility. The top ten have been discussed as follows.

  • Supplemental Load Reduction

The secondary load contributors in a data center are supplemental load resources. The supplemental load can be reduced by following methods like reducing the energy use of equipments and upgrading the building’s roofing and insulation.

  • Lighting

Maintain the lighting to the level required in the center. Upgrade the center’s system with energy efficient light sources which consume less power.

  • Industrial Refrigeration

The industrial refrigeration system if used in data centers can be beneficial as it won’t allow the systems to overheat. Along with ensuring data safety, this system reduces energy and operation costs.

  • Restructure the Air Distribution System

It has been found that oversized fans consume a least 10 percent more power. The center’s air distribution system should be equipped the right sized fans that consume lesser power.

  • Supply Air Control

The supply air control system requires additional supply air temperature sensors as the air conditioners don’t come equipped with these. This system thus regulates and monitors the temperature of the air being supplied. This implementation is much faster and efficient than other traditional systems. 

  • Variable Speed Fan Drives

Power consumption by a fan is high and is a function of a cube of the fan’s speed. Retrofitting any constant speed cooling fan to variable speeds or by replacing legacy units with new units with built in variable speed capability can reduce power consumption and increase efficiency.

  • Retro Commissioning

Commissioning ensures that computer systems are designed, installed and their functionalities and capabilities are tested in accordance to the data center’s operational needs. Retro commissioning is a similar process of system reviewing alignment and optimization but this process takes place at a later point of the center’s life cycle. It ensures recalibrating the systems to perform more efficiently, thus saving power.

  • Heating and Cooling Equipment Upgrades

Certain heating and cooling systems consume more power than required. It is always wise to choose the right kind of equipments which are not oversized, are energy efficient and do not consume more power than required.

  • Increase Chilled Water Temperature

One of the largest power consumers in a data center is a chilled water system. Increasing the temperature of the chilled water system by raising the air handler temperature set point can help to reduce energy consumption.

  • Pumping Systems

Pumping actions like replacing throttling valves with speed controls, reducing speed for fixed load, installing a parallel system for high variable loads and replacing motor or a pump with a more efficient model all come with energy savings from 10 to 60 percent.

IT Asset Management and Its Role

Monday, 15 February, 2016

IT Asset Management and role it plays

IT Asset Management and Its Role

The IT department forms a major division of an enterprise. IT Asset management plays a crucial strategic role in the profitable functioning of the IT department. Hardware and software form the main two components of this department. Managing hardware and software inventory, their purchases and redistribution is handled by this set of business practices. The two forms of IT Asset Management are below.

Hardware Asset Management

This section deals with managing the physical components of computer devices in the industry, starting from their purchase to disposal. This includes determining the life cycle of hardware components and their disposability, and hence, estimating the requirement of new devices. Industrial processes like approval of purchasing of new hardware, procuring process and life cycle management all comes under this section.

Software Asset Management

In a similar manner, procuring and discarding software like programming language versions, anti-virus versions and licenses are handled under this section. Software asset management is a more frequent process than the previous one, as software upgrades need to be met on a regular basis in the industry.

Role of IT Asset Management

  • Life cycle Management

Life cycle Management deals with determining the life cycle of hardware and software components and when the old ones should be disposed off and new components to be purchased. This is a complex process done with the integration with the management and procurement divisions of the organization. Responsibilities include development of policies and measurements regarding the life cycle of both hardware and software components.

  • Risk Management

This division comes under Life cycle management and involves managing system issues, purchase costs, compliance and business policies. It mainly aims at minimizing risk so that the cost-effectiveness regarding purchases and disposal of hardware and software is maintained.

  • Integrated Software Solutions

In order to integrate itself with the other departments of the organization, the IT Asset Management division has deployed the system of Integrated Software Solutions in order to work with all related departments for functions related to IT assets like procurement, deployment and expense reporting.

  • Software protection

Regarding the protection of software versions in the organization, this department focuses upon organization’s software up gradation with the latest anti-virus protection to detect malware and viruses. Thus, it helps to preserve the software assets of the organization, hence ensuring that the software functionality standards are maintained.

Python and its Data Structures

Thursday, 11 February, 2016

Python and its Data Structures

Overview of Python

Python, a programming language that was developed in the late 1980s, is named after its developer, Monty Python. One of the advantages of using Python is that a program can be written using fewer code lines, as compared to other programming languages, such as C++ or Java. In addition to this, other advantages that Python provides is it is freely available, is open-source software, can be used on different Operating Systems, is Object-Oriented, and has automatic Memory Management.

Overview of Data Structures

Each program has some variable values that need to be stored during the execution of a program. Data structures can be defined as containers that are used to store these variable values having same methods for manipulating the available data.  Some of the reasons to use data structures are:

  • Efficient problem-solving
  • Focus on main problems without getting into detail
  • Consistent way
  • Information is securely stored
  • Sorted data

Types of Data Structures

Different types of available Python Data Structures are:

  • Strings: Most commonly used data structure that is written using either single or double quotes. Further, using the built-in strings, many operations can be easily performed. You can also index and extract program slices by using the subscript notation.
  • Lists: The most systematized, generalized, and schematic data structures. Using a list, various different types of Python objects, such as numbers, functions, strings, can be stored in a sequenced manner. Some of the common list data types are:
    • list.append: Adds item to end of the list
    • list.insert: Inserts an item in the list
    • list.remove: Removes an item from the list
    • list.extend: Extends the list by appending it
    • list.sort: Sorts the list according to the requirement
    • list.count: Returns the number a particular type appears
  • Dictionaries: These are one of the important data types that are been used in Python. Data in a Dictionary values are entered in the key-value pair enclosed within the {} braces. Dictionaries are used in cases of a logical association, fast data lookup, or when constant data modification takes place.
  • Sets: These are the data structures that are used for storing an unordered collection having no duplicate values. Primary function of creating sets is to perform membership testing and eliminating duplicate values.
  • Tuples: These are the data structures that are defined as immutable lists in which data values are separated by commas. Immutable represents that you cannot delete/ edit/ add the tuple value.

Getting Acquainted with a Java Thread

Monday, 8 February, 2016

Getting-Acquainted-with-a-Java-Thread-V-1

Multithreaded programs can be developed using the Java Programming language.  By a multithread program, it means a program comprises of two or more actions, where each action performs different tasks simultaneously. Multithreading can also be said as a synonym for multitasking where each thread corresponds to each task. The benefits of multithreaded program are that multiple activities run parallel and use the same program.

What is a Thread?

A thread in a Java program in its simplest definition is a sequential flow of statements that defines an execution path for a program.  A Java program should contain at least one thread that is the main thread, which is invoked by the main () method.

Ways to Create a Java Thread

The Thread class is one of the main classes in Java that is written as java.lang.Thread class. This class, along with the Runnable interface, is used to create threads in Java. A thread in Java can be created in either of the two following ways:

  • Extending the java.lang.Thread class

Or

  • Implementing the java.lang.Runnable Interface

Life Cycle of a Java Thread

A thread in a Java program goes through different states, as shown in the following flowchart:

Screen Shot 2016-01-22 at 8.54.54 PM

A brief description of these states is as follows:

  • New:  Refers to the state after an instance of the Thread class gets created but before the invocation of the start () method. This state marks the beginning of life cycle of a thread.
  • Runnable: Refers to the state where a thread executes the task for which it is created. The thread comes into this state after the start() method is invoked.
  • Running: Refers to the state where thread is selected by the scheduler for the execution purpose.
  • Not-Runnable (Blocked): Refers to the state where thread is alive; however it is not eligible to run.
  • Terminated: Refers to the state when a thread gets terminate and is in a dead state.

Familiarizing with Thread Priorities

We are aware of the availability of multiple Java threads in a program. But the question that arises is how a program knows which thread to run first or sequence of execution order for all threads. The solution to this can be given by scheduling thread execution. Each thread in a Java program has a priority. By default, priority of a thread is inherited by its parent thread and is in between numbers 1 to 10, where number 1 denotes that thread is at the minimum priority level and 10 denotes the highest priority level for a thread. Further, thread priority can also be changed according to the requirement using the java.lang.Thread.setPriority () method.

Learning Linux V7 Essentials

Thursday, 4 February, 2016

Learning Linux V7 Essentials

Introduction

Linux is an application enabling operating system that helps the user to access the devices on the computer system to perform various operations. In fact, it manages the communication between the computer’s hardware and software.

Features of Linux V7

Linux has now come up with additional features through its V7 version to enable scalability, reliability and security in its applications. This version has a very user friendly environment with improved operational efficiency. Features include

  • Linux Containers having enhanced application development, delivery, portability and isolation.
  • XLS as default file system having a scaling to 500 TB.
  • Application runtimes and development, troubleshooting tools which are container- ready and are more powerful and secure.
  • For modernizing the management services and security, an innovative infrastructure component system is provided.
  • Linux V7 has optimized performance and easy scalability as it comes with built in performance profiles, tuning and instrumentation.
  • In order to ensure a streamlined administration and system configuration, it is equipped with Unified management tooling and an industry-standard management framework with OpenLMI.
  • Enhanced application isolation and security to counter unintentional interference and malicious attacks.
  • In order to enable secure access for Microsoft Access Directory users, it is equipped with a cross-relam trust.

Advanced Features

  • Web Control- This is a new simpler front-end graphical interface. It configures and monitors one or more FAHClient slots through an easy to use webpage.
  • FAHControl – This is an optional advanced front-end graphical interface which configures and monitors one or more FAHClient slots on one or more computers.
  • FAH Slot- The FAH slot facilitate interconnectivity between GPUs and CPUs. Each slot can download, process and upload results independently.
  • FAHViewer- This is a newly modeled work unit viewer which offers various options like ball and stick, space fill, zoom, rotation etc. It also has snapshot capture and cycling feature.
  • FAHClient- This client software is a backend feature and runs behind the scene. It manages the work assignments for each and every client slots.

Learning basic Linux commands

One essential in order to master Linux V7 is to master the basic commands of Linux. Copy commands, disk duplicate commands and file commands are very much the same in all Linux versions.

Programming in Linux

In order to learn Linux and especially Linux V7, the user must be familiar with general programming basics. Linux distribution supports various programming languages like Ada, C, C++, Go and Fortran. Several programming languages like PHP, Perl, Ruby, Python, Java, Rust and Haskell support Linux. The Linux version includes specific purpose programming languages targeted in scripting, text processing and system configuration like shell script, awk, sed and make.

Future of a Java Professional

Monday, 1 February, 2016

Getting-Acquainted-with-a-Java-Thread-V-2

Present Scenario

Java programming is one of the most renowned platforms where an individual can choose to work. With the advent of technology, this programming domain has experienced an exponential rise and hence provides an individual with many opportunities. Java programming jobs are in abundance in today’s word and many people choose it as their career path.

In the present scenario, the scope of professionals in this domain is high and people with expertise in Java get hired without delay. However, professionals must follow a strategy in order to survive in this ever evolving Java environment.

Future of Java

The concept of Java programming will keep on evolving with time and a professional in this domain has to upgrade his knowledge on a regular basis in order to cope with the programming requirements. The Java programming language will continue to exist, however with time there may be further change in forms, styles and frameworks used to write codes.

The explanation is simple. As new programming languages continue to evolve, Java has to upgrade itself regularly in order to survive the competition. Thus, the strategy that a Java professional should use is ‘future proofing’ himself against all odds and keep himself upgraded with each and every version of Java that evolves in the market on a regular basis.

Future Proofing Strategy

Take an example of the latest version of Java: Java 8. It is the latest release of Java that contains new features, enhancements, greater bug fixation capabilities and improved efficiency. Since this has come up recently, professionals who are experts in previous versions should make themselves familiar with this environment as soon as possible. This will improve their chances of getting hired in the future in several organizations which will use Java 8 functionalities. 

Will Java Survive?

As Java is a very established programming language, people can rest assured that it won’t go obsolete all of a sudden. Programming languages may continue to emerge, but the strong platform that Java has created will remain unharmed even 10-15 years from now.

There will always be jobs available for Java programmers no matter what the situation is. However, in order to survive in this evolving Java environment, which is getting more sophisticated and modern day by day, professionals must also evolve their skill-set in order to excel.     

The Latest News in Computer Programming

Monday, 25 January, 2016

the latest news in computer programming

Computer programming has steadily advanced in innovation. Nowadays, the aim of computer programming is to provide user convenience by developing several user friendly and useful software applications. Some latest news from mid November until early December about new software innovation.

Computers Have Now Become Artists (Nov 23, 2015)

Source: Umea University

Could we have ever imagined that machines could understand drawings and paintings and draw images much like humans? This imagination has become real. This concept has been given light by Researcher Bo Li, in his doctoral dissertation at the Department of Applied Physics and Electronics at Umea University. He has named this method “Interest Curves” and recalls that with the help of this method the computer can redraw an image using curve strokes and recognize objects using these curves.

Detecting False Feedback (Nov 30, 2015)

Source: Inderscience Publishers

This innovation is aimed to identify false feedbacks posted at online rating sites. This is aimed at helping consumers who get carried away into purchasing products by viewing false feedback posted at these sites. The research team of Soon Keow Chong and Jemal Abawajy of the Parallel and Distributed Computing Lab at Deakin University, Geelong, Australia has designed an algorithm to identify and block these malicious feedbacks being sent to the site’s management system and thus make it prone to such attacks.

Therapist Rating

Source: University of Southern California

Therapeutic sessions rely on empathy as their foundations. To know whether a therapist is empathetic, researchers from USC, University of Washington, and the University of Utah have designed a machine-learning algorithm which can rate therapists based on speech recognition. The software takes speech as input and generates an empathy rating. Thus patients can know whether a particular therapist will be of convenient to them or not based on is empathy rating.

Software to Detect Reliability of Apps

Source: University of California – Riverside

The problem with apps according to a new study is that the apps downloaded via Google Play almost 9% of them interact with websites which can be a threat to user security and privacy. To overcome this situation, a team of researchers at the University of California, Riverside is now developing a tool called AURA (Android URL Risk Assessor). This tool has been designed to allow users to assess the riskiness of individual apps before downloading them. This system is currently under improvement to make it more robust and user friendly and will be soon released as open source software.

Learning Style Assessment

Monday, 18 January, 2016

Human Vector series. Background composition of  human lines and abstract graphic elements to complement your layouts on the subject of mind, human spirit, poetry, inspiration and philosophy

Every person is different. Each individual learns and acquires knowledge through his or her own unique style. Some individuals are outspoken and tend to acquire knowledge in a lively classroom environment with lot of interactions happening, while other individuals prefer a lonely silent place and do self study rather than a classroom environment.

Based on research done, the ways in which people acquire knowledge have been categorized on the basis of learning styles. According to Walter Burke Barbe, there are three basic learning styles namely auditory, visual and kinesthetic.

Auditory Learning Style

The auditory learning style is based on learning and acquiring knowledge by hearing things. Auditory learners are those who tend to learn using this style. For example, you may have had a student during your school days who would immediately grasp a poetry read aloud by the teacher. That student would be categorized as an auditory learner.

Visual Learning Style

Visual learners are those who prefer to learn by looking at things, reading, or through a practical demonstration. These are the learners whose way of acquiring knowledge is based on self capabilities and they tend rely on themselves in learning matters. For such learners, if a matter is explained by using audio methods, it may lead to problems in their grasping and understanding of the subject.

Kinesthetic Learning Style

This learning technique is based on the sense of touch. These learners tend to acquire knowledge by conducting an experimental demonstration themselves or by writing down a certain material. In other words, they learn a particular activity by doing the activity by themselves. You may have come across the saying “write once, read many”. For these learners, writing down or penning down an article makes them learn the article.

Which One Are You?

Often an individual is not aware about which category he or she falls into. Often many people from their childhood tend to follow a particular learning style that might not be relevant for them. Nowadays with the advent of modern technology, people who are unaware about their style can find out exactly what type they fall into. Various websites pertaining to learning style assessments are available all over the web which can tell you exactly what type of learner you are by assessing you based on a few objective questions answered from your side. Such technology can help people in their future by enlightening them about their own self and if they were following the wrong learning technique they can rectify it immediately.

Should I Learn to Program?

Monday, 11 January, 2016

should you learn to program

“Should I learn to program?” This question had been asked to me several times by my fellow colleagues in my last organization. My answer was always “Yes”. I strongly recommend that an individual learn some programming languages in order to survive in the modern competitive environment.

With the advent of the IT boom, those days are gone when work used to be carried out by typewriters or hand written documents. It has been reported by the U.S. that IT jobs will grow by 22% through 2020. Now even the most basic jobs require the use of computers. Computer literacy is essential for any person to find a job and along with it if by chance a person is equipped in any programming language, like Java, HTML, C++, Python etc, he or she can expect an exponential career growth.

Computer technology has advanced rapidly and within the next few years it is going to take a quantum leap. Nowadays, the number of jobs requiring ‘technical literacy’ is on the rise. Such jobs require a person to be well versed in some or the other programming languages.

Thus, if people know Java, HTML or any other programming languages getting into these jobs become very easy for them. One of my colleagues in my previous organization was well versed in Java. He was working with us in an accounting process which was not relevant for an expert programmer like him.

One day, a requirement arose on a different process for a Java programmer and he got selected with a very high salary package. Thus, it can be very well seen that learning to program does no harm, but in fact it opens doors to several opportunities.

Learning to program not only boosts a person’s career but also improves his or her problem solving and decision making skills. Apple’s co-founder and CEO, Steve Jobs had empathized on learning to program to be essential for mental development and quoted, “Everybody in this country should learn to program a computer, because it teaches you how to think”.

Program coding is like playing chess, a person has to decide his code for a particular program that he or she wants to implement by thinking logically. As a result, through programming, he or she develops sound mental abilities, which is the basic requirement for any kind of job.

Learning to program is always beneficial even if a person does not choose programming as his or her career choice.

All About Jean Bartik

Monday, 4 January, 2016

all about jean bartik

Source: Bartik Biography- University of St Andrews (http://www-groups.dcs.st-and.ac.uk/~history/Biographies/Bartik.html)

Early Life

Jean Bartik was born in Gentry County, Missouri, in 27 December 1924, under the name Betty Jean Jennings. Her father, William Smith Jennings, was from Alanthus Grove and was a schoolteacher and a farmer. Her mother’s name was Lulu May Spainhower and she was from Alanthus. Bartik had five elder siblings, three brother and two sisters. She graduated in 1945 from Northwest Missouri State Teachers College majoring in mathematics.

Career

In 1945, she was hired by the University of Pennsylvania as a maths major to calculate ballistics trajectories for the Army Ordinance. She was required to carry out this work by hand as a human computer. She applied and got selected for a project when the Electronic-numeric Integrator and Computer (ENIAC) was developed and became one of its first programmers. ENIAC was programmed by setting dials and changing cable connections. As there was no manual, she and her five other original programmers gained expertise in programming the ENIAC only by reviewing its schematic diagrams and interacting with engineers.

She and a group of programmers worked at a later stage for the conversion of the ENIAC to a stored program computer. Thus she came up with the BINAC and UNIVAC computers by working along with ENIAC designers in the Eckert-Mauchly Computer Corporation. She resigned in 1951, the same year UNIVAC was introduced.

Personal Life

While working for Army ordinance in the University of Pennsylvania, she met an engineer working on a Pentagon Project named William Bartik. They got married in 1946 and later divorced in 1968.

Later Life

In 1967, Bartik returned to the regular job portfolio and became an Editor for Auerbach Publishers. Later she worked for a firm named data Decisions in 1981 as a Senior Editor. However, Data Decisions shut down in 1985 as it got acquired by McGraw-Hill. As a result, she lost her job and started her career as a real estate agent at the age of 61. She died on March 23, 2011 from congestive heart failure.

Significant Awards

She, along with other original programmers of the ENIAC, was introduced into the Women in Technology International Hall of Fame. She also received a fellowship at the Computer History Museum for her contribution in converting the ENIAC into a stored program computer. She also received awards like IEEE Computer Pioneer Award for her pioneering work regarding the ENIAC and Korenman Award from the Multinational Center for Development of Women in Technology (MDWIT).