You are on page 1of 24

Nov 2010 / Volume 1 - Issue 2

Not for sale

Shri V Narayanasamy, Honble Minister of State for Planning and Parliamentary Affairs,
Government of India releasing the First issue of ICT Connect Magazine during the CII Connect 2010 Conference

ICT Academy of Tamil Nadu


A Consortium of Government of India, Government of Tamil Nadu and CII
ISO 9001 : 2008 Certified

magazine

C O N T E N T

Nov 2010

3
7
10
15
17

Education For All


An Industry Perspective

Cloud Computing
The future of IT

Skill Requirement
Spoken Communication
Evolving Best Practices in
Engaging Colleges and
Students

5
9
12
16

ICTACT Student Project


Funding and Awards 2011

ICTACT Student Certification


Programs

Emergence of Rural BPO


in Tamil Nadu

ICTACT Corporate Training


Solutions

Writing High Performance


.NET Code

ICTConnect
A Quarterly Magazine from ICT Academy of Tamil Nadu
Volume I - Issue 2 - Nov 2010

Published By
ICT Academy of Tamil Nadu
ELCOT Complex, 2-7 Developed Plots
Industrial Estate, Perungudi, Chennai - 600 096

Editorial Board
Dr. J.G. Sheshasaayee

Ph : 91- 044 42906800


Fax : 91- 044 42906820

Dr. G. Sainarayanan

E-mail : ictconnect@ictact.in

Mr. B. Anbuthambi

Website : www.ictact.in

Dr. K. Narasimhan
Disclaimer : The text and other material on ICTConnect magazine are the views and opinions of the specific author and are not statements of advice, opinions, or
information of ICTConnect or ICT Academy of Tamil Nadu. All trademarks and/or registered trademarks are the property of their respective companies and / or owners.
Nothing may be reprinted in whole or in par t without written per mission from the publisher. Individuals are authorized to
photocopy items only for personal use and not for commercial use.
Published by ICT Academy of Tamil Nadu by its Editorial Board and Printed at Knack Media Solution, Chennai - 26. Website : www.knackmedia.in

ICT CONNECT MAGAZINE

magazine

M E S S A G E

M. Sivakumar
Chief Executive Officer
ICT Academy of Tamil Nadu

Dear Friends,
Bridging the Industry academia skill gap is one of the key activities for all the stakeholders in the higher education
system, including Institutions, Corporate and the Government. ICT Academy is one such first of its kind initiative of
Government of India, Government of Tamil Nadu and CII, which aims at creating industry relevant manpower for the Indian
ICT Industry.
ICT Academy of Tamil Nadu is one of a successful Private-Public-Partnership model and a pioneering initiative
with great participation from the Industry. Leading organizations like Cognizant, TCS, Microsoft, Intel, Oracle, Hexaware,
National Instruments, Cadence etc are supporting the initiative. More than 2700 faculty members from 720 Colleges have
been so far trained by the academy on various industry relevant courses.
ICT Academy of Tamil Nadu also promotes the rural BPO policy launched by the Government of Tamil Nadu, where
the academy acts as a facilitator between the Institutions and BPO Companies in setting up rural BPOs.
The initiative of bringing out a magazine by ICT Academy of Tamil Nadu is yet another initiative, which gives awareness
among the student and faculty members in the higher education institutions on various contemporary topics and skill
development areas.
I am sure that this ICTConnect magazine would reach to all stake holders in the higher education system on all the
efforts of the Academy and the Government to provide a sustainable growth in the IT Sector of our State.
Warm Regards
M. Sivakumar
Chief Executive Officer
ICT Academy of Tamil Nadu

ICT CONNECT MAGAZINE

magazine

Education For All An Industry Perspective


Since the beginning of human evolution, each
generation has sought to ensure immortality and pass on
learning to the next generation. Humans have endeavored to
leave behind value systems, cultural & social mores, religious
doctrines, traditions and most importantly skills to the next
generation. Throughout pre-history there are evidences of
informal modes of instruction like poems, folklore, legends
and songs being used. As societies evolved, youth started
receiving instruction in a more structured, formal setting.
Elders of the tribe would take it upon themselves to impart
this education. Rituals, initiation ceremonies which imparted
specific skills led to the evolution of higher education, as we
know it today.
With the advent of writing systems, around 3500 BC,
education underwent a metamorphosis. Instruction could be
more accurate and less constrained by geographical
boundaries. Ironically, though, this period also increased
restrictions on education. Now, the changes in society were
reflected in the access to and the quality of education. This
was because the increased size of communities and cities, led
to society becoming more divided in lines of social classes.
Social stratification meant that a persons class, gender or caste
determined or limited the occupation and therefore the
education the person might receive.For example, in Ancient
Egypt, literacy was concentrated among an educated elite
group of scribes. So, though Pharonic Egypt was one of the
earliest users of the written word, the rate of literacy is
estimated to be between 0.5% & 1%. In ancient India, on the
other hand, education was freely available. In fact, the gurukul
system of education was free. A voluntary gurudakshina was
paid on completion. All the same, as the caste system evolved,
education also became discriminatory.
So, today, the reality is that access to quality education
for all is not integral and needs legislation and strategy to
implement.

Pratima Amonkar
Director Academia
Microsoft India

Now the question arises, what does Education For All


actually mean?
EFA is a right. Several countries have legislations in
place to assure access to education for every child.
Education allows us to reach our full potential as
human beings. Better health, better living standards, safer,
sustainable environments are only possible through
education. In other words, education is a development
imperative.
Most importantly EFA is really for ALL. Statistics
show that more than 55% of out-of-school children globally
are girls. Over 2/3rd of adults without access to education are
women. Merely increasing the opportunities to standard
education for distinctive groups like women, tribes, differently
abled, street children will not meet the needs. Exclusive and
precise efforts need to be made for these groups.
Education should also be relevant and responsive to
learners needs.
Education in India is, undoubtedly, one of the
imperatives for the country and the investment made over the
years has contributed hugely in propelling Indias growth in
the knowledge economy. The combination of quality content,
partnerships, training, and broad access-complemented with
the most appropriate technology to author, distribute, teach,
and connect-can transform education.
So, what is the role that technology must play in
addressing the challenges posed in providing EFA?
Access

Recognizing this need, UNESCO in 1990, had


launched a global movement, aiming to meet the education
needs of all by 2015. With a 6 point goal sheet, 155 countries
had pledged to make Education For All a key priority. While
UNESCO leads this effort, globally, local support from
NGOs, Governments, Development agencies, Civil Societies
and media is crucial.

ICT CONNECT MAGAZINE

Taking knowledge resources to the door step of the


learner, technology helps provide access to all. This is where
industry efforts to drive affordable computing will support
this key imperative. In a large number of schools in most
developing nations, a single computer is shared by multiple
children, often with ratios of as many as 5-10 children to a PC.
Multi Point is a paradigm in which individual access is

