Tuesday, May 19, 2009

Java GUI Swing/AWT, Simple 10-steps Coding

This article try to explain the simplest approach in 10-steps coding about Java GUI programming using Swing/AWT. The main focus is understanding the concept and simple programming practice.

Concepts..
Java GUI facilities have
  • The container classes
  • The component classes
  • The containment hierarchy
  • The layout managers
  • The event handling
The container classes normally practice two layer approach, i.e. top-level container and 2nd-level container. The 2nd-level container get hold of a group of components, and is nested under top-level container. This forms containment hierarchy.

Layout manager provide several layouts:
  1. BorderLayout - north, south, east, west, centre
  2. FlowLayout - row
  3. BoxLayout - row, where space can be specified by in term of size
  4. GridLayout - grid, rows and columns of cells
  5. GridBagLayout - grid, allow to accoupy more than one cell
  6. CardLayout - stack
Event handling handle components' actions and events. Basically it does the following.
  • create a listener object
  • attach it to the widget(component) that interacts with the user
And the listener object should be created from a class that implements one of the Java listener interfaces [awt][swing]. This is an underlying-concept of Polymorphism in Java.

This article try not to expand in details exploration of Java Swing/AWT package, thus assume a reader should do separate reading/homework of study on differentiating the following in Java Swing/AWT classes/packages,
  • Which classes are container classes?
  • Which classes are component classes?
  • Which classes are Layout Mangaer classes?
  • Which classes are Event handling classes? (aka Interfaces)
  • Inner classes - anonymous inner class and named inner class.
Coding 10-steps for GUI Class..
The following are steps to create GUI class. You could note the following steps/coding format for academic learning purpose. It could help in easily memorizing-gits for exam.
  1. import java.awt, javax.swing, java.awt.event, javax.swing.event.
  2. create GUI class for top-level container, i.e. usually extends JFrame
  3. declare private variable of 2nd-level container, i.e. usually JPanel p
  4. declare private variables of components, i.e. JButton, JCheckBox, JRadioButton, JTextField, JLabel, JSlider, JComboBox, etc.
  5. construct the GUI class by:
    • assign 2nd-level container variable by referencing top-level container's content panel. i.e. p = (JPanel)this.getContentPane();
    • setLayout of 2nd-level container, i.e. p.setLayout(null);
    • create instances of all component variables declared above
    • set all necessary properties of components, i.e. setBounds(....), setValue(....), etc.
    • add action/event listener object, if any (use either anonymous inner class or named inner class)
    • add all component instance variables into 2nd-level container panel, i.e. p.add(..)

    (these steps 6-8 can be same with GUI class or at separate driver class)
  6. create main method
  7. create instance of GUI class
  8. setTitle("..."), setSize(..), setVisible(true), setResizable(false), of main frame or container

  9. (these steps 9-10 can be same with GUI class or at separate public class)
  10. create named inner class by implementing event listener interface
  11. implement all necessary action and event handling methods

//Frame1.java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class Frame1 extends JFrame
{
private JPanel p;
private JButton button;

public Frame1()
{
p = (JPanel)this.getContentPane();
p.setLayout(null);

button = new JButton("Click me");
button.setBounds(30,30,120,30);
button.addActionListener(new WidgetListener());

p.add(button);
}

public static void main(String []args)
{
Frame1 f1 = new Frame1();
f1.setTitle("GUI Demo");
f1.setSize(200,150);
f1.setVisible(true);
f1.setResizable(false);
}

private class WidgetListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
button.setText("Thank you");
}
}
}




Only GUI variation (no event handling)..
If we want GUI windows with no event handling, then skip the following steps from above 10-steps.
  • skip 5th point of step no.5
  • skip step no.9
  • skip step no.10

//MainFrame.java
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class MainFrame extends JFrame
{
private JPanel p;
private JCheckBox checkBox1, checkBox2, checkBox3;
private JLabel label;

public MainFrame()
{
p = (JPanel)this.getContentPane();
p.setLayout(null);

checkBox1 = new JCheckBox("Mathematics");
checkBox1.setBounds(30,50,100,20);

checkBox2 = new JCheckBox("History");
checkBox2.setBounds(30,80,90,20);

checkBox3 = new JCheckBox("Science");
checkBox3.setBounds(30,110,90,20);

label = new JLabel("Select the subjects:");
label.setBounds(30,20,150,20);

p.add(checkBox1);
p.add(checkBox2);
p.add(checkBox3);
p.add(label);
}

public static void main(String []args)
{
MainFrame frame = new MainFrame();
frame.setTitle("GUI Demo");
frame.setSize(200,200);
frame.setVisible(true);
frame.setResizable(false);
}
}



