Monday, June 10, 2013

Outline: The 16 Days of Competencies

POST: http://zengerfolkman.wordpress.com/2011/09/21/the-16-days-of-competencies-1-displays-high-integrity-and-honesty/

POSTED BY: zengerfolkman, September 21, 2011

#1 DISPLAYS HIGH INTEGRITY AND HONESTY
  • Avoid saying one thing and doing another (i.e., walk the talk)
  • Follow through on promises and commitments
  • Model the core values
  • Lead by example
Are you able to communicate bad news to your boss? Do you confront difficult problems directly and promptly? Are you assertive enough to stand up for what you believe, even if it is not the popular position?

#2 TECHNICAL AND PROFESSIONAL EXPERTISE
  • Stay up to date in the field
  • Demonstrate technical, functional, and job-specific knowledge required for assignments
  • Be sought out for opinions, advice, and counsel
  • Make a significant contribution toward achieving team goals through knowledge and skills
Do you stay up to date by reading professional journals and books? Do you participate in trade association meetings? Do you help to integrate the different technologies that affect your group —determining how they fit together and how they contribute to the efforts of the organization?

#3 SOLVES PROBLEMS AND ANALYZES ISSUES
  • Systematically evaluate information by using a variety of proven methods and techniques
  • Encourage alternative approaches and new ideas
  • See patterns and trends in complex data and use the patterns to outline a path forward
  • Clarify complex data or situations so that others can comprehend, respond, and contribute
Do you ask your team members for help in solving problems? Do you consider the viewpoints of various interested parties? When problems arise, do you make a list of possible causes, prioritizing them in the order of probability that they actually contribute to the problem? Do you determine what information needs to be collected to resolve the problem?

#4 INNOVATES
  • Consistently generate creative, resourceful solutions to problems
  • Constructively challenge the usual approach to doing things, and find new and better ways to do the job
  • Create a culture of innovation and learning that drives individual development
  • Build on other people’s suggestions and ideas. (Doing so often leads to new approaches and improvements)
Do you champion ingenuity at all levels? Do you work to improve new ideas rather than discouraging them? Do you generate creative solutions by bringing together the most talented people? Do you integrate ideas and input from different sources to find innovative solutions?

#5 PRACTICES SELF-DEVELOPMENT
  • Make constructive efforts to change and improve based on feedback from others
  • Learn from both success and failure
  • Model self-development and embrace its value
Do you take ownership of your own development? Do you seek feedback from others to improve and develop? Do you look for ways to build challenge into current assignments?

#6 DRIVES FOR RESULTS
  • Do everything possible to meet goals or deadlines
  • Consistently meet or exceed commitments
  • Aggressively pursue all assignments and projects until completion
Do you follow up regularly on progress and reinforce any movement in the right direction? Are you willing to volunteer for a difficult task or assignment that requires you to stretch your current capability?

#7 ESTABLISH STRETCH GOALS
  • Build Commitment with all employees on team goals and objectives
  • Promote a spirit of continuous improvement
  • Maintain High Standards of performance
Do you focus on why you can achieve goals rather than on why they can’t be achieved? Are you willing to discuss your priorities and your commitment to your work with others?

#8 TAKES INITIATIVE
  • Volunteer for Challenging assignments
  • Go above and beyond what needs to be done without being told
  • Have the confidence to initiate action independently
Do you approach your work as if your responsibilities extend beyond your immediate job descriptions?  Are you willing to commit extra time and effort when the situation calls for it? Do you constantly ask, “Is there a better way to do this”?

#9 COMMUNICATES POWERFULLY AND PROLIFICALLY
  • Communicate clearly and concisely
  • Give clear, understandable instructions to employees and others
  • Skillfully communicate new insights
When you are preparing to speak to people, do you think about their backgrounds and needs, and about where they stand on the issue you will be discussing? Do you sketch out an outline that presents your case in a logical way?

#10 INSPIRES AND MOTIVATES OTHERS TO HIGH PERFORMANCE
  • Have a personal style that helps to positively motivate others.
  • Energize people to go the extra mile.
  • Skillfully persuade others toward commitment to ideas or action.
Do you employ different motivational strategies to influence the behavior of others?  Do you express confidence in the individual’s ability to reach goals? Do you demonstrate enthusiasm to your group by talking about why your goals are important and encouraging others to set challenging goals?