magazine

provided to each child around a shared computer. This results


in increased educational value and greater engagement, and
also effectively multiplies the value of each PC by providing
simultaneous shared access. With tools like Microsoft Multi
Point SDK 1.1, education developers have a platform to build
unique, collaborative applications for students across all
subjects. The solution will enable teachers to assign and
distribute work assignments based on each students level and
need, or establish a consistent experience, depending on the
needs of the class. Students can work on individual projects
and at their own pace, while finding, using and sharing
information effectively, enhancing their productivity and
learning experience. Additionally, software programs like
Microsofts Dream Spark program help keep students on the
cutting edge of technology. A software giveaway for qualified
students in the country, Dream Spark aims to provide students
with access to the latest Microsoft developer and designer
tools at no charge to unlock their creative potential and set
them on the path to academic and career success. The
program aims to equip a new generation of technology
leaders with the knowledge and tools they need to harness the
magic of software to improve lives, solve problems and
catalyze economic growth.
E-learning also has a very key role to play as a powerful
tool to provide standardized quality and equality of access. ELearning must be used as an effort multiplier for providing
access.
Finally, in enhancing the accessibility of learning
solutions, development of interfaces for other cognitive
faculties which would also help physically challenged learners
is extremely important.
Peer Collaboration

The role of technology to support and facilitate peer


collaboration is unique and impactful. Technology can
provide for connectivity and supply access devices. Most
importantly, technology can support content generation.
Tools like LCDS and Semblio help faculty develop innovative
material that can increase education effectiveness. Key to
faculty success lies in supporting peer-mentoring, once again
through the use of technology. Using ICT to provide a
platform to share ideas, build a community and pool
knowledge resources, will be the way forward in the future.

when it is used to bring about self-reliance through digital


literacy. In other words, teaching students and teachers to use
technology effectively, helps them access online content and
web-based learning which in turn increases the quality of the
education imparted and finally implemented in the workplace.
Microsofts Partners In Learning program has posted
tremendous results proving these surmises. This global
initiative is designed to actively increase access to technology
and improve its use in learning. Supporting schools gain better
access to technology, foster innovative approaches to
pedagogy, support teacher professional development and
provide education leaders with the tools to envision,
implement and manage change, is the aim of this initiative.
The role of technology, therefore, in driving Education For
All is immutable.
All of us, as a nation need to put our minds and might
to this crucial imperative. We need to join hands, to transform
education through a grass root level change through
community partnerships and inclusion. Using the local
language, creating and leveraging on local partnerships with
stakeholders, leaders and resources, we need to personalize
the change agenda for the benefit & development of local
communities through vocational programs. Next, we need to
use ICT to transform teachers in to coaches. Technology can
also be used to support migration of talent across schools and
colleges, promoting new ideas and fresh perspectives and best
practices. Most importantly, we need to use technology to
build the best and standardized digital content and make this
content repository available for teachers on the cloud. Using
robust cloud platforms like Azure, we should help distribute
this content in a personalized manner and in scale across all
schools. In conclusion, therefore, I would like to reiterate the
indisputable role played by technology in ensuring access to
quality education for all.
Pratima Amonkar is the Director, Academia for Developer and
Platform Evangelism (DPE) at Microsoft India based out of Bangalore.
In this role, she is responsible for spearheading Microsoft Indias efforts to
foster the Indian software ecosystem through deep strategic engagements
with students, educators, institutions and academic thought leaders. She is
a core member of the Microsoft India Developer and Platform group as
well as being a member of the WW global academia team.

Digital Empowerment

The power of technology in education can be felt most

ICT CONNECT MAGAZINE

magazine

ICTACT Student Project Funding and Awards 2011


ICTACT had invited applications for project proposals
from the final year students of Engineering/ Science
disciplines in Information and Communication Technology
(ICT) domain and received an overwhelming response. 320
projects were received from various engineering / Arts &
Science colleges across the State. The response and interest

shown by the member colleges is applauded. The selection


process was carried out and completed based on two
independent reviews, one by the industry and other by
academia, the criterion was purely based on technical
excellence.

Results of the project proposals selected for funding are mentioned below
Project
ID

Title of the
Project

Name of the
Student(s)

Supervisor (s)

Name of the Institution

1.

SPP/1/308

Transporter

R. Rajkumar
G. Satish
G. Suryanarayanan

Mr. G. Nagappan

Saveetha Engineering College, Chennai

2.

SPP/1/238

Cell Phone based


way finding for
Visually impaired

Mr. M. Thangavel
Mrs. J. Vandarkuzali

Erode Sengunthar Engineering College,


Erode

3.

SPP/1/066

Secured query
processing in
wireless sensor
network

4.

SPP/1/111

Development of RF
Metamaterial Antenna
for Wireless
Applications

R. Arun Kumar
Nair Rajesh
Rajasekaran
Dino John

Mrs. B. Anandhi
Meena

Vickram College of Engineering,


Madurai

5.

SPP/1/113

Development of Printed
monopole antenna for
wireless applications

D. Jebaraj
I. Gowrishankar
C. DavidChelladurai

Mrs. B. Anandhi
Meena

Vickram College of Engineering,


Madurai

6.

SPP/1/094

Automatic Solar
Radiation Tracker

N. Maheswari
P. Vinod Khanna
ER. Kowtham shankar

Mr. S. Prabakar

Dr.N.G.P.Institute of Technology,
Coimbatore

7.

SPP/1/241

Anti-Hacked Virtual
Private Network
Secured Polling

Hanah Ayisha
V. Hyder Ali
Binil Baby
A. Dinesh Kumar

Ms. K. Thamarai Selvi


Ms. C. Yamini

Dr.N.G.P. Institute of Technology,


Coimbatore

8.

SPP/1/058

Speed control of
induction motor using
stacked multicell
converter

P. Suresh
K. Pradeep Kumar
M. Swetha

Mr. Ponnambalam

Kongu Engineering College, Erode

SPP/1/106

An Intelligent Controller
design for power quality
improvement in renewable
energy sources(Solar)

J. Ashik Ahmed
R. Karthik

Mr. S. Albert
Alexander

Kongu Engineering College, Erode

10.

SPP/1/220

Design of Wrist pulse


measurement instrument
for Basic disease
Diagnosis

M. Balasubramaniam Mr. E. Muthukumaran

SCAD College of Engineering &


Technology, Tirunelveli

11.

SPP/1/245

GPS and GSM based


Human health Monitoring
and Alert System

R. Dhandapani
S.B. Karthikeyan
R. Yuvaraj

Mr.M. Thangavel
Mr. S. M. Srinivasan

Erode Sengunthar Engineering College,


Erode

12.

SPP/1/059