Layout manager variation..
Above 10-steps is the simplest step-by-step of coding GUI class. But in above 10-steps technique, we just use null layout manager. If we want to use other layout manager, we just have to modify the following in above 10-steps.
  • at 2nd point of step no.5, setLayout(null) to change appropriate layout mangaer, i.e. setLayout(new FlowLayout());
  • at 4th point of step no.5, make adjust to setBounds(...) absolute positioning field. We may just want to use layout manager's relative positioning, then this setter should not be set.
  • at step no.8, change setResizable(false) to setResizable(true). Since we are using layout manger, the container will adjust to be sizable.

//Slider.java
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;

public class Slider extends JFrame
{
private JPanel p;
private JTextField textField;
private JSlider slider;

public Slider()
{
p = (JPanel)this.getContentPane();
p.setLayout(new BorderLayout());

textField = new JTextField("Value : 0");

slider = new JSlider(0,100,1);
slider.setOrientation(SwingConstants.HORIZONTAL);
slider.addChangeListener(new ChangeListener()
{
public void stateChanged(ChangeEvent e)
{
textField.setText("Value : " + slider.getValue());
}
}
);

p.add(slider, BorderLayout.SOUTH);
p.add(textField, BorderLayout.NORTH);
}

public static void main(String []args)
{
Slider s = new Slider();
s.setTitle("Slider Demo");
s.setSize(220,100);
s.setVisible(true);
s.setResizable(true);
}
}






Coding shorten variation..
I aware that there are significant points to shorten the coding style/format aka steps. But only do practice code-shorten when you become an expert in GUI coding and its concept. These 10-steps coding format closely align with underlying Polymorphism and other object-oriented concepts.

Conclusion..
Observe that in Frame1.java, I did (concrete) name inner class to implement ActionListener interface. In Slider.java, I did (concrete) anonymous inner class to implement ChangeListener interface. Whichever way should be applicable and be practiced. Anonymous inner class should use when an event only occur once and for all during program life cycle.
And, again there several possibility way of shorten-coding of given program. But this 10-steps intend to be basic, simple and focus on OOP concept. There are plenty of OO concepts involved in GUI coding. If we can't link concept and coding, we may be lost. Try to study given 3 sample programs' code in line-by-line against step-by-step of 10-steps format. Then, you may try your own program and, explore more!

Next..
After digesting this article and grasped hold of concept, you may further enhance the knowledge by trying Sun's Java online lesson series, namely: Lesson: Using Swing Components.

References:
Anthony Lee W.H., Unit 4:Java GUI Classes, ICT201 Further programming and Object-oriented Concepts Using Java, SIM University
Anthony Lee W.H., Unit 7:Element of User Interfaces, ICT203 Foundations in Modern System Design, SIM University

Monday, May 18, 2009

Golfing at driving range : Orchid Country Club

Last few weeks back, happened to play golf at Orchid CC driving range. It is a good two layered driving rage with total of 160 bays. Costs for playing at driving rage as follow.

Registration fee : None
Balls rate : S$0.08/ball for visitor
Borrowing clubs : S$5/hour (both irons and woods) at Pro Shop 

More details at:

Now, planning to buy golf set. Thinking brands from, TaylorMade or Mizuno. I prefer Steel shaft.

Also bought a book from Popular bookshop, "50 Years of Golfing Wisdom" by John Jacobs.

Some pic..




Playing Iron 5
video

Playing Wood 1, the driver
video

Now as I reviewing the clips, my waist and right-leg do swing-in a bit early. That's make the ball direction uncontrollable, pulled hook or pushed slice. And, I also couldn't drive with full-swing max power. May need more practice to get back stamina.
..

Saturday, May 16, 2009

Polymorphism in Java

