Recently, there has been a lot of buzz around WEB APIs and
developer versions of popular social networking companies like Twitter and Facebook.
There was a time when the industry was obsessed with SOA and you had to be
doing SOA to do it right. Reusability and Loose coupling were the much needed
aspects. While this is still the case, the use of Web Services to implement the
service-oriented architecture is giving way to REST-based services which are
much faster – to implement as well as to understand.
Also more and more individuals are interested in creating
their own mobile apps with the advent of platforms like Android SDK, IBM
Worklight, Phone Gap and trigger.io
REST is Representational State Transfer. It’s a protocol
based on HTTP which defines everything on the internet with a unique identifier
So for example your Facebook profile picture is also a
resource on the internet which is uniquely identified. You can GET it using a
URL, you can POST a new picture of yourself, PUT (edit) the existing picture or
DELETE the picture.
The catch is that you are not doing all this using the Facebook
page, but using URLs (or more specifically – Facebook Graph API); the advantage – you can plug this functionality
in a custom app you write.
So how does this all fit in together? Let’s put together the
pieces of this jigsaw puzzle and look at the primary actors/stake holders in
The Provider Story
The providers are the companies (or individuals) who have
built some custom functionality which is unique to them. They now want to make
it open for anyone to use. So they come up with their APIs (Application
programming Interfaces) which are on the WEB, hence called WEB APIs. Simple,
The simplest to understand, consumers are simply put the
people who use the WEB APIs. So this is you and me. The consumers can also be
enterprises. We need the APIs. How else would we know how to get that much
desired resource which is lying in some corner of the Internet?
As already discussed you and I can plug-in the functionality
provided by someone else in our own app – something like a mashup.
A very common example is companies using Facebook/Gmail
credentials to let you log in to their websites and then posting content on
your timeline. You can use Facebook Graph API for this purpose.
The primary tenet is
reusability- why build something which someone has already built and is making
WEB APIs or REST based services open the gateway for
This post might help in integrating Facebook login into your
You need a cab in a city which is new to you, what do you
do? Yellow Pages...
The Middle Managers are the yellow pages (intermediaries)
which collect information about multiple providers and make them available to
Not all companies have a wide social appeal, most are more
specific and domain-oriented. The central managers come to build the bridge
between producers and consumers which would otherwise not know each other at
In addition to acting like a directory of provider WEB APIs,
middle managers may choose to provide certain value-adds to the providers –
like providing API Analytics, which help the provider improve their services,
or help know who is their primary customer base, when was the API accessed the
most, which geography this is most popular. This is indeed an upcoming trend.
This is where IBM Cast Iron Live for Web APIs comes into picture.
I am Neha Jain and I am a part of the IBM India Software Labs since July 2009. I graduated in Bachelors of Computer Science & Engineering in 2009. The 2.5 years in more in IBM have been a rewarding journey and I look forward to being a much more active participant in the community of developers around the globe. I am a part of the WebSphere group and have been in the test team and currently a part of development team. I have presented at several internal conferences like RTLE(Regional Technical Leader's Exchange), WIT(Women In Technlogy) forums and DeveloperWorks webinar on SOA Governance. I have authored a couple of developerWorks articles. Besides this I am an IBM Certified SOA Associate and an Oracle Certified Programmer for Java Programming (formally known as SCJP).
I try to bring a lot of passion to the work I do everyday and not do it as a chore. Besides that my art hobbies and my faith keep me on track and help me maintain a balance.
As women, creation is something we have been endowed with naturally, similarly creating a new piece of code from scratch or improving something in an existing code, or solving problems for customers who are facing issues bring immense joy, something which can only be felt when you do it.
As freshers from college we have immense amount of hopes accompanied by some fears about the corporate life ahead. As women in technology, it is our responsibility to carve a niche for ourselves. If we keep on complaining and pitying ourselves, the world will see us in that light. But if we stand up and be a change, we are bound to be treated with the same respect. Respect in work comes in the way you face the challenges ahead of you and in the way you code, create or manage to be a change. And this spirit to never give up no matter what comes from a balance in all aspect of our lives.
We might settle for lesser roles or become lax in work, college or elsewhere under the pretense of being a "poor woman", But we have to stand up as a "strong woman" who earns that respect.
As women we are natural motivators, and we should use this trait to become a teamplayer and help the team bind cohesivally.
Another important aspect is that we might become so overly concerned about the code and the technical depths that we forget to build our overall personality and presentation skills. Remember, it is very important to communicate what you do and sometimes bragging about your abilities might just help others know better about your achievements.
Today we are no short of examples of successful women leaders, CEOs and enterpreneurs in technology. IBM's new CEO, Ginni Rometty is an inspiration for each of the young girls out there. Quite a few times, when we might feel limited by our own abilities and start the comparsion and fall into an endless loop of self-pity, the best thing would be to live a life true to ourself and bring out the immense potential which each of us have been blessed with.
As freshers when we leave our homes to live in a completely new city- everything from managing your daily routine to your work might seem a Herculean task. But if you decide to be in harmony with yourself, everything will just fall in place. I personally take out time to exercise and cycle in the morning followed by a winning day at work and back home to decide whats cooking for dinner. Add to that the project deadlines, the unresolved defects, the bug in your code, the certifications you plan to do. The key is not to get boggled down by all this, but let these things fuel your path to success and enjoy every experience.
A career in technology is indeed a rewarding one for women. There are so many support groups and programs focused on women that you will almost never feel alone. Today competition has given way to collaboration. So with our inherent abilities to create, solve problems and look at things from a bigger perspective, we ought to become assets for our teams charting their path to success along with ours.
IBM WebSphere Application Server is a robust, enterprise class application server that provides a core set of components, resources, and services that developers can utilize in their applications. In this blog, I am going to talk about Application Edition Management and Automatic Deployment through scripting.
What is Application Edition Management?
Many business applications require constant availability. The standard for application availability asserts that applications are deployed on application server clusters. The redundancy of a cluster is essential to provide continuous availability. Interruption-free application upgrade refers to the ability to upgrade while maintaining application continuous availability. In other words, users of the application experience no loss of service during the application upgrade.
When you perform a rollout to an edition, you replace an active edition with a new edition. To provide interruption-free application upgrades, performing a rollout to an edition includes the following items:
Fencing a server from receiving new requests.
Quiescing requests for the application in a particular server.
Stopping the currently active edition.
Starting the new edition.
Resuming the flow of requests to the edition.
To perform a rollout to a target cluster, you can divide the cluster into groups, and define a group size, which specifies the number of nodes to process at a time. Performing a rollout to a group results in the servers in each group being upgraded to the new edition at the same time. Each server in the group is quiesced, stopped, and reset. A rollout can be performed on only one group at a time in the administrative console. When any member in the new edition becomes available, all requests are routed to the new edition.
As you perform a rollout to the edition, some servers in the cluster move from the previous edition to the new edition, some servers are in the process of making the transition, and other servers have not started the transition. All application requests are sent to any server that has an active, running instance of the latest edition of the requested application. For example, when you perform a rollout from edition 1.0 to 2.0, all application requests are served by edition 2.0 when edition 2.0 becomes available on a server. Any servers that are still running edition 1.0 do not serve requests until this server is updated to edition 2.0.
Performing an atomic rollout to an edition replaces an edition on half of the cluster at a time to serve all user requests with a consistent edition of the application. All user requests are served by either the previous or the new edition; user requests are never served by both editions.
An atomic rollout ensures that all application requests are served by a consistent edition, for example, either edition 1.0 or 2.0, but not by both. The currently available edition is taken offline from half of the servers that comprise the cluster. In those servers, the new edition is activated and started, but those servers are held offline until the next step completes. The next step is to take the currently active edition offline in the remaining servers. At this point, no server has an instance of either edition available to serve application requests. The ODR temporarily queues any request that arrives for this application. After the application is fully offline, the first half of the cluster is brought back online. The second half of the cluster transitions from the previous edition to the next edition and is brought back online.
Automatic Deployment with Ant Script
I amassuming by now that you are comfortable with the edition management concept of WebSphere server. In this section I will try to explain how you can achieve it in your organization once deployment is finished. I am assuming the target deployable artifact (EAR, WAR etc) is already prepared by you. The automated script will perform following task for you:
Install the deployable artifact on server
Add the shared library reference to it
Rollout the current edition
If you don’t have any shared library reference in your application then you can modify the script create your own version. You can use this script in both clustered and non-clustered environment with little modification in code. I will explain both processes here. So let’s get started.
You need to follow below steps in order to make below script to work:
Download build.xml and save it into some accessible location.
Update the values in all property tags as per your WebSphere.
Once values are updated correctly, move this file to the server on some accessible location on which WebSphere Deployment Manager is running.
The given script contains following targets:
listApps : This command lists all the applications installed on the server
installAppOnCluster : This command install and application ear on specified cluster
installAppOnServer : This command install and application ear on specified server
addSharedLibrary : This command will add shared library to the installed application
rolloutApplication : This command rolls out an edition to server or cluster
startDeploymentOnCluster : This command depends upon installAppOnCluster, addSharedLibrary and rolloutApplication. This is the target you need to run in order to start the deployment process on Cluster.
startDeploymentOnServer : This command depends upon installAppOnServer, addSharedLibrary androlloutApplication. This is the target you need to run in order to start the deployment process on Server.
Update com.ibm.SOAP.requestTimeout = 1500 value in <WAS_HOME>/profiles/<Deployment_Manager_Profile>/properties/soap.client.props. Deployment Manager restart is required after this step.
You need to download addSharedLibraryScript.py and save it to <WAS_HOME>/bin folder of your WAS installation. You don't need to update anything in this file.
Once above step is completed, you need to place your deployable artifact at path specified against "server.home.dir" property in build.xml file.
Once step 5 is completed make sure that deployment manager and the server (at least one server from the cluster if you are deploying app on cluster) on which this artifact needs to be installed is running.
Depending upon where you want to install the app, run either startDeploymentOnCluster or startDeploymentOnServer target as below:
Navigate to <WAS_HOME>/bin folder
For Windows: ws_ant.bat -f <path_to_build.xml_file> "<target_name>" (target name has to be in quotes)
For Linux: ./ws_ant.sh -f <path_to_build.xml_file> "<target_name>"(target name has to be in quotes)
That is it, if everything goes well you will be able to install the new version of the application and be able to roll out it.
In addition to providing interruption free delivery of your application to your customer, you can also save the valuable manual deployment time if you use this script.
This women's day i.e. 8th of March 2012, I had the opportunity of attending "Enterprise Cloud Conference" by Jason Bloomberg. Jason Bloomberg is a SOA and Cloud thought leader and the president of Zap Think. The conference was aimed at cutting the crap around cloud computing. Cloud has become a much used jargon without many people understanding what it actually means. So as a representative of you all, I would like to share a few takeaways from the conference. The conference was aimed at providing a bird's eye view of cloud computing terminology, what it is and what it is not. I would follow the same pattern used during the training to report my learning. The theory was complemented by a few practical case studies of companies who have used the Cloud to run successful businesses.
The conference was held in 4 cities, Bangalore being one of them and saw several companies participating. There were delegates from IBM, HP, Cisco, Akamail, 3i Infotech, Mphasis, Mindtree, Samsung and Fidelity to name a few.
Module 1 : Cloud Introduction and Definitions
So what is this whole Cloud thing? What are cloud characterisitics?
Cloud Computing is first of all not a computing model. It is essentially a delivery model. It has been existing for decades now, so to say this whole cloud computing thing is Old Wine in New Bottles. What essentially this means is that Cloud Computing is another term for services delivered over the Internet or the World Wide Web. This has been long existent in SaaS applications (Software as a Service). The email and web apps which you have been using for quite some time now are variants of this. Where Cloud goes ahead is delivering an OS or even an entire hardware configuration as a service. This means that small startups can enjoy the advantage of huge computing powers and custom platforms without actually having to buy hardware and set up their own datacentre.
Summing this up, the key characteristics are:
A pay-as-you-go financial model
Rapid Elasticity to scale up to your needs
Multiple users (tenants) can take advantage of the same physical resource
On-Demand self-service via Automatic Provisioning of required services - No Manual Intervention
For the more technical definition-savvy, here is the Cloud Computing definition from NIST (National Institute of Science and Technology) "Cloud Computing is a model for enabling convenient, on-demand network access to a shared pool of confugurabke computing resources (e.g. networks, storage, applications and Services that can be rapidly provisioned and released with minimal management effort or service provider interaction"
What are the Deployment Models for the Cloud?
Deployment model refers to how you want to use the cloud to your organization's advantage more so where does the data resides and who operates the Cloud.
The various Cloud Deployment Models are
Private Cloud - A private cloud is owned and operated solely for an organization.
Public Cloud - This is the other extreme where cloud services are made available to the general public by a large industry group and is owned by an organization selling the cloud services. e.g. Amazon provides its EC2(Elastic Compute Cloud) instances to other organizations or individuals on a pay-as-u-go financial model.
Community Cloud - Shared by several organizations and supports a specific community that has shared concerned. e.g. several educational institues may own a community cloud to share/host resources and knowldege for a particular domain.
Hybrid Cloud - This is a composition of two or more clouds (private,community or public) that remain unique entities but are bound by technologies which enable data and application portability between them. e.g. IBM's Cast Iron help you to integrate your on-premise data (within the enterprise) to data on the cloud.
What are the various XXX-as-a-Service which I keep on hearing? What are the cloud service models?
In Cloud Computing anything which can be delivered to end-users on the Internet becomes a Service Model. The most commonly referred to Service models are SaaS, PaaS, IaaS
Software-as-a-Service - The primary users are Business End users who do not deal with any code or confuguration complexity. Use these to complete end-user tasks. e.g. Email, Office Automation, CRM, Website Testing, Wiki, Blog and Virtual Desktop.
Platform-as-a-Service - Developers and Deployers use PaaS to create and deploy applications and services for users. e.g. Middleware execution stack, service and application test, development, integration and deployment.
Infrastructure-as-a-Service - Iaas is used mostly by operations team (IT Infrastructure Personnel, System Managers/Administratrs) to create platforms for service and application test, development, integration and deployment. e.g. Virtual machines, operating systems, message queues, networks, storage, CPU, memory, backup services.
So when we say cloud, who are the actors involved?
A Cloud like any other service has a provider and a consumer. These are the primary actors.
A Cloud Consumer is a person or organization which uses services from a Cloud Provider whereas a Cloud Provider is a person, organization or entity responsible for making a service available to the interested parties. Besides these there may be Cloud Auditor which maintains the regulatory compliance to government guidelines; a Cloud Broker which helps a consumer to select and route to an appropriate provider much like an ESB(Enterprise Service Bus).
The backbone of all these is a Cloud Carrier which refers to the ISPs which provide Internet connectivity. No matter how fast your Cloud might be, if your network is slow, everything is slow in effect.
Is it true that Cloud is an extension of SOA?
Actually No. SOA and Cloud are two different things. Although both are related to services. But SOA is an architectural approach which guides how you should design your enterprise applications as a set of loosely-coupled reusable services; whereas Cloud is a deployment and operational model. Cloud can be host services which have been developed as per SOA philosophy.
Does Cloud provide me infinite resources? Because of the vast computing and physical resources on the side of the cloud provider, the cloud gives an "illusion of infinite capacity". So as a matter of fact Cloud does not literally provide infinite resources. The Cloud characterisitic which gives this illusion is elasticity.
With the advent of the cloud, there was an immediate worry about What happens to the existing Enterprise software and hardware? What happens to my existing apps? Do I need to re-architect everything for the cloud.
The truth is that most enterprises are taking only baby steps towards Cloud Computing. e.g. Email, Salesforce, Web apps/sites, Office apps etc. The main reason for this is the initial skepticism about a new buzzword as well as lack of enterprise-readiness to adopt the Cloud Strategy head on. The main reason for the slow acceptance is mainly that enterprises are just not aware of their business challenge they want to tacke with the Cloud. The most appropriate step is to first understand you problem and seek the question to which the answer is Cloud.
On the other hand, enterprises have already worked on modernization and rationalization of most of their legacy apps. Also they have already implemented a reusable modular architecture in their enterprise by the use of SOA (Service Oriented Architecture) principles. SOA Governance whose need is now being understood by many enterprises is an added winning advantage for their enterprise. Because we already have it, the SOA governance framework can be extended to govern cloud services.
So is Cloud the end of enterprise software? Do enterprises really not need to buy hardware any more?
The answer to this question is largely dependent of the business problem of the enterprise. If its a large telecom company or a bank , doing away with entire enterprise software or hardware makes little sense.
However, for college graduates who are looking at establishing their own startups, the need for spending a lot of money on the hardware is virtually eliminated. They can rent a PaaS solution (the most common is Amazon EC2 <Elastic Compute Cloud> instances) and get to work. In cases like startups or pilot projects, Cloud Solutions are actually a boon.
What are the big companies doing about cloud? Oracle, IBM and Microsoft?
Disclaimer: The following thoughts are my own analysis and most of it is from content of Jason Bloomberg's conference. They do not reflect the views or opinions of my company whatsover.
Oracle has launched a suite of products around IaaS, PaaS and SaaS. Oracle offers Sun hardware for their IaaS solutions and are essentially hosting Oracle middleware on the cloud. They call their SaaS solutions as Oracle Fusion Apps.
IBM's cloud strategy is not aimed at the end-consumers. Their target is the big enterprises and large telecom providers who actually provide enterprises with the infrastructure to host their cloud solutions. So these are more like the ISPs (Internet Service Providers). IBM's solutions are mainly around PaaS.
Microsoft basically brand their cloud solutions under the Windows Azure tagname. Windows Azure Platform and Windows Azure Platform Appliance is their PaaS offering whereas their major SaaS offering are the Office 360 apps.
So how do I get out of this mess? To use or not to use the Cloud?
The answer to this and the enormous Cloud solutions is two words - Architecture and Governance.
It is essential to identify the business problems the Cloud best addresses, and to see where the Cloud fits into the overall IT strategy of the enterprise. What are the pros and cons of Cloud versus any other alternatives, and how the Cloud fits in the overall governance framework.
The important thing to remember is not to grab any solution just because your favourite vendor has launched it, but you analyse objectively if your enterprise really fits into that readmade suit.
What can be a sample Cloud Computing roadmap?
Disclaimer: Directly from the docs
A simple Cloud Computing Roadmap can be enumerated as follows:
Culture/support assesment - Are you an early adopter?
Define Goals- Financial, Operational, Competitive, Service levels
I am a product developer? Do I have to redesign by products for the cloud?
The essential thing to understand is that unless the applications are re-architected to take advantage of Cloud benefits like Elasticity and Fault Tolerance, there is little sense in using a Cloud Solution at all. As the phased strategy to Cloud migration suggests, it is very important to take incremental steps to architect your solutions for the Cloud.
When you design with the aim of leveraging Elasticity and Fault Tolerance benefits of the cloud, you will end up with a better architected app. You don't know aheas of time how many Cloud instances your app will be running on, as such is makes perfect sense to spend a little time initially and design your app FOR the Cloud.
Can I ensure my ACID transactions in the Cloud?
We have grown up reading about databases and the magic word - ACID - Atomic Consistent Isolated Durable and as such we believe that all database transaction should necessarily be ACID for several reasons. However, with the advent of transactions in Cloud, it is no longer possible to have immediate consistency of data at all instances. What Cloud assures is Eventual Consistency - i.e. - Data will be consistent after a set amount of time passes since an update.
ACID is gradually giving way to BASE in the Cloud Context.
Basic Availability - Cloud supports parial failures without leading to a total system failure . (Cloud environments are inherently partition tolerant)
Soft State - Any change in state must be maintained through periodic refreshment.
Eventual Consistency - Its okay to stale some data some of the time
The BASE requirement for transactions in Cloud also suggests that companies where real time data and accuracy is of prime importance, Cloud might not be such a good solution. A clear example of where Cloud cannot be a good medicine for all ills. Examples may include, real time inventory management for product availability and banks.
(Banks may not want to adopt cloud for reasons other than BASE - security and government regulations may be major challenges).
The main takeaway for this module would be that the adoption of cloud depends on what is your unique problem. For Cloud, one size does not fit all. An enterprise needs to carefully weight its app's requirement for scalabilty and elasticity and then decide which Cloud deployment option is right for them.
In this instalment, I will cover in detail about the Cloud Deployment Options available and also speak about the multitenancy models in the cloud.
Module 2 : Cloud Deployment Options
Can we have only Iaas, PaaS and SaaS?
Infrastructure, Platform and Software are NOT the only things which can be delivered as a service. So this list is not exhaustive and probably you can get anything what you want as a service. Or so to say, you can get whatever the cloud provider provides you as a service.
IaaS, PaaS and SaaS basically provide a separation of responsibilities in terms of what resources are managed by the providers and which of those are managed by the consumers.
On one extreme there are on-premise applications in which there is no cloud provider responsibility at all, whereas the other extreme is software-as-a-service where everything down from the hardware basics like networking, storage, servers and visualization to the applicatkions and data is managed by the cloud provider. IaaS and PaaS fall in between these two extremes.
What is this whole thing about multitenancy?
With cloud computing comes the concept of mutitenancy. Tenants are users or applications which share the same resources and yet their data remains separate. This ensures security because even when the tenants use the same resources, their confidential data remains visible only to them.
There are several Mutitenancy models which have become popular with the emergence of Cloud Computing. The maturity varies from simply providing a virtualization layer over existing software to writing programs/software architected from scratch designed with cloud(scalability/elasticity) in mind.
Shared Hardware - This is the most basic flavour which has the Lowest App Development Effort and Time to Market. In this model, the same hardware is shared by mutiple OS. So even though the underlying hardware is the same, the tenants have their own OS. e.g. Basic Virtualization software.
Shared OS - In this model both the underlying hardware and OS are the same.
Shared Database - In this model the tenants share the same database. The applications architected for such a model should be carefully designed to avoid different tenants having the same table name.
Shared Table - This is the most mature model for tenancy. Requires careful planning and application has to be architected from scratch with concerns of elasticity and data separation in mind. In this model the underlying tables in the DB are also same, the data is carefully separated per tenant. We can say that this model supports full mutitenancy, it has more complex design but the most Effective Resource Usage and Scaling.
What are some of the services available to Cloud Consumers in IaaS, SaaS and PaaS ?
Here are a few common examples in each of the deployment options available for the cloud. IaaS -
Backup and Recovery
Content Delivery Networks
Development and Testing
Email and Office Productivity
Customer Relationship Management (CRM)
Content Management or Document Management
Enterprise Resource Planning(ERP)
In this module, I have touched briefly upon the various Cloud deployment options. However there is a lot of information available on these topics. I hope this overview helps you to dig deeper into the area of your choice and also provides a high level picture for you to fit in the pieces of the Cloud Puzzle. Keep Reading !!
We know that we can can develop a Web Service client on RAD using WSDL
definition. Then we can deploy the client application on WAS server and
send request to server application (running on WAS or Message Broker). We
can make this Web Service client application as a stand alone
application as well then we do not need to deploy the same on WAS
server. I have created a BankClient in RAD to demonstrate the same. I
created a WSDL in message broker and developed a flow with SOAPInput
and SOAPReply node. This flow acts like a server flow running on Message
Broker. WSDL has four operations like- CreateAccount, CreditRequest, DebitRequest and CheckBalance. Here are the required steps to make a standalone client application:
Create a Web Service client application from WSDL as you generally do in RAD.
Create a new main class under Java Resources as shown in following screen shot:
It is required to create an object of *Proxy class in the main and
then call all the operation using that object as shown in following
Remember to create required variables to call operations.
Save the changes and if any error then resolve that.
Now the next step is to change the *Service.java file for WSDL location.
Right click on your WSDL file under ->Web Content->WEB-INF->wsdl and select properties.
From the Resources window , copy the location of WSDL as shown below:
Search for wsdlLocation variable and change the value of that
variable to this copied location of wsdl. Do not forget to add 'file:'
before 'C:\' and change the slash from '\' to '/' e.g. wsdlLocation =
Now add these 2 lines and update them as per your file structure.
Also update the wsdl path 'MalformedURLException' and
'logger.warning' as shown below:
Now it is required to add thinclient jar for webservices in Build path.
Right click on your Client application and select Build Path -> Configure Build Path.
Select 'Libraries' tab and click on 'Add External JARs....'. Select 'com.ibm.ws.webservices.thinclient_7.0.0.jar' from WAS installed location. Select 'Order and Export' tab and click on 'Select All' button. Then click on OK.
Now Client is ready to run as standalone application. Right click on
your Client application and select Run As->Java Application.
Note: If you are looking for artifacts then please contact me.
As one of the core developer of DB2 Connect CLI team, I got an opportunity to work on supporting generic special registers feature. Idea behind this blog is to spread some of the benefits and usage to help application development community understand it better to leverage the same.
Though focus of this blog would remain CLI centric, similar concept exists in other client drivers like IBM DB2 .NET provider and IBM JDBC driver (aka JCC).
IBM Data Server Driver configuration file (by default named as db2dsdriver.cfg) is catching its popularity among the customers due to its capability of allowing different DSNs and database properties configuration in a central repository manner. In addition, being in XML format, it takes a less of an effort for any user to get used to such configuration files. In DB2 Connect V10.1 Fixpack 2, CLI added new capability to db2dsdriver.cfg by allowing users to set special registers generically.
Before I go deep into the feature explanation, let me begin with answering few basic questions:
What are special registers?
A special register is a storage area that is defined for an application process by the database manager. It is used to store information that can be referenced in SQL statements.
To know more about special registers with examples, refer to the following link:
What is the existing method of setting special registers from client applications?
There are set of special registers which can be set (or updateable) by the client applications. Application can modify such special registers programmatically using “SET” SQL statements. There are few special registers for which DB2 CLI provides connection level keywords. Application can set these keywords either via db2dsdriver.cfg or db2cli.ini configuration files.
Limitations using existing method of setting special registers:
Setting special registers programmatically expects modification of the application source code and recompile each time special register needs added/removed/modified. Also, this needs to be taken care in all impacted application programs.
Using special registers which can be set as CLI keywords can be a better approach than former, but with limited list of such keywords, applications do not get complete solution. CLI can be enhanced to support requested special registers as a keywords, however with data server introducing new special registers at each release, this remains an ongoing solution. This expects users to upgrade their client drivers to be able to get newer special register support as keyword.
What is the newer mechanism CLI provides to address above situation?
To overcome the drawbacks of both the above approaches, it was desired to have a more generic solution to be developed. As a result, CLI has introduced a unique section of special registers viz. <specialregisters> in the configuration file db2dsdriver.cfg. This section allows users to specify a list of special registers that they like to configure. Based on the need, <specialregisters> section can be added at a DSN level or a database level or even globally.
During each connection to a given DSN or a database, CLI reads through db2dsdriver.cfg and processes <specialregisters> section in the following manner:
- read each special register name and its value from <specialregisters> section of a given DSN or a database
- “without scanning/interpreting” form a chain of special registers to be sent to the connected data server.
- upon the first SQL of the connection, flow chained special registers to the server
- server will process each special registers of the chain (along with the 1st SQL of the connection) and set it appropriately at the server.
As we can see from the above logical flow, with this feature, CLI has no dependency to know the special registers to validate. It will simply flow the entries from <specialregisters> section to the server and let server do necessary validations. Another benefit we can see here is because flow of the special registers is chained together along with 1st SQL statement of the connection, network trips to set the special registers is saved significantly now.
When server upgrade occurs and user application likes to set newly supported special registers, with this new feature of CLI, all user needs to do is to add that special register in their <specialregisters> section! As we can see, no driver upgrade is needed here in order o use newer special registers.
Illustrating usage of <specialregisters>
Having given some background, I can now proceed with the working of this feature. Let’s begin with adding <specialregisters> section to existing / new db2dsdriver.cfg configuration file:.
Interpreting <specialregisters> section from above sample:
1. Special Registers applicable across all DSNs/databases ( residing under global <parameters> section)
CURRENT DEFAULT TRANSFORM GROUP = 'MYSTRUCT2'
CURRENT LOCALE LC_MESSAGES = 'en_CA'"
2. Special Registers applicable for DSN = sample
CURRENT SCHEMA = 'MYSCHEMA'
CURRENT DEGREE = 'ANY'
CURRENT DEFAULT TRANSFORM GROUP = 'MYSTRUCT2'
CURRENT LOCALE LC_MESSAGES = 'en_CA'"
3. Special Registers applicable for database = sample2
CURRENT SCHEMA = 'MYSCHEMA1'
CURRENT DEGREE = 'ANY'
CURRENT DEFAULT TRANSFORM GROUP = 'MYSTRUCT2'
CURRENT LOCALE LC_MESSAGES = 'en_CA'"
The above configured special registers for relevant DSNs/databases come into effect with the first SQL statement given post connection. It is at this point the special register settings are applied at the server.
Code snippet from application
// connect to a data source
cliRC = SQLDriverConnect(hdbc,
// Execute a SQL statement
cliRC = SQLExecDirect(hstmt, (SQLCHAR *)"INSERT INTO myTab VALUES(10)", SQL_NTS);
In the above application logic, "INSERT" is the first SQL statement post connection. Along with this SQL statement, the effective special registers list (as listed in the db2dsdriver.cfg) is formed and these special registers get set at the server. In case any special register setting at server has resulted in any warning or an error, those will be chained to the result of 1st SQL’s response. Application can call SQLGetDiagRec() API to retrieve any warning or error details to diagnose the problem.
Where I cannot use this new feature?
To enable client info properties, it’s not recommended to use <specialregisters> section. Existing mechanism either via CLI keywords or environment/connection level attributes can be used instead.
If application logic desires to set special registers during the connection (not at initial phase of the connection), or if they like to change the special registers in between, then setting special registers programmatically is the only way. New feature is useful only as initial value of the special register for the connection.
In summary, as an application user, one can get below benefits with the new feature:
1. Savings in time and network utilization by reduction in network flows
Reduction in network round trips between client and servers since most optimal DRDA protocol is used while flowing special registers set information to the server.
Moreover by chaining set of special registers along with 1st SQL of the connection saves another network round trip by using piggyback mechanism.
2. Less maintenance and upgrade of the driver:
The new approach avoids necessity of driver level upgrade just to exploit any new server special register. All users need to do is add the new special register entry in the <specialregisters> section to the existing drivers’s db2dsdriver.cfg file (minimal driver level requirement is V10.1 Fixpack 2). Knowing many big organization having thousands of client drivers installed at each workstation, this saving brings lot of relief to them.
3. Centralized maintenance:
Using central configuration method for db2dsdriver.cfg, users can now have much controlled manner to add/remove/edit the special registers for their applications. Also, with flexibility of using <specialregisters> under DSN, database or global level, user can tune their need quite easily.
Here are some of the links that can be referred to :-
Hi I am Dhivya from the Team VIVID WINNERS and we got the ALL
GIRLS TEAM AWARD in the TGMC'10 contest. Now I am doing Final year IT in Mepco Schlenk
Sivakasi. I like to share about our project details. Our project is INFORMATION KIOSK which
aimed at developing an information kiosk for Sivakasi (which is in TamilNadu, India)
that is of importance to a person to know more information about the city. This
system will be more useful for the tourist and the person who is new to the
city. It also has some useful links like matrimonial, employment opportunity,
e-governance and also e-agriculture. One can also read the daily newspaper. The
tourist can view the route from the main bus station in Sivakasi to their
desired location. IBM TGMC contest make us to gain more knowledge and we feel
proud to share our experience.
My team mate Jothi wants to share the project submission process "We submitted our project as in the format
specified by TGMC. And at the time of the submission we didn’t think that we
will go this much. But we won the all girls team award . During the face to
face evaluation we were really very happy to get a chance to share our
experience with IBM TGMC. "
What Kanthimathi and Senbagareka(my team mates) felt when we were there in the felicitation ceremony is "Our Eyes gleamed with surprise when we came to know that we are one among the finalist in the felicitation ceremony . We were inspired by the video played in the begining of the ceremony.The thoughtful speech given by highly experienced people in IBM was awesome.We were out of the world when our names were pronounced in the Felicitation ceremony.That was one of the best moment in our life.And we were very proud to receive the “ALL GIRLS TEAM AWARD”. The price we won is always a memento reminding our great time in DELHI."
I want to thank my guide Prof.T.Revathi who supported us to do this project. She gave us lot of ideas to do this project. She referred the scoring criteria for the project submission and told us to use Ajax, to take backup of the database and to make the website available in the local language too. She also mailed us some reference web pages to do those things. And also she helped us during SRS preparation. She taught us about the OOAD concepts.
I also want to thank our department staff Mr.A.S.Karthik Kannan who gave us some ideas and corrections in our project to make our project the Perfect One. I like to thank Dr.K.Vijayalakshmi and Mrs. S. Kavi Priya who helped us to complete our project on time. I like to thank my entire department Staffs since they all encouraged us to do this project because of that we got energy during our tough time.
It's been seven years now since I entered the IT world and the journey so far has been so eventful that I won't go with common tag line - 'Time just flies......' :)
Setting up yourself and excelling in this competitive world and at the same time balancing your responsibilities at home does demand a lot from you. Every modern girl dream of standing on their own feet and be economically independent. That's the dream one chases for first 20-25years of one's life. I won't deny that, same was my dream too. I completed my Masters in Computer Technology and fortunately got a good break in good IT company. We all know that change is law of nature but the pace with which technology changes is really tuff to catch up with latest. One needs to regularly brush up their skills very frequently and that does demand a good amount of time from you.
So, that was about my professional role, going toward personal me, I am happy to share that despite being daughter and sister, I have the responsibilities of being a wife, daughter-in-law and most importantly mother of two small kids. If one starts counting the responsibilities that comes with that package, it won't be possible. Here, comes in picture what we call in IBM - Work/Life Balance. I would say, the stage I am in right now, is the most crucial and difficult stage. There are challenges in your professional life that you can not leave taking up as well as in personal life that you can not get rid of. There's testing time all through the way. You are being tested for your patience level almost daily. No wonder, we find many cases of Stress and frustrations in such situations. But, the key here is how we sail in these testing times, how we balance out things, how to set a demarcation between professional and personal life and coming out a winner in both area.
This is the phase when the most precious thing that you can think is - TIME. One needs to make best use of the time available. Time management is the key. There are some other important skills that comes as good help. These are : - Delegation of non-important work. - Focusing on key areas. - Saying 'No' to things that are really not in your area and you are not willing to go for that. - Spending some time for self only, when you can do some thinking/planning on course of action you really want to pursue. - Choosing the right direction. - Networking.
- Open for brainstorming, discussion with peers, seniors, family whenever you are in delima.
So, I would like to conclude with the note that one has to be wise enough and face the challenges in right spirit to grow and excel in area and role you are in no matter what's that.
Having worked for some time on LDAP for DB2,I thought it was better if I could highlight how and in which areas LDAP can help ,when working with DB2.So with a platform like that of developerette, I thought I would use this ,so here is a brief introduction on what is LDAP and how it best fits while working with DB2.
What is LDAP?
Today people and businesses rely on networked computer systems heavily to support distributed applications where the key information is stored in central repository.
Such information is often collected into a special database that is sometimes called a directory. The Lightweight Directory Access Protocol (LDAP) is an industry standard access method to these needs.
LDAP defines a standard method for accessing and updating information in a directory through TCP IP protocol. LDAP has gained wide acceptance as the directory access method of the Internet and is therefore also becoming strategic within corporate intranets. It is a centralized storage system of the organization data (just like email).
Useability scenarios for LDAP fitting best for DB2
The figure represents a typical LDAP topology where client connects to "payroll" database using the cataloged information present in the LDAP server.
This blog will talk about "Graphical Data Mapping Editor" which was introduced in WebSphere Message Broker Version 8.0 (hereafter called IBM Integration Bus).It will help as a quick reference for creating new maps, customizing a message map to include headers and editing the property of Transform Elements.
Graphical Data Mapping Editor creates/edits graphical maps. It is used to develop message mapping for Mapping Node. The Graphical Data Map( .map ) represents input and output message data in graphical format.
Graphical Data Mapping Editor has the ability to:
transform message from one format to another
modify data in database
route a message
build a new message
Graphical Data Mapping supports the following Message Domain:
It does not support JSON message domain.
The following use case illustrates how maps are created:
To create a new map, please execute any of the steps:
Double click the mapping node
Right click the Mapping Node -->Open Map
Click New --> Message Map on the Integration Development perspective
Specify if the Message Map is called by flow node or by another Map
Select Source Tree and Target Tree
The final step is to select domain, which completes the creation of a new map
The new created map can be edited with the Mapping Editor .
Mapping Input Source to Output Source:
Customizing to add Headers:
Editing the property of Transform Element:
Edit the property of any individual transform element to add a condition or assign a value as illustrated:
Mapping Editor Navigation:
Disclaimer: Each posting on this site is the view of its author and does not necessarily represents IBM's positions, strategies or opinions. I do not guarantee correctness of the opinions or content or sample code presented here. Use it at your own risk
Managing software and product lifecycle integration has always been a challenge and with the rate of the new demands on the enterprise the challenges are increasing. Leaders from different standards organizations and industry will lead interactive discussions on the importance of open technologies to help enterprises manage the lifecycle activities within their environments. Learn about the direction lifecycle integration is taking as a result of the inclusion of open standards and the importance of this work to you. You will also hear how you can bring forward your requirements and influence the supporting work activities.
The Open Lifecycle Summit will feature short lightning talks and panel discussions with industry leaders such as OASIS CEO Laurent Liscia, Tasktop CEO Mik Kirsten, Opscode VP of Solutions George Moberly, and IBM Fellows Michael Michael Kaczmarski and Kevin Stoodley, and IBM VP of Standards and IBM Cloud Labs, Dr. Angel Diaz.
The Summit is free to attend for all those attending IBM Innovate. Join us for an exciting session and refreshments to start your attendance at Innovate 2013. For more information and to RSVP visit http://ibm.co/16jTusU
Meet Bhawana, the energetic and bright woman of substance at IBM who dons many a hat on a daily basis to juggle her work in Tech Sales for Rational
and her role as a mother to her young daughter. She manages her work on
a tight schedule and we were lucky to capture some of her tricks in an
interview with her.
Please read on to know more about a career in tech sales for women,
meticulous time management and putting a child to bed on time…daily!
Thank you Bhawana, for sharing the details of your life and work with
us. You certainly have taken the road less traveled by women and are a
deep source of motivation!
Tell us about your role at IBM
At IBM, I am the Brand Architect for Rational. There are 3
aspects to my role: Understand a customer’s requirements/pain points,
analyze what solution would work the best for them and then design the
solution and its implementation. Rational has many products in its
portfolio and it’s my job to propose the one that would work the best.
What are the top 3 things about being associated with Rational
1. I love the challenge! As always there are many ways of achieving
the desired and it is stimulating to think of what could be the best,
the most optimal solution. I
2. You really need to know your stuff..It’s not just selling a
box…it’s talking about technology. You need to be convincing which is
only possible if you know the Rational portfolio.. breadth and depth. It
needs you to constantly read, learn, try.
3. On a lighter note, people in my social circle (daughter’s school
especially) take me seriously. I am able to live having my own identity,
somebody with some grey matter and not just a Mrs. Gupta or Jiya’s mom
How do you manage a demanding role as this and your family life?
I have processes set for daily routines which require minimum
intervention during the week when I am busy with work. Weekends are
completely home time. Saturday mornings devoted to restocking house with
groceries. Sunday mornings are breakfast outings coupled with a movie
I have an eight year old daughter, Jiya. This means I need to cater to
her various needs all the time.. It’s my role to keep things balanced
and stay focused on her and my work. Time management is the key to this
and I follow it strictly. 7pm to 9pm is the time I spend with my family
listening to her endless stories while eating. Post that, it is routine
homework, storytime and finally bedtime at 8.30 pm. My ‘me’ time start
at 9 pm till about 11pm, when I devote uninterrupted time to reading and
updating myself to stay ahead at work.
All in All it’s a balance between professional and personal needs. One
doesn’t really have to stop doing anything. You have to strike the
balance. It could take time, there are trying phases as well (no
household help) but it all still works out with some help from the
spouse and colleagues. Colleagues also play a big role in helping you
manage this balance.
Would you recommend a career in tech sales to women and aspiring students?
Although I chanced upon a role in tech sales, I would still recommend
it. The moment you hear sales, you associate men with the role. That is
why, I think it’s important for women to join this field to explore
their boundaries. You have to travel which is challenging for a women
with kids. Ultimately what matters is how determined are you to make it
work. If you have the energy, the grit and the determination, I say you
must go for it! Do something different and strive harder than the
others and prove that women can really multitask.
Please welcome Dr. J.Manjula, principal, GVG college for women, Udumalpet, Tamil Nadu. Dr. Manjula is a strong willed and courageus woman, on whose shoulders rests the ambition of the girls at GVG. She's a spirited professional, dedicated to her work, the well being of her staff and the future of her students. Above all, she is a progressive leader, who believes that nothing can empower the women of this country more than solid education and well defined career paths.
We are honored to have Dr Manjula speak to us about her powerful personal life, her devotion to the college and her advice to girl students across the country. Please read on.
Thank you ma'am for sharing your experiences with us, you lead by example in your personal and professional life, thus encouraging girl students and women IT professionals from all backgrounds.
Please tell us about your work and about your personal interests: Of the 35 years I've been associated with GVG, I've been the principal for the last 12 years. There are various achievements i'm proud of at GVG. Last year we crossed 340 placements. We were the first to get the NAAC accreditation and now have also been ISO certified. We're an autonomous college and so, have the freedom to design our own course curriculum. In the south, we are the leaders in development education and job skills and are enjoying the benefits of that.
Also I was rewarded the Excellence award conferred by the Rotary club. I have a son, who is settled in the States with his family. I am drawn to philosophy and am a member of the Art of Living society and follow Guru Mahan philosophy which provides me a lot of motivation. I devote all my time to the well being of the students, their curriculum, introducing new courses, the food at the hostel and other amenities.
GVG is a college of excellent reputation. How do you maintain that? The key is the focus on the girls. Even after they go to other countries for higher education, they never forget theor alma mater. We train them on life skills and not merely books. Once they graduate from GVG, the girls are knowledgeable individuals who have strong careers and are excellent home makers. All that is important for women, and we ensure there is plenty of focus on both angles. Various topics of empowerment are discussed with the girls like Cancer, Female Infanticide, Mental and Physical strength etc. Technology like Campus-i is used to detect, understand and eliminate the root cause of illnesses that are common to this area like anemia. This incomparable focus is what drives parents from faraway towns like Kanyakumari etc to leave their wards in the safety of GVG. Be it hot water, amenities, clean drinking water, activities or studies, there is no compromise on quality.
My aim is to give the best to the girls so they don't feel deprived because of being born in a small town with less opportunities. When they join companies, they are clearly identified as GVGians!
Companies like IBM have contributed greatly by providing opportunities and a stage for success to the students. More interaction from professionals is required for the girls to learn and grow and take up responsible positions in the corporate world.
What are some of the challeges the girls face in building careers in IT and how do you guide them? The big question is Career or Marriage? My answer is to win at both. I alsways give my example to parents and the girls, that I am a widow, lost my husband in a drowning accident and came out of the tragedy strong and empowered only because of my job. If I did not have a career and the financial indipendance to fall back on, my obstacles would have multiplied manifold. When the doctors declared my husband dead, my first words were, thank God I have a job in my hands and I will survive this. Education is a bigger gift than Gold and parents need to understand that. A job provides financial, mental and emotional well being to a woman. The other challenge is Communication. The girls here are shy, so we encourage them to face the crowd even if for 2 minutes and speak. The practice on a regular basis, helps them overcome their hesitation.
What is your advice to girls who aspire to succeed professionally?
I was sent to colleges in Haryana and Goa and other cities for mentoring and realised that girls everywhere need to focus on education and jobs rather than getting married first. I believe that we need to help the weaker students by spending time on the areas they are unable to cope with. 0 and 80 are just numbers and I don't criticize for poor performance. If you have the will to learn, the percentages will improve as well.
Values are critical. Be a good human being, that's primary. We do not allow the use of mobile phones and discourage the girls from friendships and relationships which lead them away from education.
Lastly, Make decisions in personal relationships that make your parents and teachers proud.
Meet Dr Seema Verma, the associate professor and the pillar of strength at Banasthali University, Rajasthan. Dr Seema is the key driver of change and has lent her guidance to many new, interesting and developmental programs at Banasthali like the Gliding & Flying Club.She manages being a professor, an author, a wife,a mother and many more roles without any compromises!
Please read her take on a life well balanced in her interview with developerette.
Welcome Dr Seema and thank you for sharing your achievements and success formula with the students and professional women at developerette. Your initiatives, time management skills and keen interest in technology would certainly motivate every member of the group.
1. An introduction: Professional background, family and interests
Myself, Dr. Seema Verma, is working as Associate Professor in Electronics at Banasthali University. In addition, I am Accountable Manager in Banasthali Vidyapith Gliding & Flying Club. I did my Masters in Electronics from Banasthali in 1999 and then awarded with Doctoral Degree in Electronics in 2003. Currently, I am guiding couple of researchers in the areas of wireless sensor networks, security in cloud computing, Cryptography and VLSI design. I have authored 4 books and out of them, one has been published from Lap Lambert Publication, Germany. I have been into programme committees of various IEEE international conferences and m into editorial board of various Journals. Family: I am from an educated family. My dad was District Engineer in BSNL and mom is currently Principal in Govt. Secondary School, Rajasthan. My husband is a Banker in SBI. I am proud mom of a very cute son, DAKSH who is 7 years old. Interests: I am always interested in learning new things, technologies and always love challenges in life. I like reading and travelling a lot. I love meeting people. 2. What made you choose a career in IT education? Can you explain how you guided your career to be where you are today? From my school days, I started thinking of being a technocrate…well, I did my master in electronics and thought of doing research in technology. Later, when I became a research guide I took up the latest problem/challenge areas in technology and started doing research on them. Passion for learning was the driving fire behind where I am today. 3. How have you balanced your professional and personal demands simultaneously? I never mix my two aspects of life and I never go for one on the cost of other….well, it’s more of one’s passion for work and personal life which makes things smooth. 4. What are some of the challenges you face in your role and how do you deal with stressful days? There is challenges everyday in every role a woman has. Well, when it comes to stress, the best way to get out of it is to spend time with young brains, i.e. my students…..I am having a unique asset in the form of my students….And after a long hectic schedules, I usually take a break and go for a break with my family, especially my son….as he is the best medicine I have for any stress I come across….. 5. The girls in your college are aspiring women in technology. What is your advice to students to stay focussed? I always nurture and encourage them to learn technology, participate and give maximum in the development in technology…..I ask them to just choose the goal first n then learn the ingredients and focus…that’s it…..
Jaskiran Bhatia has been in SWG ever since the Cognos acquisition in 2008. She was leading IM in Tech Sales and has recently moved to lead the Brand. In this short interview, she tells us about her passion for technology and which of the 2 roles she enjoyed more. With a young daughter, her take is...it only takes to prioritize to be successful in whatever you do.
Meet Kalpana, the immense source of inspiration at IBM India Software Lab. Kalpana has a rich pool of experience and has a calm demeanor, even on her busiest days! Director at IBM ISL and a mother to her 24 year old son, Kalpana integrates work and family beautifully while ensuring she gets out for a walk and enjoy mystery novels to de-stress.
Kalpana is passionate about contributing to women's growth in technical field and she extended her warm support to talk to us and provide encouragement to be positive, brave and above all..happy! Read her interview to know more.
Thank you Kalpana for opening the group with your valuable words.You are certainly our pillar of strength!
An introduction: Professional background, family, interests
I have 29+ years of industry experience and have been with IBM for last 19 years. I have been with India Software Lab(ISL) since its inception in 2001 and have played key leadership roles across functions in growing the lab to its current level. Born and brought up in Bangalore, I have completed my Masters Degree in Engineering from the Indian Institute of Science, Bangalore in 1982, after which I embarked on an 11-year career with PSI Data Systems. Family - I am married to a Chartered Accountant, have a son who is 24 years old and stay with my extended family which includes my mother-in-law. I like listening to old hindi music and read a lot and mostly fiction.
What made you choose a career in technology? Can you explain how you guided your career to be where you are today?
When I was in doing my undergraduate degree, I had a friend who was always talking about a post-graduate degree course in Engineering in the premier Indian Institute of Science (IISc) at Bangalore and that she was applying for it. So I just went along, took the entrance test, got through it and joined the Bachelor’s course in Electrical and Electronics Engineering. I also went on to do my Masters in Engineering from IISc itself. Thereby, a chance discussion and a lot of encouragement and support from my parents, my father in particular, took me along this path and here I am enjoying a career in technology!
How have you balanced your professional and personal demands simultaneously?
I like the current term a lot better - "Work Life Integration" than the work life balance. It has been a challenge given that we work in a global company. I try to keep the week-ends for my family and be there for important events or testing times. I ensure I am there when I am most needed. The flexibility work options provided by IBM are useful. I also built a good team with the team members having a strong mutual trust - this team contributes to each one managing work and life.
Our health tends to take a back seat due to work and personal commitments. What are your suggestions for nutrition and fitness? I believe that if the woman in the house stays fit and healthy, she can then ensure the others are healthy too. Health is one area where we must lead by example. Personally, I try and make time for walking, and I try to walk a lot! Also, have been interested in Yoga and have picked it up in the last couple of years.
Any advice on women who choose to pursue a career in technology?
Given our education and experience we have the skills to take up a career and be successful. But the challenge has been on who we think is responsible for our career. Personally I feel we are equally responsible as our manager and the organization. But first and foremost we have to decide “to want a career” and learn to look at work as not a physical place but a state of being, of integration with our regular flow of daily life. Career in technology is great place to be today - given the changes that are happening and how much technology is influencing our daily lives and also the various business. Opportunities are many. Go for it. In addition, Focus on Personal Excellence, never be satisfied with what you know, Integrity, Positive Attitude are important; try to maintain good relationship with people you work with; Never hesitate to ask someone to teach you what you want to learn and keep continuously learning.
Meet Ms Madhuri Rao, the enthusiastic and versatile assistant professor at Institute of Technical Education & Research, Bhubneswar.
Prof. Madhuri has a unique way of telling her stories, making them interesting and inspiring at the same time. She is a proud professional, daughter, book lover and a guide to her students. She's always ready to try something new and find motivation in the simplest of sources. Her career as a professor is a conscience choice to nurture and interact with young talented minds. Needless to say, her connection with her students is invincible!
Thank you Ma'am, for taking the time to share a part of your life with developerette. We hope to read more from you in the coming days.
Read about Prof Madhuri's unique style and her advice to follow your heart and keep a clear conscience while choosing your different roles as career women, wives and daughters. 1. Please share some details about your professional background, family and interests I am from a family of five daughters. I being the 2nd eldest ,always had a very responsible role to play . However I also play football during my school days. I always enjoyed shouldering responsibilities , be it in school , home or in the football field. With all five of us going to the same school and seeing the same teachers and knowing the same rules , made our growing up an experience unique in every way. Dad and Mom could not have given us a brighter childhood and upbringing than in the way they have nurtured us. We also made a record at Scared Heart Convent School, Jamshedpur , as the 2nd and the last family to have 5 daughters schooled in the same place and for us as a family with an association of over 2 decades. Well, details of each of my family member may be shared only in a special request in order to not bore away the other majority of readers!! :) Reading is my passion. Now a days programs on History Channel, Animal Planet and Discovery Channel also fascinate me....
After having finished Engineering at B.I.E.T , Odisha , I pursued my Masters in technology from Bharath University , Chennai . Economics is a subject that always fascinated me , and I therefore studied a second postgraduate course on M.A(Economics) from University of Madras in Distance mode. I am now pursuing Ph.D from Biju Pattnaik University of Technology , here at Bhubaneswar . I started my career at Slash Support as an Application Engineer in the year 2005 and then moved on with higher education.
2. What made you choose a career in IT education? Can you explain how you guided your career to be where you are today? I always wanted to teach. I have been doing it since childhood. Helping my younger sisters with their studies was something I always enjoyed. Being close to books always made me happy and reading and exploring new things gives me tremendous pleasure. I wanted a career where I could read something new all the time and I slowly managed to walk into imparting IT education. Most of my friends and classmates are big shots in IT companies, etc... but I never desired it that way. I want to see myself as a Ph.D and I do desire to work further towards a PDF as well. I am quite an orator and find delivering lectures and interacting with youthful minds and souls very satisfactory.
3. How did you guide your career to be where you are today?
By listening to my heart and conscience, and being sound and awake with realization of what choices I am making in life!
4. How have you balanced your professional and personal demands simultaneously?
Well,my upbringing is as such that I was always taught to give a patient listening to my very conscience and that little things always fails to demarcate between things. It sees no boundaries. I guess its all about doing right and wrong things. Its not about Personal and Professional things. As a teacher you can never say that you have Professional hours. You go home and you prepare for you next lecture. You cannot be annoyed even if you want when a concerned parent reaches you at hours other than 10 to 5. I stay balanced by being happy and I do things that make me happy. My parents guide me through my strenuous hours. Staying only 500 Km away from them also gives me an opportunity to meet them as often as I desire. I also have a wonderful group of friends and especially Vinod Sir & Laxmishree mam,who share their moments of research , lecture , family stuff with me and so do I. My HOD , Dr Pattnaik , and Associate Dean Dr Alok are very motivating people who themselves practice punctuality , righteousness and simplicity . Our School of Computer Science celebrates all festivals, organizes picnics and other cultural events as well. I must say that I am blessed with a competitive yet caring and enthusiastic work environment. Well on another note, I also try other things like swimming & yoga.
5. What are some of the challenges you face in your role and how do you deal with stressful days?
The major challenge that I see is the acceptance of responsibility of one as a Teacher . There are some moral guidelines and that differs from teacher to teacher. You cannot have those moral values engraved literally. Teaching to undergraduate students who would soon be a tax payer in the society , means a lot. We have the responsibility of making an upright citizen, but how far we succeed cannot be measured always. We measure the success of the Institute by the number of placements it seeks. Well, Teaching cannot be standardized. Newer technology , new methods , new concepts and a generation already ahead of us is what we have to face. Sometimes I also have to watch Cricket matches which I dislike, just to be well informed to face these kids. Moments of stress come in everyone's life . When I am forced to do what I don't like, I find myself irritated and stressed. I sometimes reason it out,and mostly I share it with my Dad and Mom , depending on the kind of concern I have. Sometimes I share it with my sisters,and well when I realize that nobody could help... I leave it to GOD.
6. The girls in your college are aspiring women in technology. What is your advice to students to stay focused? The Life's a stage that these young ladies are about to step onto ,its about making decisions and choices. Choices and decisions that stay for the rest of your life. While making these decisions you should realize of what is involved. Can you make a living out of this choice for the next 20 years. A career of 20 years is what you should be looking at. As women,we have responsibilities towards parents ,sisters , in-laws and that very special person. While at the same time we also have another world of professional entities. There is no common mantra or strategy of being able to excel in both of these dimensions. Each one of us have a different story to narrate and each one of us is great in our own way. I believe in what Shakespeare said - " Some people are born great. Some work hard to achieve greatness while others have greatness thrust upon them ". My advice to you young ladies is to follow your heart and make the right choices. You have a story to talk about in future.
Meet Sargam Singh, the star at IBM Software Labs who's grown and succeeded by plugging away challenging situations at work and home. Sargam talks about her role at IBM as a Development Manager and at home as a mother and wife in an interview with us.
Thank you Sargam for sharing your mantra with the developerette group. We are certain that your experience will encourage new mothers to not only build careers in IT but also confidently take positions in leadership.
Please tell us about your work: the role you have at IBM, your responsibilities and your team.
I have 14+ years of industry experience and have been with IBM for last 7 years. I joined IBM as a Project Lead on WebSphere Application Server Test team. Currently, I am a Development Manager with IBM India Software Labs and am responsible for development and delivery of WebSphere Service Registry and Repository (WSRR) product out of India. Besides this, I lead the Asia Pacific Tech Sales Support for WSRR and am a member of the World Wide Agile Leadership Team.
I manage a team of 11 people, out of which close to 50% are women. It is a very high potential team and I see a good diversity in the top performers. In my opinion, women can bring in a different kind of perspective, and are often able to capture softer aspects of people capabilities which makes them great team player and leaders.
Tell us about your family and how you integrate your work and family?
My husband works with an IT multinational as a Program Manager. Besides us, I have a daughter who is 12 now and my mom-in-law who is with us. Both me and my spouse are in a high pressure jobs but it is the strong family support system which makes managing everything so simple. Coupled with this, IBM's work-life integration culture makes it possible to deliver the best both at work as well as for my family. I make sure that I am available for every important occasion and at any time when my family needs me the most. However, there are challenges at times, when work demands more time and my family has been amazingly supporting, including my little daughter who is growing up to be a responsible teenager.
What are some of the challenges you have had to face to keep both aspects balanced? There have been times in my career when taking some great opportunities called for a decision which impacted my family. Soon after I joined IBM, I had to leave for US for an extended period of 6 months. I made that decision after a lot of deliberation as it meant leaving my daughter behind for that long. My husband was a big support and stood by me all through. That period was very tough for me but I emerged out of it as a winner, both at personal and professional front. My husband and daughter joined me in US for 2 weeks after my assignment ended and time and distance had in no way impacted my bonding with my daughter. In fact, she looked much more confident and independent. On the professional front, those 6 months provided a boost to my career by opening up newer opportunities.
So this is one such instance, and there are times when we have to make such tough choices. We need to understand this delicate balance and take a call depending on what is more important at that point in time. Opportunities have to be grabbed, and if you want to excel professionally, you need to have your goals defined. Family interest must come first, but women often live in a self created notion that things will break if they are not around. So create a strong support structure and when faced with a challenge which calls for a decision, talk about it to your family and they will be your biggest strength to take it head-on.
Now that you have overcome the initial challenges, what is your advice to young mothers who wish to succeed in their carers? I feel that single thing which can guarantee success is the "right attitude". I would say two things here -
Firstly, create a strong support structure, both at work and at home. At home, you need to have the confidence that things can go on even when you are away. At work, you have to build a strong team and backup which can stand by you in case of any emergency. Both these are easy to do if you have the right attitude which naturally wins love and support from people around you, be it your family, or colleagues or even a household help.
Secondly, keep your high level goals clear, both on personal and professional front. There will be times when your family needs you more and you cannot let your professional life impact that, and there will be occasions when you will have to sacrifice family time for tackling challenges on work front. The key to success is being able to successfully maintain this delicate balance. Risk Taking choices come every day in everything we do, personal or business, in many forms. It is a matter of having the confidence in your judgements and stand up for what you believe in. Would you suggest development as a good career for women? Certainly yes. Women often shy away from technical path for different reasons. However, women have an innate quality of dwelling deep into details of things without loosing sight of the bigger picture. This can play an important role in ensuring a very successful technical career for women. Excellence is a state of mind and it comes naturally to them. Making excellence critical in the small steps can lead to great results for the larger agenda in your personal and work lives.