#11 BUILDS RELATIONSHIPS
  • Deal effectively with people in order to get work accomplished
  • By trusted by work group members
  • Be approachable and friendly
Do you pleasantly greet people when you meet them in the hall? Do you demonstrate an interest in people and their work? Are you able to handle difficult situations constructively and tactfully?

#12 DEVELOPS OTHERS
  • Act as a coach or mentor to facilitate learning from experience
  • Give honest and candid feedback
  • Find stretch assignments for individuals which require them to achieve significant but realistic goals
  • Willingly share his/her time to help others develop.
Do you foster a learning environment that encourages others to learn from their experience? Do you act as a coach or mentor to facilitate learning from experience? Are you willing to make the tough decisions necessary to ensure the current and future success of your employees?

#13 COLLABORATION AND TEAMWORK
  • Promote a spirit of cooperation with other members of the work group
  • Champion an environment that supports effective teamwork
  • Have the trust and respect of the team
Have you developed cooperative working relationships with others in the company? Do you take into account how individual’s actions affect the team? Do you remove barriers to positive team performance?

#14 DEVELOPS STRATEGIC PERSPECTIVE
  • Know how work relates to the organization’s business strategy
  • Balance the short-term and long-term needs of the organization
  • Demonstrate forward thinking about tomorrow’s issues
Do you ensure that work group goals are aligned with the organization’s strategic goals and vision? Do you clarify vision, mission, values, and long-term goals for others? Do you propose initiatives that become part of the organization’s strategic plan?

#15 CHAMPIONS CHANGE
  • Act as a change agent—strongly support the continual need to change
  • Become a champion for projects or programs, presenting them so that others support them.
  • Be an effective marketer for work group projects, programs, or products.
Do you encourage people to let go of old ways so new ways can begin? Are you one to help teams and work groups translate new change goals into practical implementation steps? Can you champion organizational change initiatives in a way that helps people understand, appreciate, and support them?

#16 CONNECTS THE GROUP TO THE OUTSIDE WORLD
  • Know how to deliver products or services that delight customers by meeting and exceeding their expectations
  • Use knowledge and feedback from an external perspective to improve products or services
Do you view your work in the context (through the eyes) of the external customer? Are you willing to help people understand how meeting customer needs is central to the mission and goals of the organization?

Sunday, June 2, 2013

SSL and certificates

Terms:

  • SSL (Secure Socket Layer) - a security protocol that ensures secure transaction/connection between a server and a client
  • https - beginning of an SSL-secured website/URL
  • SSL Certificate - a small data file that establishes encrypted connection. It contains a key pair, a public and private key, and the subject identifying the certificate. Typically an SSL Certificate will contain your domain name, your company name, your address, your city, your state and your country. It will also contain the expiration date of the Certificate and details of the Certification Authority responsible for the issuance of the Certificate.
  • Certificate Authority or CA - the SSL Certificate issuer. It researches companies, checks references, assures identity and encrypts data to and from servers. 
  • certificate chain - a series of intermediate certificates
  • public, private, and session keys - anything encrypted with the public key can only be decrypted with the private key, and vice versa. After the secure connection is made, the session key is used to encrypt all transmitted data. 