Implementation of
stacked multicell
converter for
Solar panel

N. Krishna Kumar
M. Manamalli
T. Keerthana

Mr. Ponnambalam

Kongu Engineering College, Erode

13.

SPP/1/267

Control of fuel valve


in two wheelers using
HELMET

S. Saibalaji
G. Rajasekaran
C. Jeswin Annish

Mr. A. Niranji kumar

14.

SPP/1/285

Fighting Online
Click -fraud using
Bluff Ads

P. Kamalakannan
S. Surendar
D. Shanmugam

S.No

9.

ICT CONNECT MAGAZINE

M. Ram kumar
R. Sankar
M. Dinesh
P. Hema Bharathi
P. Mani

Dr. C. Nalini

Mr. K. Suresh kumar


Mr. B. Sakthi
Saravanan

Kongu Engineering College, Erode

Saveetha Engineering College, Chennai

Saveetha Engineering College, Chennai

magazine

15.

SPP/1/114

Data Acquisition
system in military
using Ad-hoc
Network

16.

SPP/1/253

17.

M. Ahmed Faisal

Mr. K. Muthukumaran
Mrs. N. Mahalakshmi

Vickram College of Engineering,


Madurai

A new method of Vehicle


security locking system
with location
identification using GSM

R. Nirmala
K. Priya
U. Sharmila

Mr.M. Thangavel
Ms. G. Lalli

Erode Sengunthar Engineering College,


Erode

SPP/1/119

A Novel Real-Time
Intelligent Tele Cardiology
system using Wireless
Technology To detect
Cardiac Abnormalities

S. Kohila

Ms. K. Gowri

KSR College of Engineering,


Tiruchengode

18.

SPP/1/149

A low cost extendable


framework for embedded
smart car security system

M. Sakthi Priyadarshini
Ms. A. Yasodai
M. Regila Manohari
Ms.
M. Parisa Beham
M Umaiyal

19.

SPP/1/233

Energy efficient
automated power
management system

20.

SPP/1/118

GPRS based Heart rate


and ECG
Monitoring System

21.

SPP/1/234

Implementation of virtual
database engine for high
performance distributed data
integration using had
oop-map reduce

S. Sathya

22.

SPP/1/225

Network energy
meter with smart billing

Vineeth Vasudevan
R J Vivek
Swati Sinha

23.

SPP/1/265

Design and Implementation


of Arithmetic and logic
unit using Verilog

24.

SPP/1/264

25.

26.

Vickram College of Engineering,


Madurai

Mrs. J. Dheeba

Noorul Islam College of Engineering,


Nagercoil

Mr. Hakkins Raj K


Mr. S. Siva

Vinayaka Mission Kirupananda Variyar


Engineering College, Salem

Mr. J. Victor Jose

Noorul Islam College of Engineering,


Nagercoil

Mr. P. Loganathan
Mr. T. Elayabharathi

Vinayaka Mission Kirupananda Variyar


Engineering College, salem

M K Meena
P V Banoji Rao
P Bala Kumar

Mrs. Monica
P. Suresh

Saveetha Engineering College, Chennai

Growth of Transparent
conducting thin films on
flexible substrates
for flexible electronics

P S Krupa
K Sankari
R Suresh Kumar

Mr. M. Singaaravelu

SPP/1/086

Reactive power control of


autonomous wind-diesel
hybrid power system

M. Abinaya
A. LakshmiPriya
S. Mutharasi

Mr. P. Sivachandran
Mr. D. Saravana Selvan

SPP/1/269

Microcontroller based
variable frequency
power inverter

E S. Silpa
A. Karthikeyan
S. Vaishnavi

Ms. Rathika Kannan

Saveetha Engineering College,


Chennai

27.

SPP/1/048

Implementation of
Business rules engine
using an improved
algorithm

R. Shree Ranjani
B. Anugraha
G. Bhuvaneswari

Mr. J. Sethu Raman

Sastra University, Thanjavur

28.

SPP/1/200

Design of Embedded
S R. Srimathi
Controlled Semi-automated
Dona K. George
Wheelchair

Mr. Alfred Roger


Mr. Rajkamal

Alpha College of Engineering, Chennai

29.

SPP/1/049

VLSI based carrier


frequency offset estimation
in MIMO-OFDM system

Dr. J. Jayakumari

Noorul Islam College of Engineering,


Nagercoil

J. Kannan

Sameera Shaheed
Ajmal A. Sathar
Hassan Hussaid

B Sharmi

Saveetha Engineering College,


Chennai
Vickram College of Engineering,
Madurai

ICTACT Congratulates all the selected students.


Project Funding and Awards Sponsored by

ICT CONNECT MAGAZINE

magazine

Cloud Computing The future of IT


Cloud Computing is the next big trend in the way,
Information Technology will be managed in the future. The
definition of cloud computing usually varies from: Simply
utilizing virtual servers available on the internet for computing
power. Increased computing capacity on demand without any
capital investment on new resources like infrastructure,
resources & licensed software. Generally the spend on cloud
computing is in terms of a fixed subscription fee on a periodic
basis (monthly) or simply pay-as-you-use a service.
According to Berkeley scientists, "Cloud computing
refers to both the applications delivered as services over the
Internet and the hardware and systems software in the
datacenters that provide those services. The services
themselves have long been referred to as Software as a Service
(SaaS), so we use that term. The datacenter hardware and
software is what we will call a Cloud." Users get to access
software that resides on servers in the "cloud" from any where
using the internet.

Suresh Jagannathan
Solutions Architect
TAKE Solutions

backup server in its place. If it is occurred at an users premises


with installed software a simple issue can turn to hours of
technical support over the phone, costly downtime, and
unhappy users and customers.
Scale up or down at will

In a cloud computing environment, Enterprises can


subscribe & have storage capacity scaled up or down
depending on their requirements. Service providers need only
to add servers or shift load from one server to another to
accommodate for the additional use of space. The same goes
for software application use.
Reduce cost move marginal costs from CAPEX to OPEX

Dont buy Software but subscribe it on a need basis

In a cloud, software is hosted out of servers belonging


to Service Providers. Users need not buy software anymore.
Users pay per usage or simply subscribe on a period basis.

There is no need to invest in terms of hardware and


software licenses. The cost now shifts to OPEX (Operating
Expenses) because of the need to pay nominal subscription
fee on a periodic basis. Additional IT staff head count and the
salary paid out to them will be reduced.

Cut down Software maintenance costs

Organization plan and deploy hardware infrastructure


& may setup private data centers for software applications,
based on peak capacity requirements. Instead Organizations
can now use Software hosted on a SAAS platform without
having to spend on software hardware maintenance. The
Service Provider owns the responsibility of scaling the
capacity available to their customers. Adequate Backups,
Redundancy, Disaster recovery mechanisms, No-down-time,
Complete Protection of data, are all part of SLA Governing
the offering.