Polymorphism is kind powerful concept in Object-oriented programming. The following are quick overview.
  1. simply means many forms
  2. object variable reference
  3. polymorphic value, i.e. referencing many
  4. underlaying concept is computer memory storage i.e. how computer program store variable and referencing or pointing at
Comprehensive explanation can refer to Wikipedia entry.
Polymorphism with Java Abstract..
Polymorphism come after study of class generalization relationship and object-oriented concepts such as Reuse, Subtype, Substitutability, Inheritance. The following depict "is-a", inheritance relationship kind of polymorphism in Java. It uses of abstract class and abstract method at Superclass to let its subclasses to be implemented getArea() method.





//Shape.java
public abstract class Shape
{
    protected int posX;
    protected int posY;
    
    public Shape (int x, int y)
    {
        posX = x;
        posY = y;
    }
    
    public abstract double getArea();
}

//Square.java
public class Square extends Shape
{
    private int side;
    
    public Square (int x, int y, int s)
    {
        super(x,y);
        side = s;
    }
    
    public double getArea()
    {
        return ( side * side );
    }
}

//Circle.java
public class Circle extends Shape
{
    private int radius;
    
    public Circle (int x, int y, int r)
    {
        super(x,y);
        radius = r;
    }
    
    public double getArea()
    {
        return (Math.PI * radius * radius);
    }
}

//DemoPolymorphism.java
public class DemoPolymorphism
{
    public static void main(String[] args)
    {
        Shape vars;
        vars = new Square(1,2,3);
        System.out.println("Area of square = " +vars.getArea());
        vars = new Circle(1,2,3);
        System.out.println("Area of circle = " +vars.getArea());
    }
}


Polymorphism with Java Interface..
Sometime, we may want to use polymorphism which is not really "is-a" inheritance relationship. That is, there won't be able to do superclass-subclass and make use of abstract class/method generalization as mentioned above. Then, we can use interface to still practice polymorphism. This is somewhat better Java programming practice.





//GeometricInterface.java
public interface GeometricInterface
{
    public abstract double getArea();
}

//Shape.java
public class Shape
{
    protected int posX;
    protected int posY;
    
    public Shape (int x, int y)
    {
        posX = x;
        posY = y;
    }
}

//Square.java
public class Square extends Shape implements GeometricInterface
{
    private int side;
    
    public Square (int x, int y, int s)
    {
        super(x,y);
        side = s;
    }
    
    public double getArea()
    {
        return ( side * side );
    }
}

//Circle.java
public class Circle extends Shape implements GeometricInterface
{
    private int radius;
    
    public Circle (int x, int y, int r)
    {
        super(x,y);
        radius = r;
    }
    
    public double getArea()
    {
        return (Math.PI * radius * radius);
    }
}

//CampusArea.java
public class CampusArea implements GeometricInterface
{
    private double width;
    private double length;
    
    public CampusArea(double width, double length)
    {
        this.width = width;
        this.length = length;
    }
    
    public double getArea()
    {
        return ( width * length );
    }
}

//DemoPolymorphism.java
public class DemoPolymorphism
{
    public static void main(String[] args)
    {
        GeometricInterface vars;
        vars = new Square(1,2,3);
        System.out.println("Area of square = " +vars.getArea());
        vars = new Circle(1,2,3);
        System.out.println("Area of circle = " +vars.getArea());
        vars = new CampusArea(3,3);
        System.out.println("Area of campus = " +vars.getArea());
        
    }
}


I just try to make CampusArea class to deliberately try to differentiate from Shape "is-a" generalization with Square and Circle, i.e. CampusArea could not be subclass of Shape. And Java interface GeometricInterface is created and whichever (concrete) classes implement it, the abstract getArea() method must be implemented. This basic concept also manifested into Java AWT/Swing GUI interfaces, Java multiple inheritance concept and independently implementable interfaces on Java collection framework.


References:
Anthony Lee W.H., Unit 5:Polymorphism and Object Reference, ICT201 Further programming and Object-oriented Concepts Using Java, SIM University
Anthony Lee W.H., Unit 2:Object-oriented Approach, ICT203 Foundations in Modern System Design, SIM University

Career Switch or Upgrade, SPUR Opportunity