Server Setup: (http://www.lwithers.me.uk/articles/cacert.html)

  1. In order for a server to handle SSL connections, it must activate SSL.
  2. Server will be prompted several question about identity of website or organization.
  3. Server generates the CSR (Certificate Signing Request). It contains the private key and a CSR data file.
  4. The CA uses the CSR data file to create a public key to match the private key.
  5. CA sends the SSL certificate.
  6. Server installs the SSL certificate. (http://www.digicert.com/ssl-certificate-installation.htm)

How it works:
  1. Browser connects to a web server secured with SSL (https). Browser requests that the server identify itself.
  2. Server sends a copy of its SSL Certificate (including the server’s public key), to assure the client that it can be trusted. The SSL Certficate was purchased from CA.
  3. Browser checks the certificate root against a list of trusted CAs and that the certificate is unexpired, unrevoked, and that its common name is valid for the website that it is connecting to. If the browser trusts the certificate, it creates, encrypts, and sends back a symmetric session key using the server’s public key. --- "SSL handshake"  
  4. Server decrypts the symmetric session key using its private key and sends back an acknowledgement encrypted with the session key to start the encrypted session.
  5. Server and Browser now encrypt all transmitted data with the session key.

Commands:

  • the default password is changeit
  • list certificates
    keytool -list -v -keystore [cacert location], ex. keytool -list -v -keystore cacerts.jks
  • list certificates to a text file
    keytool -list -v -keystore [cacert location] > [text file path]
    keytool -list -v -keystore "C:/Program Files (x86)/Java/jre6/lib/security/cacerts" > java_cacerts.txt
  • delete certificate (used when certificate is expired)
    keytool -delete -v -alias [alias] -keystore [cacert location], ex. keytool -delete -v -alias [alias] -keystore cacerts.jks
  • add certificate to cacert
    keytool -import -alias [alias name] -keystore  [cacert location] -file [cert to add path]
    keytool -import -alias Verisign -keystore  "C:/Program Files (x86)/Java/jre6/lib/security/cacerts" -file C:/bel/docs/certs/Verisign.cer


Source:
http://www.digicert.com/ssl.htm

Tuesday, April 23, 2013

Custom JSP tags

1) Make sure that the library for tags is in your classpath. servlet-api-2.3.jar supports it.
2) Create the tag class
   Ex.
   public class MyTag extends TagSupport
   public class HelloTag extends SimpleTagSupport
3) Create the tag libray descripto file and put anywhere inside WEB-INF directory
   Ex. WEB-INF/tld/myApp.tld
<taglib>
  <tlib-version>1.0</tlib-version>
  <jsp-version>2.0</jsp-version>
  <short-name>Example TLD</short-name>
  <tag>
    <name>Hello</name>
    <tag-class>com.tutorialspoint.HelloTag</tag-class>
    <body-content>empty</body-content>
  </tag>
</taglib>
4) Use the tag. You can also set uri in tld and use it as your uri in JSP page.
<%@ taglib prefix="ex" uri="WEB-INF/tld/myApp.tld"%>
<html>
  <head>
    <title>A sample custom tag</title>
  </head>
  <body>
    <ex:Hello message="This is custom tag" />
  </body>
</html>

Tuesday, April 2, 2013

Merging in SVN using Eclipse

  1. Do a fresh checkout of the project where you are going to merge into. This is done to ensure that your target branch is up to date.
  2. Right click the project and click Team -> Merge
  3. In URL, browse on the source project
  4. Click Ok
  5. Resolve any conflicts

Thursday, February 7, 2013

JBoss Drools

JBoss/JBoss AS (JavaBeans Open Source Software Application Server)

- now has a new name WildFly
- is a J2EE platform for developing and deploying enterprise Java applications, Web applications and services, and portals

Drools/JBoss Rules

- a rule language
- case sensitive
- single line comments starts with # or //, multi-line comments are enclosed in /* and */

Rule file - file ending with .drl

jBPM

- is a flexible java Business Process Management (BPM) Suite
BPM makes the bridge between business analysts, developers and end users, by offering process management features and tools in a way that both business users and developers like it

Components of jBPM

  • core process engine - the only required component
    • history log
    • human task service
  • graphical editors
    • eclipse plugin
    • web-based designer
  • Guvnor respository - can store all business processes
  • jBPM console - web-based console for managinf business processes

Core

knowledge base
   - used to look up the process definitions whenever necessary
   - uses a knowledge builder to load processes from various resources (for example from the classpath, from file system or process repository), i.e.
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newClassPathResource("ruleflow.rf"), ResourceType.DRF);
   - can be dynamically changed (so you can add or remove processes at runtime)
session
   - instantiated from knowledge base and are used to execute processes and interact with the engine

Structure of a Rule File:

package package-name - must always be the first element
imports - optional, order does not matter
globals - optional, order does not matter, define global vars
functions - optional, order does not matter
function String hello(String name) {
    return "Hello "+name+"!";
}

queries - optional, order does not matter
rules - optional, order does not matter
rule "name"
    attributes
    when
        LHS
    then
        RHS
end


Common rule attributes: 

salience - priority, higher salience values are given higher priority, default is 0, can be positive or negative
agenda-group - a group name, only rules in the agenda group that has acquired the focus are allowed to fire
activation-group - same as if else, only one will fire

Ref:
http://docs.jboss.org/jbpm/v5.1/userguide/

Monday, January 28, 2013

Ant buildfile

Each buildfile contains one project and at least one (default) target. Targets contain task elements.