Environmentally friendly

This model leads to a better Carbon foot print across


the globe because the need for number of sophisticated
hardware that consumes lots of energy deployed will be
reduced, as more and more enterprises disinvest on data
centers and move to the SAAS platform.
Access anytime, anywhere, pay-as-you use!

Through this model, software and related services are


rendered through the internet, which means anytime
anywhere availability without location constraints.

New Upgrades to software will also be done automatically


without any user intervention. No down time and high

Seamless version upgrades to hosted software

reliability

Cloud computing provides a common platform for all


enterprises accessing the software or services to work on the
most-recent / up to date / modern technology. The users will
only experience new or better functionality as hardware &
software are upgraded with newer versions.

Increased reliability stems from the fact that the cloud


runs on systems that are extremely reliable and provide
various forms of redundancy. If a storage server on the cloud
fails due to hardware or software issues, the service provider
needs only to shift the load over to other servers or bring up a

ICT CONNECT MAGAZINE

magazine

CLOUD COMPUTING SERVICES & Offerings

Cloud computing provides a common platform for all


enterprises accessing the software or services to work on the
most-recent / up to date / modern technology. The users will
only experience new or better functionality as hardware &
software are upgraded with newer versions.
Saas (Software as a Service)

An application accessed through a browser by


thousands of customers using a multitenant architecture.
Salesforce.com is the best example for a SAAS based solution
Infrastructure services

This is a model by which Storage and virtual servers are


available on rental / demand. Usually it begins as a non
mission critical need. Amazon.com, Sun, IBM are providers
of Utility computing services.

Bloomberg, and even conventional credit card processing


services.
Platform as a service

This service delivers software development


environments on demand to programmers, who build their
applications that run on the service provider's Infrastructure
and delivered to users via the Internet. Prime examples
include Salesforce.com's Force.com,
Managed services

This is an old form of cloud computing, where in the


IT department of the enterprise plays a crucial role. Services
such as a virus scanning service for e-mail or an application
monitoring service (which Mercury, among others, provides)
are already there in town.
Examples are SecureWorks, IBM, and Verizon

Application integration services

Web service providers offer APIs that enable


developers to exploit functionality over the Internet, rather
than delivering full-blown applications. They range from
providers offering discrete business services -- such as Strike
Iron and Xignite -- to the full range of APIs offered by Google
Maps, ADP payroll processing, the U.S. Postal Service,

10

11

13

14

17

Suresh Jagannathan is currently working as Solutions Architect


in TAKE Solutions. He has over 7 years of Supply Chain Management
practice with Organizations like P&G, TTK-LIG, IFF & 7 years of
SCM IT Products experience as Specialist & Solutions Architect.

Across

IT Crossword - 1
1

About the author

Early personal computers from Apple


"Select an object by pressing the mouse button "
Plug and play
Widely used operating system
A unit of digital information in computing
Measuring the speed of the computer
Reduces or enlarges objects on the screen
Digital to analog and vise versa

Down

12

15

1
4
6
9
11
13
16
17

16

2
3
5
7
8
10
12
14
15

One dot on the screen


Not only humans, computer too get infected
"Main chip of the computer(3)"
Indiscriminate, unsolicited bulk messages
last name of computers(7)
One or the other but not both
Vector graphics printing device
Objects on the desktop
Space where the computer does its processing

Difficulty Level

ICT CONNECT MAGAZINE

magazine

ICTACT Student Certification Program


According to the NASSCOM-McKinsey report, The
ICT Industry in India could face an employee shortage of 3.5
million by 2020. This is due to the Employability ratio of the
graduates, which is found to be low. (For e.g 10 to 15 percent
of graduates for business services and 26% of engineers for
technology services are employable). This issue is mainly due
to huge skill gap between the industry requirements and
academia output.
ICTACT bridges this gap through structured training
programs for higher education spectrum by associating with
corporate bodies like Cognizant Technology Solutions, Tata
Consultancy Services, Microsoft Corporation, Intel,
Hexaware Technologies, Oracle, National Instruments,
Cadence, etc.
ICTACT has trained around 2700 faculty members
from 650 colleges across the state on the latest technologies.
ICTACT has launched Students Certification Programs on
various technologies and tools. The course curricula have
been meticulously designed with the research outputs to meet
the industry requirements. The members of the Board of
Studies are drawn from the leading industry and academia.
Currently, two courses, namely, Certificate in Web
Application Development using Java Technology and
Certificate in Web Application Development using .Net
Technology have been launched for the students. These
programs have been designed to make the students
understand and use the latest technology effectively. These
courses are delivered with real-time examples and exercises
which would enable the students to learn / write increasingly
sophisticated J2EE / ASP.Net programs.

The course consists of training and hands-on learning


for 60 hours followed by Project work. Students are required
to undergo Project work as the partial fulfillment of the
course, which would be in accordance with the Project
Specifications provided by ICTACT as per the industry
standards.
Students are assessed by ICTACT and the question
pattern would focus on higher order thinking skills (HOTS)
like applications of technology and analysis.
Students profile including their personal details,
academic details and grades scored in the Student
Certification Program will be shared with the industry
through ICTACT Portal.
Key Take-away from the Course

Industry relevant content for students


Pedagogical Tools for the faculty members including
Training materials
Case Studies
Exercises with Solutions
Industry relevant Project Specifications
Assessment
Certification
Certified students profile will be shared with the
industry through ICTACT portal.
For more details please visit www.ictact.in

JOBS CORNER

Position : Process Executive Voice / Data


Eligibility : UG/PG degree in Arts, Science, Commerce, Business Administration,
Hotel Management, CS or IT (pass outs from the 2009 or 2010 batch) / Engineering
OR MCA graduate pass outs from the 2008 or 2009 batch / Diploma Holders in the 10+2+3 pattern.
Experience : 0-6 Months
Location : Chennai

Fifth Generation Technologies Private Ltd

Position : Entry Level Engineers


Eligibility : Preferably B.E Computer Science Engineering /? Engineering Degree in E.C.E &
E.E.E will also be considered
Location : Chennai
Position : Trainee, Lead Process Executive
Eligibility : 2010 / 2009 Pass outs MBA Marketing, MA English Literature, BA English
literature - Good Communication skills and knowledge on Computers
Location : Chennai
Salary : 2.2 L Per Annum
Position : Transaction Process Executives / Junior Analysts (Day Shifts)
Eligibility : 2009 & 2010 Graduates with minimum 60% marks
Location : Chennai

For more details on the jobs visit & register at

www.ictact.in
ICT CONNECT MAGAZINE

magazine

Skill Requirement Spoken Communication


