Add keyboard layout on debian

Hi all,

yesterday I installed Debian squeeze on a new laptop. As I am Greek, I need Greek characters. I tried to find “/etc/X11/xorg.conf”, but no luck. Xorg does not persist its configuration in this file any longer.
But, you can add a keyboard layout with this simple command:
$> setxkbmap “us,el” -variant “,extended” -option “grp:alt_shift_toggle”

Be aware that the above solution is fast, but it is not persistent and you will need to rerun the command after restart.
If you want to save the changes on /etc/X11/xorg.conf, then you can apply the next steps:

  1. Go to a terminal with Ctrl+Alt+F1
  2. Login as root
  3. $> service gdm3 stop
  4. $> Xorg -configure
  5. $> cp xorg.conf /etc/X11/xorg.conf
  6. $> service gdm3 start

Regards,
Adrianos.

Democracy Requires Free Software.

Posted in Administration, GNU/Linux | Tagged | Leave a comment

Extend WLST with your custom commands

Recently I was writing a simple WLST script to monitor a weblogic domain. After a lot of tests and thoughts I develop a decent script that satisfy my monitor needs. While writing the script I wrote a few functions that I use them a lot. So, I think why not to add them in standard WLST commands of WLST, in order to be available whenever run WLST.
How can you add custom WLST commands in WLST??

The solution is very simple. You write your custom functions to one or more ‘.py’ script(s) and save them to ‘WL_HOME/common/wlst/lib’ directory. Any file added to this directory will be compiled automatically from WLST and will be imported by WLST when started. See the next simple example.

HelloLib.py

def HelloCmd():
    print 'Hello dude'

Now, you can call this function in WLST offline mode like this:

wls:/offline>HelloLib.HelloCmd()

Hope it helps,
Adrianos Dadis

Democracy Requires Free Software.

Posted in Administration, Weblogic | Tagged , | Leave a comment

Grep equivalent for Windows

Hi,

At work I have to use a Windows Workstation for development and I was looking for grep replacement. I have recently come up with GrepWin, and would like to share it with you.

http://tools.tortoisesvn.net/grepWin.html

It also available for 64 bit Windows versions.

cu

Petros

Posted in Software Development | Tagged , , | Leave a comment

Light and Simple UML2 Design Tool

Hi,

I was recently looking for a simple and lightweight UML2 Design Tool and came across RedKoda which does exactly what is required for most cases which is draw diagrams in a fast and easy way. It is the simplest tool I have ever seen on UML2 Design and only 500kb in size!!

The supported diagrams are the following :

Structure diagrams
-Class diagrams, component diagrams, composition structure diagrams, deployment diagrams, object diagrams, package diagrams

Behavior diagrams
– Activity diagrams, use case diagrams, state machine diagrams

Interaction diagrams
– Communication diagrams, interaction overview diagrams, sequence diagrams, timing diagrams

Why don’t you download and give it a try @ http://www.redkoda.com

cu

Petros Petrou

Posted in Software Development | Leave a comment

Version control branching strategies 1/2

Almost two years ago we started a new project (related to SOA/BPM infrastructure) on a large telco organization. Project is going very well and run on production since last summer. We develop more and more modules and things going well. Now it’s time to transfer the knowledge to client’s developers. The main things that we have to taught them are naming conventions, source code, architecture and administration tasks. As we will be in the same team for a few more months, first of all we have to explain them our version control branching strategy.

So, on this post I will explain our approach on version control branching strategies. An approach that we defined after spending a lot hours on conversations and reading books.

Facts:

  • We have many individual/autonomous applications that are related to each other.
  • Each application is dependant to at least another application (based on WSDLs).
  • We do not have quality assurance manager, neither release manager, so we do all the work, which is related to design, development, release management and administration tasks.
  • We have defined 3 types of testing (related to release):
    • Unit testing: Testing that can be done by us (developers) without communicate with external systems (like CRM, Billing, etc.).
    • Integration testing: Testing that includes communication with external systems (Billing, CRM, etc.) and is done by developer(s).
    • User Acceptance Test: End-to-End testing that is performed by client without us.

Rules:

  1. We follow the unstable branching strategy. This means that trunk contains the latest code, regardless of how must stable it is.
  2. Branching is used only for release candidates, releases, bugfixes and experimental code.
  3. Use consistent tag-naming schemes for the tags:
    1. Branch tags will always start with ‘BT_’
    2. Release candidate prefix is ‘RC_’
    3. Release prefix is ‘R_’
    4. Bugfix prefix is ‘BF_’
    5. Experimental code prefix is ‘EC_’
    6. Developer tags start with ‘DEV_’
    7. Branch names will always start with ‘BR_’
  4. A tag is always created on trunk:
    1. Before create a branch: <branchName>_BASE (e.g RC_2_0_ApplicationName_BASE)
    2. Before merge a branch to trunk: <branchTabName>_PMB (PMB: Pre Merge Branch)
    3. After merge branch to trunk: <branchTagName>_AMB (AMB: After Merge Branch) (e.g. RC_2_0_ApplicationName_AMB)
  5. Always do tags in branches after do work, with suffix ‘–counter’ and always increase counter (e.g. BT_RC_2_0–1_ApplicationName).
  6. Merge back frequently; the fewer changes there are to the trunk, the easier they are to merge.
  7. Create a Wiki page for each application and write details for each individual tag and branch.
  8. Record tags in related issues/bugs on your bug tracking system.

The above rules/steps are for only one application, but they are the same for all applications.

I will continue this topic to another post (released at last) giving an extended example with names and full steps for a release candidate scenario.

Hope it helps,
Adrianos Dadis

Democracy Requires Free Software.

Posted in Release Management, Software Development | Tagged , | 1 Comment