Current recession crisis, Singapore government draw out framework for SPUR (Skills Programme for Upgrading and Resilience). This is somewhat great opportunity for Singaporean and Permanent Resident. Because of this framework, there are plenty of institutes come out with short courses, professional certification courses, diploma courses and so on. The institutes include NUS, NTU, SMU, ITE, Polytechnics and all other private educational centers. Because of SPUR back programme, if you took these courses, you will be subsidized as much as 90% of course fee. So, it is a good timing to explore career upgrade (if you like your current working nature) or career switch (if you want to change your profession). The following web address describes more details about SPUR and related info.


For example Scenario and Walkthrough..
One catch for me is that, lately I'm hunting programming knowledge in Game Development. With SPUR, I'm finding any opportunity for courses. So, here are a few finding that really attractive.

The first programme that I found is IDGT (Institute of Digital Game Technology). It seems joint institutes(NTU IMI, TqGlobal China, IDM, etc) conducted the programme. A quick summary as follow.
  • 1 year, full-time 
  • diploma course 
  • will be conducted at NTU campus
  • course fee SGD1447.50 (10% of SGD14475, 90% less by SPUR)
  • optional training stipend SGD1000/month (total SGD12000 for 1 year course duration)
  • the course concept and layout seems good
Interested? Look more details at the following web address.
The second programme that I found is conducted by DigiPen Singapore. It has also the same underlying SPUR framework and offering great opportunities as well. Only the difference is that DigiPen course broken down into pieces such that 
  • 1 month+ Certificate > 2 month+ Specialist Diploma > 5+ Advanced Diploma
So that if you could have previous knowledge, you could just straight to enroll the focus scope. DigiPen programme also have SPUR 90% and stipend SGD1000/month. Look more details at the following web address.
So, this scenario walkthrough is for Game Development focus. There are plenty of programmes. For example, RHCT course programme conducted by Singapore Polytechnic for IT sector.
So how, now convinced?
Above scenario and walkthrough is just my interest for Game Development Industrial. There are plenty of SPUR programmes for different sectors such as Finance, Business Management, Accounting, Nursing, Life Science/Health, IT/ICT, Engineering, etc.

But how should I find my interest programme and how should I plan for my career switch/upgrade?
  1. Think. Plan. And be manageable.
  2. Ask, what my passion is to focus on. Which field area you would like to go on.
  3. Be decided.
  4. Visit SPUR website, explore by individual category to find programmes from each sector.

Hope, this message would help your career upgrade or switch.
Say, Victor is nice! :-)

Thursday, May 14, 2009

To study in Singapore IHLs Schools under MOE and some tips

Preface
The following article was first written around in 2007 and published at NYPMyanmar.com student community website. It's about the educational advice and tips for student(parent also should read) who like to study in Singapore, specifically from Myanmar (but not limited to all international students who aiming Singapore for study/working).
I received a few appreciation from who happen to read up this article and happen to get through for their study plan. Now, I will do some editorial again and try to maintain with fresh information as possible as I can. Anyway, I would still recommend to refer to respective sites and links for latest update and policy. The target range of student is
  • academic-oriented education (post High School and looking for undergraduate study) and
  • work-oriented education (who own first-degree and have working experience).
I try to elaborate different approaches and educational walkthrough scenarios in this article, which my best understanding of Myanmar student background and study walkthrough, and also based on some of my own experience and people around me.

Best wish,
~vskl


To study in Singapore's IHLs School Under MOE
Submitted vskl on Mon, 07/02/2007 - 06:13.

MOE stands for Ministry Of Education. If you are looking schools in Singapore, it is good to choose MOE recognized schools. There are 10 institute of higher learning public school, in short 10IHLs. Best place to start at http://www.moe.gov.sg/ and find the links to suit your needs. For high school graduates from BEHS might look the following site.

http://www.moe.gov.sg/corporate/post_secondary.htm

As of 2008/2009, MOE seems always try to draw better strategy for Singapore to be excellence study place for educational pursuit among Eastern Asia/South East Asia region. There are plenty of more educational sectors invested in Singapore. MOE seems also try to expand on their recognition and nominated more and more educational centers/institutions lately. But also not to oversight on institution's credibility and standard. Once you are on educational pursuit mode, have an eagle-eye on MOE policy, news and updates for new fresh opportunities through news channel(Channel News Asia) and/or newspaper(The Straight Times).