One of the important gaps found among the campus /
off-campus recruits is lack of proper communication skill.
This is a critical area that needs utmost attention to be given to
the importance of communication, needless to say in IT
industry. Though one may be technically sound, it is the
communication skill that showcases the technical capability.

Adarsh R Pookat
Project Manager
Hexaware Technologies

itself is plural / singular based on the sentence usage.


Being a part of the recruitment panel, it is
disheartening to see that youngsters do not understand the
importance of spoken communication, and are not taking it
serious. This is evident when they participate in
group discussion, attend an interview or write an essay.

E.g.

Spoken English A requirement:

Usage of Odd phrases


Examples for antiquated and old words / phrases like,

Of various types of communication, this article will


concentrate only on spoken communication (English).
The following are some of the common mistakes that
need immediate attention:
Proper grammar
A grammatically correct sentence is very important in
spoken communication. The following are some of the
common examples:
Is / was; has / had; come / came
Wrong: He was coming to me now.
Right : He is coming to me now.
Present : He has ten pencils.
Past : He had ten pencils.
Proper pronunciation
Pronunciation is another area where we need to work
on. The general tendency is to pronounce using native
language.
E.g.
Hurt is pronounced as huRT with stress on R and T.
The R is silent.
Simple is pronounced as simble
Proper language usage
Wrong Plural / Singular usage:
E.g.
Using the word peoples to refer to a group of people.
People actually refers to a group. Some tend to use staffs to
refer to set of office staff as plural. It must be noted that staff

10

Influence of Native language:


Wrong : He fast runs.
Right : He runs fast.

He is a good / bad fellow.


I want to bring to your kind attention
Where are you stationed?
These were brought into India by the Imperial British;
some 200 years later even they have forgotten these words
while we continue to use them.
Usage of Indian-Specific words (especially to native
speakers)
I had curd-rice with brinjal for lunch.
Is it veg or non-veg?
I come to office by two-wheeler.
These are words we have adopted into English, and
take for granted that everyone knows them. Well, dont be
surprised, they dont!
Usage of phrases directly translated from the speaker
native tongue
What is your good name?
Aditya sir and Narayanan sir are not available.
I will not do this and all
Just because Hindi or Tamil requires certain respect
phrases or adjectives doesnt mean its equivalent English
sentence needs to have this as well.

ICT CONNECT MAGAZINE

magazine

Suggestions for improvement:


The following are some suggestions that every
individual should start early in life:
Converse in English whenever possible.
Read good newspapers, magazines, novels, etc.
Listen to good news channel.
Participate in elocution competition.
Present papers.
Conduct mock group discussion.
Use full and proper sentence in emails, sms whenever
possible.

Conclusion :
Communication is an important skill that one has to
develop to prove oneself in the IT industry. Very good spoken
English, doubtless to say, gives one a definite lead over others
(not that one neednt be technically sound!) and helps in career
growth. So it is imperative that everyone take this seriously and
work towards improving the communication.
Adarsh R Pookat is currently working as Project Manager in
Hexaware Technologies. He has over 10 years of experience in Airlines
Practice (Cargo and Passenger Reservations).

Ask friends to correct if they find you are going wrong


somewhere.
Also, dont be afraid to watch a Hollywood
blockbuster with your friends the best way to improve
pronunciation is to listen to native speakers.

A Cup of Tea

ICT CONNECT MAGAZINE

11

magazine

Emergence of Rural BPO in Tamil Nadu


The Government of Tamil Nadu, through a wide range
of initiatives has already attracted the IT Industry and in
particular the BPO segment to be firmly entrenched in the
State. However, the BPO industry presence is limited to
Chennai, its surrounding areas and a few select urban
locations such as Madurai and Coimbatore. For a deeper
penetration of the BPO industry in the state, the Government
of Tamil Nadu released a specific policy which would attract
the industry to venture into the rural locations in the state.

Rural BPO Policy, it was necessary to inculcate a different


promotional style that would ensure participation of BPO
industry and academia. ICT Academy of Tamil Nadu is a
special project vehicle that has helped to strengthen Academia
Industry - Government efforts that are of concern to all the
stakeholders. ICT Academy is an educational service provider
that caters to the needs of the Higher Education sector in the
state of Tamil Nadu. ICT Academy would monitor and
facilitate the rural BPO initiatives in association with ELCOT.

The Honourable Chief Minister of Tamil Nadu, Thiru


Dr. M. Karunanidhi released the rural BPO policy on 15th
October 2010. This policy is applicable to rural locations and
is to be identified as a unit that is located at Panchayat level.
The IT department, Government of Tamil Nadu, plays the
role of a facilitator in receiving enquiries from the BPO
industry and simultaneously help to find interested
institutions both educational and otherwise, who would have
the inclination to partner with BPO units. Such institutions
would assist in providing infrastructure such as floor Space,
power, connectivity etc., for hosting such relevant activities
for BPO Units. The business arrangement between the
industry and the infrastructure provider will be on terms
conducive to both and will be negotiated mutually by both the
parties. The educational institutions in particular, will benefit
with such arrangements as the Industry and Academic
interaction will help the students in providing exposure and
experience for entrepreneurship and future careers. It is of
vital importance to remember that globally the presence of
industrial units in close proximity and partnership with
premier academic institutions has led to a boom with regards
to the growth in the industry and economy. In promoting this

During the policy launch, in the first phase, eight


educational institutions signed MoU with five BPO
Companies to set up rural BPO facilities in their campus. The
Educational institutions include VMKV Engineering College
Salem, KSR College of Engineering Tiruchengode, Jayam
Engineering College Dhar mapuri, Muthayammal
Engineering College Rasipuram, Sona College of Technology
Salem, Velammal Engineering College Madurai, Happy Valley
Institute of Management Coimbatore and the GRG
Memorial Tribal Higher Secondary School Masinagudi, The
Nilgiris. The BPO Companies include SoftPro iTechnology
Partners, Scope International, Sundaram BPO Services,
GKM Management Services Pvt Ltd and Vee Technologies.
This initiative would enable the rural areas to acquire better
employment opportunities for the rural youth in the BPO
Companies.

magazine

Source : Rural BPO Policy Government of Tamil Nadu.


BPO companies and Educational Institutions interested in the rural
BPO Initiatives may write to B. Anbuthambi DGM Corporate
Initiatives, ICTACT at anbu@ictact.in

Advertisement Tariff

To advertise in this magazine Contact


ictconnect@ictact.in or 044 - 4290 6800

12

ICT CONNECT MAGAZINE

magazine

Rural BPO - MoU Signing Ceremony

Mrs. Nandhini Rangaswamy, Founder Trustee of GRG Memorial Tribal Higher


Secondary School - Masinagudi, and Mr. V. Chandrashekar CIO of Standard
Chartered Bank exchanging MoUs on setting up rural BPO in Nilgiri District, in
the presence of Honorable Chief Minister of Tamil Nadu.