Basic components/tags:
1) project - attributes: name, default, and basedir

2) target - attributes: name, depends, if, unless, descriptiondefault, and basedir

3) tasks - can be built-in or user defined
Common tasks: init, sets properties, prepare, creates directories, build, builds the system, package, creates jar file, install, installs an application to Tomcat or other engine, deploy, deploy a WAR engine, reload, update previously installed application engine, redeploy

4) properties - to reference, enclose in "${" and "}"
Some Built-in Properties: basedir, ant.file, ant.version, ant.project.name, ant.java.version


Tags:
                     ...


Ref:
http://ant.apache.org/manual/using.html

Sunday, January 27, 2013

Windows and Unix common commands

WindowsUnixDescription
attrib

change(clear or set) the attribute of the file

cdpwdprint current working directory
cd <dir>cd <dir>change directory
clsclearclear screen
cmdStarts a new instance of the Windows command interpreter
copycpcopy
cp /mySrc .
date, timedateprint current date and/or time
delrmdelete
deltreerm - rrecursively delete entire directory tree
dirlslist files and directories
ls attributes:
-a Include hidden fiels (beginning with .)
-l long format
-s sort by time modified
-r reverse sort 
doskey /hhistoryprint history
editvi etc.create new file, show edit window

common vi commands:
/<text> - search forward
n - next occurrence
?<text> - search backward
n - previous occurrence
:set number - show line number
:q | :quit | :q! - quit
exitexit
Ctrl-D
exit
findfinds files/folders or string in files
Ex.
dir c:\ /s /b | find "CPU" - display the file names on drive C that contain the string "CPU"
find . -name "foo*"
findgrepsearch
grep -n 'UnknownServiceException' */*/*/server.log
grep -rni "string" * .*
grep -E "a|b"
  r = recursive i.e, search subdirectories within the current directory
  n = to print the line numbers to stdout
  i = case insensitive search
  .* = hidden files/directory
  -E = extended regex (i.e., may use | for or) 
helpmanhelp/manual
displays all available commands & how to use them
ipconfig /allipconfig -aprint network details
mkdirmkdircreate new folder/directory
movemvmove file or folder
rmdirrmdirremove folder/directory
setenvset environment variable
set Pathecho $PATHprint value of environment var PATH
startstarting/opening a command/program
List of commands for Windows XP, Vista and Windows 7: http://ss64.com/nt/run.html
Ex.
subst notepad
start /d "C:\Program Files (x86)\Notepad++" notepad++.exe -> start the executable and close the command prompt that called it
substsubstituting path
subst R: D:\temp\temp
typecatdisplay contents of a file, concatenate files or create a new file
Ex.
cat > 1.txt
This is the first line.
- creates a simple text file. ^D mrks the end of file.
cat 1.txt - display contents of 1.txt
cat 1.txt 2.txt > 3.txt - concatenate 1.txt and 2.txt ans save it in 3.txt
treefind .,
ls -R
print directory structure
lessdisplay the contents of a text file on console
lnmake link
Types:
1. Hard link (default) - Points to a file through inode number. If the original file's name is changed, hard link still points to same file.
2. Symbolic link (ln -s) - Points to a file through name. If the original file's name is changed, symbolic link still points to the original name and does not point anymore to the original file. If the original file's content is changed, symbolic link still points to the same file.
ln -s myFolder myShortcut - create
ln -sfn myFolder2 myShortcut - update
   -f = force
   -n = treat LINK_NAME as a normal file if it is a symbolic link to a directory, else LINK_NAME  will be treated as symbolic link and will not effectively remove link to previous target and point to new target
printenvprint environment variables
tararchive/extract
tar -xvf sample.tar.gz

PATH
WindowsUnixDescription
\/Directory separator, e.g. C:\user\docs\sample.txt
/-Switch, e.g. dir /w
[drive letter:]\ or
\\[server name]\[volume]\
/Root directory
..Current directory
....Parent directory
~Home directory - $HOME var in UNIX, which usually is /home/username
C:\user\docs\sample.txt
docs\sample.txt
A:pic.jpg \\server01\user\docs\sample.txt
//home/user/docs/Letter.txt .
/inthisdir
../../greatgrandparent ~/.rcinfotd>
Sample paths


Source:
https://en.wikipedia.org/wiki/Path_(computing)