Good Exercise
It is never wrong idea to take a TOEFL or SAT I or IELTS if you are looking for undergraduate study in oversea institutes. In Singapore, good exercise to check first whether your appointed institute is MOE recognized or not. Beware that there are a lot of private institutions out there in Singapore, and some institutions/centers can attend in your local (Yangon) as well. MOE recognized the Basic Education High School (BEHS) as GCE 'O' level, so your good BEHS academic records are the best supporting document for admission. So, please be reminded your love youngs to study hard for BEHS right away, as well.
When I attend for consultation, one major fallacy I found out is that people are usually never trying to clarify the authenticity of message/information which they received. And trying to justify with general concepts and assume the solution as the way they wanted to be. Especially, parent. Latter part of walkthrough, the real path is not really as the way they wanted to be (by a student--a child). This could yield high chance for failure such as drop-out or educational pursuit dead-end.

Local is better in some cases..
If your appointed school is private, it is good to find the same flavor private institution in your local (Yangon) as well. Attend in your current local and gather the Certs, then you should better find your job/career in abroad (perhaps in Singapore). It is not recommended to study in Singapore if your targeted institution is a private one and rather new.
I have a story to tell about this by the way. One of my close who asked me for his/her further plan. I did say that, "If you want to go abroad, you should better start off with education (institutes or academic) then find a job. The philosophy is that every country favour to its local qualification, no matter how high or low grade certification you did own while you are finding a job. It's kind of localization policy which we might not boldly see such policy within Yangon (or your current local) about this." But soon after we met again, I have been asked about all these private education centers or some rather new centers. I replied "No, please try somethingelse.. may be straight away to find work." Then he/she replied "You recommended me to go for study because of job demand in the local-favoured-qualification!!"
Well, I admitted that it is not included for these private education centers. But these doesn't mean that every private education centers are not good or do not have recognization. There are some which have their heritage and well-known profiles. But a few thou!! Yangon already have those a few, in my thought. Education centers like well-known profile might not miss the student, study and education demands from Myanmar students.

After Poly and the path for...
Why MOE? Because you can seek for tution grant (3 year bond). According to above MOE site FAQ, the following policy has changed for those poly graduates who wanna go for further study just after poly(this opportunity/policy is last time only available for Diploma with Merit);
Deferment of TG Bond
Deferment for Further Studies
Q20 What are the deferment criteria if I wish to defer my TG bond for further studies?
You will be allowed to defer your TG bond as long as you have gained admission to a course in an academic institution, either local or overseas. You need not be pursuing a higher qualification when seeking deferment for the purpose of further studies. TG recipients who pursue further studies at any of the 10 IHLs do not have to provide a security deposit. However, those who pursue further studies at institutions other than the 10 IHLs will be required to provide a security deposit in the form of a Bankers Guarantee (BG).

Q21 How do I apply for deferment? What will happen to my bond obligation?
Category 1 - Polytechnic TG recipients pursuing degree courses in NUS, NTU or SMU
You can apply for admission directly to the University. Upon successful admission, MOE will make arrangements for you to execute a Supplemental Agreement to allow you to defer your TG bond and receive another TG for your studies in the University. Upon the completion of your further studies, you will be required to serve out the 3-year bond obligation under the new TG agreement concurrently with the remaining bond obligation outstanding at the point of deferment.
Category 2 - TG recipients pursuing courses in one of the 10 IHLs (except for those in Category 1)
You can apply for admission directly to the Institution. Upon the completion of your further studies, you will be required to serve out your remaining bond obligation outstanding at the point of deferment. If you have received another TG for your further studies in one of the 10 IHLs, you will serve out the 3-year bond obligation under the new TG agreement concurrently with the remaining bond obligation.
Category 3 - TG recipients pursing courses in local private institutions or overseas Institutions, other than the 10 IHLs
You are required to fill up the attached form and submit it together with all the required documents (only certified true copies will be accepted), to the TG Section at least two months before the commencement of your deferment period. Approval for your deferment is subject to you providing a BG. Upon completion of your further studies, you will be required to serve out the remaining bond obligation outstanding at the point of deferment.

Last Updated on 23 December 2005
Computation of Bankers Guarantee / Extension of Deferment Period