Dr. Kanagaraj, Founder, Happy Valley Institute of Management - Coimbatore and


Mr. Karthikeyan MD of GKM Management Services Pvt Ltd exchanging MoUs
on setting up rural BPO in Coimbatore District, in the presence of Honorable
Chief Minister of Tamil Nadu.

Mr. P. S. Raghavan CEO of Sundram BPO Services and Mr. Muthuramalingam


Chairman, Velammal College of Engineering - Madurai exchanging the MoU on
setting up rural BPO.

Mr. Valliappa, Chairman of Sona College of Technology - Salem and Mr. M.


Krishnan Sr. VP of Vee Technologies exchanging MoUs on setting up rural BPO
in Salem District, in the presence of Honorable Chief Minister of Tamil Nadu.

Mr. Arun Chinnaraju Founder of Softpro iTechnology Partners exchanging MoU


with Dr. Nagappan Principal, VMKV Engineering College - Salem and Mr.
Srinivasan, Seceratary, KSR Group of Colleges - Tiruchengodu on setting up of
rural BPO

Mr. Arun Chinnaraju Founder of Softpro iTechnology Partners exchanging MoU


with Mrs. Parvathi Ramesh, Trustee of Jayam College of Engineering &
Technology - Dharmapuri and Dr. Madheshwaran, Prinicipal Muthyammal
Engineering College -Rasipuram.

ICT CONNECT MAGAZINE

13

magazine

Evolving Best Practices in Engaging


Colleges and Students
Where internet has not penetrated, mobile has.
Surprisingly in our 2 year relationships with over 1000
colleges, more than 90% students had either and 70% had
both, says Harpreet Grover, Co-founder & CEO,
Cocubes.com
A decade ago when a friend used to go to US, we would
end up catching up again only after a year. Today when our
friends go abroad; we keep in touch through chats, share
photographs, talk using Skype or just read updates on social
networking sites. We stay in touch!
Similarly, when I joined college long time back, our
hostel had 3 computers and we used an STD booth to call
home. By the time we graduated, it was difficult to find 3
rooms without computers and everyone had a mobile. Times
have changed. People (particularly students and colleges) now
have access to internet and mobile, and more importantly use
it day in and day out.
This fundamental change has to be the backbone on
which the newer initiatives being taken by the government and
other bodies can achieve its objectives at scale.
Let us Take a Look at the Disconnect

While this is a fundamental shift that has taken place,


engagement methodologies with college and students have
remained the same and are now in disconnect with the current
crop of youth. In the last few years of growth one has not had
the time to reflect and change. However, the downturn came
as an opportunity in disguise to address this disconnect.
Most firms in India still send posters and senior management
to colleges to share presentations during a 15 minute slot.
While some large firms invested heavily in building more
connection points by signing MoUs, these relationships have
had minor impact in their measurable ability to engage college
and students.
Some Firms have been Taking the Lead

Wells Fargo Indias Fuelling Assertive College Talent


(FACT) program, started in 2008 as an innovative technology
based campus recruitment process. They did not visit campus
but selected campuses, but had a specially designed web-based
quiz contest which tested the applicants awareness of Wells
Fargo in the first round.

ICT CONNECT MAGAZINE

Harpreet S. Grover
Co-Founder and CEO
Cocubes.com

A TCS youth survey done across 12 Indian cities with


14,000 candidates says why go visit a college to recruit and
spend money when one can hire employees by the click of a
mouse. S Ramadorai of TCS, said, We have to completely
digitize hiring practices, not from campuses anymore but
through interactions on the web.
Social networking sites have been touted as a place to
do the same. According to a survey by hiring solutions
provider TMP Worldwide and Targetjobs, 70 per cent of
surveyed students did not want businesses to use sites like
Twitter or Face book to sell jobs to them as they believe
employers should not exploit social media for their own
benefit. The report, which was based on the study of
penultimate and final year students, also found that 42 per cent
of students do think social media is the ideal platform to
communicate employer brand. So there is a need that still
needs to be addressed.
At CoCubes.com we have been working with
Cognizant to engage students through the placement office
(www.cocubes.com/cognizant)
What is required to deliver sustainable value at scale?

While multiple models have been evolved by


companies, I believe that for any of these models to work on
scale and deliver sustainable value, two conditions would need
to be met. Firstly, the only way to work in promoting learning,
career guidance, and skill development to the student is
through the placement office and not directly with an
individual student. Secondly, given the internet/mobile access
to student technology has to form the backbone of the
initiative. Thirdly, the message that is to be communicated has
to be consistent and needs to have metrics in place to measure
impact of your initiative. Building such a metric is a onetime
activity which goes a long way to make sure our efforts are in
the right direction. A simple example being that if we spend 10
minutes on posting an article on career guidance and are able
to measure the exact number of students across multiple
colleges who spent time on reading the article, we can have
an assessment of the impact that is being created.

15

magazine

Conclusion

A technology centered strategy to engage colleges and the youth within them will not only help reduce operational cost by
over 30% but also increase engagement and branding to unprecedented levels. This approach has to be through the ecosystem
that has thrived for years: that is through the college. All these factors combined together would help support the growth of the
ecosystem and help us scale for growth in the upturn economy.
Harpreet is the Co-Founder & CEO of Cocubes.com envisions bringing a paradigm shift in the Indian campus recruitment scenario by using
technology to drive efficiency. He has previously worked with Inductis, a management consulting firm, advising Fortune 500 clients in the financial services
domain by using data analytics. Harpreet graduated from IIT Bombay with a dual degree. Beyond work he is a published photographer, poet and an
amateur mountaineer

Expertise in
Entry Level Training [C, Data Structures, C++, OOPS, SE, OS, DBMS etc.]
Technology Training [ .NET, JAVA, LAMP, SQL, TESTING and More]
BPO Training Program [ Voice & Accent , Non Voice, Tech Support]
Language and Soft Skill Training

16

ICT CONNECT MAGAZINE

magazine

Writing High Performance .NET Code


