Nothing special. just bits and pieces about my life, my career and my loves.

Monday, December 18, 2006

What was blocking my toilet





Toilet in my house was blocked and I had no luck to unblock it. I tried solvent, I tried pumping it, still couldn't unblock it.

I called the plumber and he dug out the pipe from the ground. My pipe is completely block my a tree root........

I was shocked when I looked at it, it was so bloody disgusting...

Saturday, December 16, 2006

Congratulations to Maggie and Wilson


Maggie and Wilson got married last Saturday (9 dec 2006) and I'm one of wilson's best man. The ceremony was held in Four Seasons Hotel in the afternoon. Dinner was held in Sea Treasure Restaurant in Crows Nest. Sea Treasure is a bit small, however, the food are quite good. The only thing that I don't like is the MC, he sang too much, it turned up to be something like his personal concert.

Buildix

Buildix is simply a new Linux distribution that is based on KNOPPIX, which in turn is based on Debian. It's aimed at helping agile developers to get their projects up and running quickly and easily.

Buildix will get your Continuous Integration development environment up to speed quickly and easily. It's an Agile development platform on a disk, with best-of-breed Agile tools, pre-installed and configured on a KNOPPIX-based Linux distribution.

Buildix includes:

  • Subversion for Source Control
  • Trac for a Wiki, Bug-Tracker and general Project Management
  • Cruise Control for Continuous Integration
  • JDK 1.5
  • Tomcat
  • Apache
I've installed buildx on a Dual P2 400MHz, 14G HD, 320MB Ram box. This is what I had done to get it work on my old box.

  1. boot the machine with the cd and login as root/root
  2. run knoppix-installer (you will see an warning if you have less the 512MB Ram, simply ignores it)
  3. create a primary bootable linux partition (remember to WRITE the changes to the disk)
  4. create a logical linux swap partition (~ 2x RAM)
  5. quite the installer
  6. create the swap space manually by executing mkswap /dev/hda5 (must be the same as the swap space that you have created in step 4)
  7. run knoppix-installer again.
  8. choose Configure the installation
  9. accept the default boot-loader location (MBR) and use the knoppix installation (don't use debian as it doesn't detect the network card)
  10. finally, start the installation and you're ready to go !!

Wednesday, December 06, 2006

Should You Fire Your Enterprise Architect?

I came across the following blog recently and I felt the same with the Qantas Architects

Now working directly on SOA projects, I'm exposed to many more organizations than I did when I was building technology. As such, I see some common patterns or issues emerging.

The largest and most disturbing issue, and as I mentioned a few times here on this blog, is the fact that there seems to be a huge chasm between the traditional enterprise architecture crowd, and those looking at the value of SOA. Indeed, enterprise architecture, as a notion, has morphed from an approach for the betterment of corporate IT to a management practice, at least for some. Thus, the person that is needed to understand and implement the value of SOA is sometimes not the current enterprise architect in charge.

The core issue is an add-not-change approach to architecture. While adding applications, directories, databases, to an existing architecture is easy and risk adverse, changing architectures around systemic notions such as SOA is hard and does come with some risk. Thus, many are choosing to ignore it. In many instances it's the culture, with some organizations promoting a "you fail you're fired" approach, versus a "let's try new things and seek improvement."

Another issue is that it's easier to stay high level, than do actual work. Drawing diagrams, doing presentations, and writing reports is much easier than actually going out and making real changes with real benefits. Again, from above, that carries with it the notion of risk. Implementing SOA takes a lot of up-front work, as well as many changes. However, in many cases the benefits outweigh the risks by a large margin.

So, should your enterprise architect be shown the door to make room for others looking to promote a better and more agile IT architecture, and are willing to do what it takes to get there? Here are a few questions to ask.

1. Has somebody compared the current architecture with best practices in you industry, looking to spot issues that need correcting, such as the architectures inability to align and keep us with the business?
2. Has somebody done a ROI analysis of the value of SOA, or other approaches for that matter, for the current architecture and reported it to management?
3. Do you have a complete service-, semantic-, and process-level understanding of your enterprise?
4. Do you have a common abstract model for key elements, such as customers, sales, inventory, transactions, etc?
5. Are systems well integrated and communicate in real time where needed?
6. Can you change your architecture to accommodate business changes at the speed required by management and the marketplace?

Basically, if you answered no to any of the above, it's perhaps time to look for some new blood...New Year, new opportunities, new value, new architect.


No offence, but I do think the architects at qantas are sucks. Let me tell you why:

- Site only rely on client side validation
- Site can be attacked by SQL injection
- Some Classes are not threadsafe.
- No coding standard.
- Still using Text Editor in Sep 2006. Only start using Eclipse 3.1 recently
- Most of our business logics reside in JSP and Action.
- As one of the biggest airline in the world. We can't handle more than 500 concurrent requests even they use ad-hoc caching here and there
- Loads of database connection leaks. We have to restart our server constantly.
- Never close input stream.
- Poor exception handling, try and catch exception and then doing nothing.
- Many java file are more than 3000+ lines
- Using Remote EJBs even the web and business tier are in the same box.
- Do not use CMT. What's the point of using EJB?
- Refactoring? No way! I don't know why they don't allow me to refactor the JSPs (moving the logic in a java class, using a template engine, etc). Is there any better place to begin with for refactoring?
- Never understand the value of continous integration.

As a conclusion, I do think the Architects that I work with are very conservative. They are relectant to adopt new technology ( 3-4 years behind the standard). Something that I can do it with Spring, they rather to write it in their own way (yes, they favor inhouse framework) . They write it and never have time to maintain and improve it. Why do we have to reinvent the wheel if someone better than you has done that already?

I know that most of the problem are created by average developers, however, as an Architect, you have the full responsiblity to ensure the quality of code. Not just meeting and drawing diagrams all the time. You can only be a good Architect if you spend at least 40% of your time in coding. My 2c.