Total Pageviews


6 things they didn't teach me at the academy - Prepare yourself better for a developer's life

Looking for your first position in the software world? 
Want to know more about developer's life?
Here present you with 6 essential points that will help you in your upcoming venture:
  • Understanding the structure of a software company: in most cases there will be a distinction between Developers, QA's/Testers, Support, Product and IT. Understanding this structure beforehand will help a candidate understand the job description he is interviewing for.
  • Development Methodologies: Waterfall or Scrum, Agile or not,
  • Code Management tools and processes: code repository tools, Continuous Build , Integration Test, Issue tracking systems
  • Coding guidelines
  • IDE usage.
  • Utilizing the power of open source


6 Tips to Stay Focused on Project Deadlines

1. Be a perfectionist
If you always look for that perfect design (nothing wrong with this, by the way) you will find yourself spending more time analyzing then actually finishing the project. This needs to be worked out, as the client expects you to finish your work on time. 

2. Pre-defined time for each task
A solid plan means working on a specific task one at a time. This will ensure you stay fully focused on the one task you have to do and therefore finish earlier or at least in time.

3. Have a daily plan
Having a daily plan is good for your confidence. Keeping a close eye on every phase of a project will likely make you feel better at the end of each day. If you manage to do something every day (and keep track of it) you will feel accomplished more often.

4. Work breakdown structure (WBS)
Having a to-do list might work well for small projects, but once you start working on a larger scale, small lists might not be so effective.
If you have lists with large, complicated activities, checking them off at the end of the day is not likely to happen, therefore you need to break the work down into smaller bits. Having sub-lists with smaller tasks will be more rewarding for you at the end of the day.

5. Larger scale management
Besides the small to-do lists and the WBS you do quite often, having a detailed monthly schedule is also recommended. Planning in advance can’t go wrong when you think of it very well.

6. Reward yourself
It makes you look forward to reaching your goals and to the next week.

" it is impossible to be good at maintaining your schedule if you are not organized."

Reference :


WebSphere Application Server Performance Tuning Toolkit

IBM has released the WebSphere Application Server Performance Tuning Toolkit that gives the ability to monitor multiple WebSphere Application Servers from an eclipse workspace*.

This tools uses WAS Performance Monitoring statistics to get and chart statistics that indicate the health and well being of your server. 

* Please note that the tool has been released on an as-is basis with no support.

Read more:

iReport : Reprint header


When I export my report to pdf format, the data split into multiple pages.

The report header should print for each page, but it only print once.

Root Cause

Here has one group options to do reprint

  • Reprint header : If you want to reprint the group header on each page, check this option.

Step by step

1. click group header

2. check Reprint header

3. click save



  1. 發掘部屬強項 : 了解部屬的優點,才能適才適所、將對的人放在正確的位置上,以發揮更大的生產效能
  2. 與部屬分享資訊 : 了解公司的使命、清楚該為何而戰
  3. 傾聽部屬心聲 : 唯有放下成見,願意閉上嘴巴、聆聽部屬心聲,主管才能對員工產生影響力,創造更大的績效
  4. 保護部屬 : 執行任務的過程中,如果遇上任何阻礙,主管都必須在第一時間跳出來排解,或者適時爭取部屬應得的權益
  5. 清楚設定目標 : 設定目標也能預防雙方對「該做的事」認知不一致,創造有效率的生產行為
  6. 讚美部屬 : 在部屬照著原先設定的目標努力,並達到所謂的「好的結果」時,主管就要立刻給予回饋,使部屬了解自己做對了,往後也能擁有更好的動能,繼續努力做出對的事
  7. 斥責部屬 : 針對事件、不牽涉人格的指正,它必須在部屬犯錯的當下執行,讓他知道這是嚴重的錯誤,才能有效預防再犯
  8. 授權與賦權部屬 : 主管的任務在於提升團隊的總產出,因此,主管更需要授權,才能擁有充分的時間,拓展新業務、協助部屬成長,讓團隊產出繼續增值

15 Tenets For The Software Engineer

  • Remember the basics : If you forget the basics of a programming language, you lose your foundational knowledge. 
  • Always assume the worst case. 
  • Test your code. 
  • Do not employ new technologies because they are new, use them because they solve a problem : Utility is the key, not coolness.
  • Read, a lot.
  • Try new techniques and technologies, a lot. 
  • Fail, you will learn something. 
  • Ship the damn software : Sometimes you just need to get the job done, but you must be aware of technical debt. If you continuously just ship software without removing technical debt, you are well on your way to creating a nightmare when a major production issue arises.
  • Do it the “right way”. 
  • Leave the code better than how you found it. 
  • Think about concurrent access. 
  • Storage may be free, but I/O sucks. 
  • Memory does not go as far as you may think. 
  • Caching fixes everything until it crashes the server. 
  • Think like a consultant : As an employee, you need to use your power to state that the deadline can not move due to the amount of work required, or that scope cannot be increased without increasing the number of resources. Consultants tend to be allowed to manage a project differently than employees, and it is our job to change that.
Get further information:

Autotab: jQuery auto-tabbing and filter plugin


We have five input text fields in this page.

  • As we filled in 3 characters in dlv_unit(移送單位), system should automatically set focus to tax_cd(稅別).
  • As we filled in 2 characters in tax_cd(稅別) , system should automatically set focus to dlv_yr(移送年度).
  • As we filled in 3 characters in dlv_yr(移送年度) , system should automatically set focus to flg_tp(申報年度).
  • As we filled in 1 characters in flg_tp(申報年度), system should automatically set focus to serial_no(流水號).


Autotab is a jQuery plugin that provides auto-tabbing and filtering on text fields in a form. Once the maximum number of characters has been reached within a defined text fields, the focus is automatically set to the defined target of the element.


jQuery Autotab Plugin v1.1b (1867021)

Basic Usage

1. Include jquery.autotab.js in your HTML:
2. Add your text fields in your HTML, including an ID:
3. Initialize Autotab on your text fields with a ready() handler:

iReport : text alignment

Utilize JasperReports to print name and adrress on envelope. Name and addess should print from top to down.

Concerning text alignment, iReport has three attributes:

  • textAlignment - Values allowed for the horizontal alignment are: Left, Center, Right and Justified. By default, horizontal alignment is set to Left. 
  • verticalAlignment - Values allowed for the vertical alignment are: Top, Middle and Bottom. By default, vertical alignment is set to Top. 
  • rotation - Values allowed for the text rotation are: None, Left, Right and UpsideDown. By default, text rotation is set to None. 

Examples of combining horizontal alignment, vertical alignment and rotation in a element. 
The resulting paragraph will be horizontally aligned left, vertically aligned top, and the text will flow from top to bottom. 

Running this sample