Continued from the pervious issue...
Use proper synchronization primitives: There are
multiple synchronization primitives that are provided by
.NET Framework. These vary from fewer features (very fast)
to many features (very slow). It is important to use this
correctly to get optimal performance. Synchoronization
primitives can be defined as:
a. Monitor or lock : Provides a mechanism that
synchronizes access to objects
b. Interlocked: Provides atomic access to variables that
are shared by multiple threads.
For example : for any atomic ++ or - operations consider
using Interlocked class
c. Mutex: Synchronization primitives that can be used
for inter process synchronization. They are
considerably slower; use it when you absolutely need it.
d. Reader Writer Lock : Lock that supports single
writer and multiple readers. If you have a scenario where you
read your data frequently but update only once in a while,
consider using this as it supports multiple readers.
e. Reader Writer Lock Slim : Similar to Reader Writer
Lock but simplified rules for recursion and for upgrading and
downgrading lock state. It also avoids many cases of potential
deadlock and has improved performance. Using this is
recommended.
f. Semaphore : Limits # of threads that can access a
resource or pool of resources concurrently. Use it only when
you need to control pool of resources.
e) Never use Thread. Suspend and Thread. Resume to
synchronize activities. The suspend and resume operation
doesnt happen immediately as CLR has to make sure the
execution control is in safe point. This can lead to race
conditions or deadlock(1)
f) Never use Thread. Abort to abort another thread:
(1)
g) Dont lock this and type of an object: Locking
this pointer is a bad idea as this can have correctness issue as it
is visible. Similarly, locking type of an object is a bad idea as
these objects are the same across application domains and so
thus we lock all instances of objects across app domains in a
process.
//Wrong
//Correct
lock (this)
{ public class foo {
do something ;
Object sync_obj = new
Object();
} lock(sync_obj) {
Do something
}

ICT CONNECT MAGAZINE

Milind P Hanchinmani
Sr. Application Engineer
Intel

//Wrong
lock(typeof(foo))
{

//Correct
public class foo {
private static Object
sync_obj = new Object();
Do something; lock (sync_obj)
{
Do something;
}

h) Consider using [ThreadStatic] to eliminate or reduce


lock contention: If you can have a data as part of thread local
storage (per thread) rather than sharing and after the threads
have completed the jobs, you can process the combined effect.
Consider using this to reduce lock contention.
I) Acquire and release lock in the same order:
Otherwise you can cause deadlock condition
Thread1
Thread2
lock(obj_A) {
lock(obj_B) {
lock(obj_B) {
lock(obj_A) {
Do something; Do something ;
}
}
}
j) All collections in .NET are not thread safe. Some
collection classes (ex: ArrayList) allow multiple readers
concurrently. Need to call Synchronized method for
making it thread safe for updates
ArrayList myAr = new ArrayList();
ArrayList mySyncAr = ArrayList.Synchronized
(myAr); //use mySyncAr
k) Enumerating through collections is also not
thread safe even though it is synchronized. If another thread
modifiesthe underlying collection then an exception will be
thrown.
Automatic Memory Management (Garbage Collection)

Automatic memory management, aka GC is one of the


most important features provided by .NET Framework. GC
manages the allocation and reclaiming of memory in your
application. When ever you call new to create a new object,
GC will allocate memory from managed heap as long as space
is available and once it runs out of memory it triggers

17

magazine

collection, reclaim memory so that it can start allocating again.


We will go into some detail about GC algorithms, how they
work, different GC flavors, and how you can write a GC
friendly code.
.NET GC is a generational and mark and compact
algorithm. We have 3 generations (Gen0, 1 and 2). .NET GC
assumes that most of the objects you create die young, so only
a part of your entire manage help can be collected (which is
much faster) than collecting the entire manage heap. GC first
marks the root objects (to find out those who are alive) and
then compacts the heap (moving all live objects to a part of the
heap which forms older generation(s). Always, allocations
happen in Gen0 heap. The initial gen0 heap is some fraction
of the last level cache. The idea is to have gen0 fit in the cache
to avoid cache misses.
.NET GC Flavors:
Workstation GC (WKS)
Server GC (SVR)
Note : Selecting appropriate GC flavor is essential for
optimal performance of your application

Workstation (WKS) GC: WKS GC has 2 variants.


Concurrent GC (on) which is the default and can be turned
off. Concurrent GC (on) will have less pause time, increasing
the UI responsiveness. GC stops the application threads for a
shorter duration when absolutely necessary. If you have a
throughput kind of application (console app non UI) then
turning off concurrent GC might get you better performance.
In your application configuration file (ex: foo.exe.config), you
can add following [2]
<configuration>
<runtime>

balancing the allocation on heaps) and as mentioned above it


is not the default. To enable Server GC, add the following in
application configuration files.
<configuration> [2]
<runtime>
<gcServer enabled="true"/>

</runtime>
</configuration>
Tips for selecting appropriate GC :

For all server throughput related applications,


consider selecting Server GC
ASP.NET web applications on >1 proc machine
automatically selects SVR GC. However if you want to run
web garden scenario, then consider using WKS GC as the
memory foot print might be really high as a result of multiple
w3wp processes. SVR GC assumes it is the king and so will try
to grab as many resources as possible. So if you have multiple
processes running SVR GC, there can be degradation in
performance and also an increase usage of system resources.
In order to enable ASP.NET using WKS GC, add the
following configuration to the Aspnet.config file. This is in the
same directory as Aspnet_isapi.dll.
<configuration>
<runtime>
<gcServer enabled="false"/>
<gcConcurrent enabled="false"/>
</runtime>

</configuration>
If you have a client UI application which requires UI
responsiveness, consider selecting WKS GC with Concurrent
enabled

<gcConcurrent enabled="false"/>