How do you know that the policy has changed?
* Old FAQ is still available in MS Word document format.
* New FAQ is updated at this MOE TG application page in PDF format.
Now you can compare this two FAQs. For derferment, Old FAQ mentioned at question 14 and New FAQ mentioned at question 20.

For finance matter?
Well, you can take the financial assistant in this way.
80% Tuition Grant (3 years bond)
80% of remain balance can be waived by taking Tuition Fee Loan Scheme (like Poly)
20% of remain balance can be waived by taking NTU/NUS Study Loan (NTUSL) plus S$3600 for study allowance per year.


In my opinion..
If you are a fresh Poly graduate, I prefer you to go for work a year or more. You can save some money and working experience. If you did work for two years, you can apply for advancement of attachment semester in university which will result you to finish 6 months earlier. In 4 year full-time study, you have first year advancement because of Poly Diploma, plus presenting working experience for skipping 6 month IAP. So in total, it is only 2.5 year to study out of 3 year. You have to present working experience, job offered letter or income tax to admission office. (focus respective website for more details)
So that you can have some life style like using credit card, shopping of what you like, take a trip to Phukat or travelling around. And you can also have the idea of job scope which we actually are doing in industrial, office or work environment reflected to your diploma. This can make you to be a mature person and the mini entry of life style about what is in real world, how you can look back your parents and family, the revision of how's your parent brought you up, self-controlling of money matter by yourself and many, many more about life style which I can't cover up to mention!!
One key important is that through your working, you may gain or find out about what your real interest and career profession as. This make significant steps and preparation for your next first degree study/reading. But most people do oversight on what their real interest and never do critical analysis on self and follow the peers. Beware about that. My advice is, do not take one university course without you have real interest in reading! Do critical thinking, observation and find what your passion to read subject further. If you have more than one interest, list down all interest area on reading subject, revise and review with a knowledgeable and experienced person, order or prioritize the subject for your 1st choice, 2nd choice and so on.

10 Institutes of Higher Learning (10 IHL), public schools
The 10 Institutes of Higher Learning (IHLs) are:
1 ) National University of Singapore (NUS),
2 ) Nanyang Technological University (NTU),
3 ) Singapore Management University (SMU),
4 ) Nanyang Polytechnic (NYP),
5 ) Ngee Ann Polytechnic (NP),
6 ) Temasek Polytechnic (TP),
7 ) Singapore Polytechnic (SP),
8 ) Republic Polytechnic (RP),
(The following two shools are definately suited for those who are art minded like fashion designer as a career, etc..)
9) Nanyang Academy of Fine Arts (NAFA) and
10 ) LaSalle-SIA College of the Arts.

There are more category for listed educational sectors by MOE nowadays, including some private comprehensive institutions. You should always reference MOE website on this.

Now you may ask me about the adminssion for those schools. Please visit to your interested schools accordingly and read through. Good tips to browse by;

1) Find the course by in term of Faculty/Department/School
2) Make sure to overview the Syllabus/Course/Program
3) Find admission department webpage for admission criteria which related to MOE Tution Grant matter (they will be surely stated about that!)

Or

Still no idea about what to do then you should spend some money to consult with local education centers like RV, MCC, etc.

Logical thinking about Career or Study at abroad...
Very, very big question which I almost could not give an answer but please readon:

If I already have a degree from Myanmar (in some major)??

Think first, whether you still want to study
or
You just want to work/find some career in abroad (Singapore)

I have to highlight this category because you have to totally clear about your thoughts before you make any decision. Always remember that you've already owned some Professional Certificate(s) with your Accredited Degree institute. You may not need to study anymore and/or just focus to find your career/job. My suggestion is that please don't take a risk to get institute without a throughout plan (it's worst that if you're looking private institution) while you are actually thinking about for job/career in abroad (Singapore). Our hunt here in this category is: Job & Visa (PR/SPass). Practically, go for Master Study if you are still looking for higher education and still minded to study.
Even spending 3-years Poly Study is another good idea if you are about to go a work-career mixed. In my time, some YIT(alias RIT, YTU) Mechanical/Electrical degree holders came Poly to get the diploma for finding their job/career. Poly diploma is more alike Professional Certificate to secure a job rather than academic credited. Poly is not age-restricted but it is favoured not more than 25. But I have seen a person who was about 28 and attended the TP, in 2005 intake! By then your age is now a big concerned. You are a degree holder so you would probably around -25+ or more.
I have no detail answer for that. Perhaps, you should find some jobs either in Yangon or abroad which suit you or do some own business. I can just advise that it has to be made it clear for
  1. those people who truely focusing on study or
  2. those people who are more into Job and Career.