</runtime>
</configuration>
WKS GC has 1 heap per process and it has 1 GC thread
per process. WKS GC is the default even on multiprocessor
systems for any non ASP.NET application. ASP.NET
automatically chooses SVR GC if you are on a multi processor
system.
Server (SVR) GC : As the name suggests, SVR GC is
optimized for server based applications (better scalability). It
has 1 GC heap per Processor and 1 GC thread per 1 GC heap.
For example, if you are on a 4 processor system, you will have
4 heaps and 4 GC threads operating on each of those heaps. A
process can create objects in multiple heaps (for load

18

If you have Console application (no UI but throughput


app) then consider turning off concurrent GC for better
performance.
If you want lesser resource utilization in a system
(memory etc) then consider using WKS GC.
Note : When you ask for Server GC on a UP machine, you get
WKS GC with concurrent off. CLR assumes that since you are
asking SVR GC, you are more interested in throughput than
UI responsiveness and so automatically turn off concurrent
GC.
Tips for writing GC Friendly code :

a. Never Call GC.Collect from your code: .NET GC is

ICT CONNECT MAGAZINE

magazine

a dynamically tuning GC. At every collection it collects


information such as survivor rate, and tunes its internal GC
tuning parameters so the next GC is more effective than its
previous GC. Unlike Java, .NET GC doesnt expose many
tuning parameters for the developer. So when you call
GC.Collect in your code, it collects those parameters. Since
you induced GC the next GC will not be as productive. Also, if
GC.Collect is executing not just once but many times (lets say
before you start expensive time consuming work and so you
need more memory) then GC will not be productive at all. But
there is an exception. If you know that you opened a custom
form and made some configuration changes and you know
that you are not going to need that form any time sooner, you
can go ahead and call GC.Collect() so all the long live objects
in Gen2 are now dead. It is recommended to use the following
code (starting from Orcas build). Here even though GC.
Collect is called on gen2, GC will decide if it is helpful if it
collects (2nd parameter Optimized). This is not available in
VS2005 and older versions.
using System;
class Program
{
static void Main(String[] args) {
GC.Collect(2,
GCCollectionMode.Optimized);

}
}
b. Create objects that die young: .NET GC is
optimized on the premises that most of objects allocated
are temporary and die young so they can be collected in
gen0 which is cheap. (2)
c. Dont allocate too many objects: One little line of
code could trigger a lot of allocations. Most of the time, it is an
allocation that triggers a collection. Keep an eye on what you
allocate particularly in loops (2)
d. Dont allocate too many almost long-life objects:
Objects that are neither temporary nor long lived end up in
Gen2 and die. This puts pressure on gen2 heap and you may
end up doing full collections which is expensive.(2)
e. Dont allocate too many temporary large objects:
Large objects (>85K size) are allocated on a separate large
objects heap which is never compacted (it is expensive to
move many large objects during compaction). This could put
pressure on large object heap, resulting in your doing full
collections, also expensive.(2)
f. Dispose and Finalize: Implement these only when
needed. Make sure you call these when an exception occurs (to
avoid a memory leak). Also make sure you implement finalize
only when you have an un managed resource and keep the
code very simple. (2)
ICT CONNECT MAGAZINE

Tips for improving manage code performance :

We covered threading and GC and now we cover the general


VM, code generation and basic ASP.NET and ADO.NET tips
for writing better code
a. Avoid unnecessary boxing [1]
int i = 123;
object o = i; (Implicit boxing) //box keyword
int j = (int)o; //unbox keyword
When ever we box, a new object is created on the
managed heap and the value is copied in it. If we are doing this
frequently, then we will create lot of objects (affect GC) and
also the extra code we execute for boxing and unboxing.
b. Consider using strong typed arrays or generics
(Visual Studio 2005 onwards)
Foo myFoo = new Foo();
myArrayList.Add(myFoo);
Foo myFoo = (Foo) myArrayList[i]; //castclass
keyword
Collection classes take generic object as a parameter.
Type casting is required when retrieving objects(your type)
from the collection classes. This requires an expensive run
time type check by looking at method table of that object. If
your object is inherited then this may require traversing one
level up which is again expensive. You can avoid this by using
generics (similar to C++ template) as shown below which
doesnt require run time type check as it is known at the
compile time.
List<Foo> myList = new List<Foo>();
Foo myfoo = myList[i]; //no check reqd
c. Throw fewer exceptions: Throwing exceptions can
be expensive as stalk walk is required etc for managing the
frames. Dont use exceptions as a control flow in your
application
<Wrong>
void foo (int parameter)
{
int ret = 0;
val = . ;
try
{
ret = val / parameter;
}catch(DivideByZeroException) { return
ERROR_VAL ;}
}
<Correct>
void foo (int parameter)
{
if (parameter == 0) return ERROR_VAL; else { ;}
}
d. Use StringBuilder for complex string manipulation:
Whenever you modify a string (such as append etc), it will
create a new string leaving the first one to be collected.
Consider using a StringBuilder if you have > 5-7 string
manipulations.

19

magazine

e. Dont use too many Reflection APIs: Reflection


APIs depend on the metadata embedded in assemblies. Thus
parsing and searching this information is very expensive.
f. Dont make functions unnecessarily virtual or
synchronized: JIT might disable some optimizations and so
the generated code might not be optimal
g. Dont write big functions: JIT might disable
optimizations for faster compile (JIT) time.
h. Avoid calling small functions inside loop: Consider
inlining yourself (incase JIT has not done it). Any mistake in
the loop is magnified.
i. Prefer arrays to collections unless you need that
additional functionality that collection classes provide [1]
j. Use jagged arrays instead of multi dimensional arrays
since the former has some special MSIL optimizations for
faster array access [1]
k. Smaller working set produces better performance
and so consider using ngen for shared pages
l. Dont make too many Pinvoke calls (chatty calls) and
do less work in unmanaged code: The overhead of transitions
(managed to unmanaged and back) can negate performance
speedup or even hurt.
Ngen : Ngen.exe (shipped with CLR) invokes JIT compiler
on MSIL to create native code and stores it in the disk. Once
the native image is created, runtime uses this image
automatically each times it runs the assembly. Using native
image will eliminate compiling on the fly using JIT compiler at
runtime thus reducing application startup time.

Ngen.exe can help improving application performance by,


Reducing the application startup time Consider using
ngen.exe for improving startup time of your winform based
application. Always measure with and without ngening of
your application.
By reducing the total memory consumed by application
that use shared assemblies (which are loaded in to different
application domains)
Interop : When you build applications in managed code,
some times it is necessary to call unmanaged libraries such as
calling a COM component. In some cases, you want to use
unmanaged code for some performance related reasons as
well (such as calling 3rd party highly optimized libraries). CLR
provides several ways to do this.
Using Pinvoke (Platform Invoke) Allows calling of
Windows DLLs, Win32 APIs or custom dlls from managed
code (1)
Using MC++ (IJW) For users for MC++ to call
standard DLLs (1)
COM Interop Manage languages to call COM
components through COM interfaces. (1)
To be Continued in the next Edition

CALL FOR PAPERS


ICT Academy of Tamil Nadu publishes peer-reviewed international journals. With the objective of creating Indian-based
Journals of International quality and to build up local research content, ICTACT upholds a quality platform and welcomes Scientists,
Researchers, Academicians and Engineers to submit their original research papers which is neither published nor currently under
review by other journals or conferences.
Papers should emphasize original results relating to the theory and/or applications of the respective areas. Review articles,
focusing on multidisciplinary views are also welcome. The Journal will highlight the continued growth and new challenges in both basic
research and application development. ICTACT publishes the following peer-reviewed International Journals on Quarterly basis

ICTACT JOURNAL ON COMMUNICATION TECHNOLOGY (IJCT)


ICTACT JOURNAL ON SOFT COMPUTING (IJSC)
ICTACT JOURNAL ON IMAGE AND VIDEO PROCESSING (IJIVP
ICTACT Journals can also be subscribed at highly subsidized cost for the benefit of the Institutions and Researchers.
Subscription Details :
Subscription Cost

Type
Individual
Academic
Industry

Each Journal
US$ 150
. 5,000
US$ 150
. 6,000
US$ 200
. 5,000

3 Journals
US$ 300
. 10,000
US$ 300
. 15,000
US$ 400
. 10,000

Subscriptions are payable in advance by Demand Draft in favor of ICT Academy of Tamil Nadu, payable at Chennai.
Note: There is no Publication cost for the authors
For further details, visit us at www.ictact.in/journal.htm

20

ICT CONNECT MAGAZINE

You might also like