For hunting Job/Career, you should probably have more job experience than study life. For this, instead of academic oriented study life that has been discussed, you should rather approach career oriented study path.

For career oriented study
For those who holding Computer and IT realted fields study, you might hunt a few full-time graduate diploma courses offered by NUS.

For those who holding E-Major or language related fields study, and have an experience on teaching related field, you might hunt a few full-time graduate diploma courses offered by NIE. In other term, "Teaching as a Career"
Engineering as a Profession
Engineering is the most opening subject to Singapore education. Public schools (IHLs) that has been discussed earlier, i.e. all NIE and Polytechnics, NTU, NUS, are devoting to engineering institution. Refer each respective school websites for details of various engineering study fields. As in contrast, the following websites are promoting engineering in Singapore.
Additionally, UniSIM as such private university is also one of the good choice for career oriented study plan. One popular pathway that most Poly engineering graduate practice is to further study on the following course while they are keeping pace on working life.
There are many more certification and short courses throughout these schools. Focus each school website for more details.

~vskl


Some of my Surveys and Reviews

Singapore Private Management Schools
Submitted by vskl on Mon, 07/02/2007 - 09:38.

The following are not IHLs by MOE. All known to be as Private institute and university relateing to Business, Management and other courses.

UniSIM is another popular private comprehensive university and Singapore first comprehensive private university by MOE. I heard a good feedback from those who attended. It is saying thatUniSIM is going to 4th Singapore MOE recognized university soon. (But this information is not confirmed yet and Wikipedia universities list for Singapore stating at 4th place.) I'm currently pursuing my 1st degree BSc Information and Communication Technology in UniSIM. Based on my real world experience, if you are work-study-mixed life, I highly recommend this institution.

And SIM is upper management of UniSIM, known as the SIM Education Group and offering degrees from oversea universities, which mean your degree will be credited by appointed university by SIM, not UniSIM. Most degrees are from Australia Universities.

Nanyang Institute of Management, the major range of Bussiness, Nursing, Language, Tourism and Hospitality. Heard that the school has joint or opening related in Myanmar as well. Get to school website for more information.
Music as a Profession
Submitted by vskl on Sun, 07/15/2007 - 10:21.

First, remember, a paper is not a first place in Arts and Music logic.Many, many, talk for SAE. Well, I don't oppose thou. You can find more informations here and there, and the site itself.
http://www.saesingapore.com/

But Singapore is not very seasoned place for those who urging for Arts and Music. Admit that Singapore is good in technology that you won't miss any high-end techii stuff. You can have it all, only that $$.

If I were to revise and look for Music as a profession, I would probably go Malaysia, and attend ICOM;
http://www.icom.edu.my/

Malaysia, somehow 70% musician hang around in Singapore are Malaysian or SG-Malaysian, is better seasoned place to stay if you were in Arts and Music. Good trick is that you can climb up to Berklee through ICOM.
http://www.berklee.edu/

One recommendation is that if you still look into Singapore, then go Nee Ann Poly, Film and Media Study Diploma course. Then you may have a few bright future to climb up...
http://www.np.edu.sg/fms/

~vskl


References

Thursday, May 07, 2009

Java as a First Programming Language

I found these two articles.

Computer Science Education: Where Are the Software Engineers of Tomorrow?

Dr. Robert B.K. Dewar, AdaCore Inc.
Dr. Edmond Schonberg, AdaCore Inc.
http://www.stsc.hill.af.mil/CrossTalk/2008/01/0801DewarSchonberg.html

The Pitfalls of Java as a First Programming Language - A Response
My wonderland...
I used to wonder this kind of question.. Apparently, all Singapore Universities use Java for teaching Object-Oriented. This could also simply check academic IDE BlueJ user listing as a whole edu world. I remember about my Java/OOP lecturer saying during lecture that "..C as such obsolete language.." and "those who have C programming language background, please be ware that do not add your own salt and pepper in here[this course]". I was smiling because prior taking this course, my first programming language that being taught is C/C++ during/after high school, around 1995/1999.

Brief of my learning curve...
That's because Java was introduced in 1995, and not much of computer teaching centers available on Java programming, within my town. But there are numbers of C/C++ teaching centers. Anyway, admit that I have not much learning upon Object-Oriented concepts. All the time doing is to think logic procedural, draw flow chart and code. Soon after entered into Polytechnic, and again all the time doing is procedural device programming, again C and Assembly, PBASIC, even ladder diagram programming.. So after Poly study, I was started to involved and sought to learn web programming such as scripting in PHP, JavaScript, Perl, VB, etc and some Bash shell scripting for System Administration along with Linux/UNIX learning. So, that's how it was for me. After all this time, I started to feel that I wanted to learn/find out more about OOP, seriously.

Conclusion..
But learning straight into Java/OOP and its alone, I think it might not be mastered enough for concrete logic coding such as iteration, control structure, conditional, messaging passing. Because those C and procedural languages are nothing more that doing such iteration, control structure, conditional, messaging passing to complete the given tasks. I found myself that, my previous procedural programming knowledge were very supported on my OOP learning.

I found, even learning and mastering C and other procedural languages first then follow by object-oriented with Java resulted a better skilled programmer.

Thursday, April 23, 2009

Fat and Furious?



Too Fat, Too Furious?
:), marching straight to 30, unlike young days, more times are spending on Eat and Sleep co.ltd., see above Pot-bellied pig picture (cute?), yah just like that. Getting lazier than before. Getting weight and little tummy is growing there. Of course, come in effect of having Beer! By the way, I used to dislike about a girl with sizable(big) tummy when I was young. However, this justification un-true to me now. It more sexual appeal to me now. Ummm, as time goes by, the taste and the like change.

Furious about over weight and Fat. Some articles from wikipedia.
http://en.wikipedia.org/wiki/Obesity
http://en.wikipedia.org/wiki/Fat
http://en.wikipedia.org/wiki/Adipose_tissue

The main concept is, if happen to do exercise for reducing weight/Fat, make sure to do exercise that the Fat are burned.

--

Wednesday, April 22, 2009

Mac BootCamp Windows XP SP2 to SP3 -- space error

Mac BootCamp with Windows XP SP2 upgrade to SP3, the following error encounter.

There is not enough disk space on C:\WINDOWS\$NtServicePackUninstall$ to
install Service Pack 3. Setup requires a minimum of 4 additional megabytes of
free space or if you want to archive the files for uninstallation, Setup
requires 4 additional megabytes of free space. Free additional space on your
hard disk and then try again.


Microsoft KB for presenting issue

Apple BootCamp 2.1 requires for Windows XP

Similar Article

Elapsed Time - it's just time taking pain!
Windows XP SP3 - 316.4MB
Boot Camp Update 2.1 for Windows XP - 215MB

Monday, April 20, 2009

OO with UML

UML and its notation diagram intend to help coding? I don't think so.
But UML and its notation diagram come in great help for you lazy coder/programmer on documentation, presentation and long-run [development life-cycle] project.

State Chart Diagram






Activity Diagram


Class Association Diagram




Monday, November 03, 2008

Golfing at driving range : Aug 2005 Sembawang

This clip has taken late 2005, around August at Sembawang driving range which now move to elsewhere. Gotta find near driving range field again. All the way, since started playing golf 14/15 of my age around, I play mostly in driving range unlike I master in Tennis. :-P. Anyway, both Tennis and Golf share some fundamental principal such as swing, concentration, etc.. apart from run-around Vs walk-around playing type. Golf feel more ease to me as the age grow.

video

Some links related to golfing in Singapore. Of course, green fee is kind of expensive but driving range is good option and choice for regular practice and health.

By the way, I even don't have any handicap record, yet!!

Singapore Golfing:
http://www.mbgc.com.sg/
http://www.golfers.com.sg/
http://www.jcc.org.sg/golfing/range.html
http://www.orchidclub.com/moby/cms/golfing/practice.html
http://www.sicc.org.sg/