Friday, May 28, 2010

What the Hell Is Going on in Vietnam?

I have just read this: What the Hell Is Going on in Indonesia via TechCrunch. The author (Sarah Lacy, one of my favourite) took her chance in Indonesia to find out why there is such a great growth in Internet usage in that South East Asia country. It was a good read.

There are some interesting parts like

I grilled them on some basic questions to bring you a Web-in-Indonesia primer. But before we get to those, here’s what impressed me the most about this small-but-tightly-knit community: It’s incredibly collegial. Plenty of research has shown that the biggest reason Silicon Valley beat Boston as a venture capital and startup hot spot was because culturally it was open, trading employees, funding, mentorship and ideas among competitors. It’s not uncommon to see Web competitors in the Valley having dinner together and generally discussing business challenges, before they go back to the office for some late night coding to bury one another in the market.
I laughed so hard reading this!  But then it was eye opening when the author found they do the same thing in Indonesia. Maybe, just maybe, that's the key point to listen to competitors and improve ourself to be better than them? Hmm, it's a little tricky here, better than but not, please don't try to become something alike. By that way, the whole competitions will become more and more competitive and then finally, users will benefit from that. Such a great way of doing thing, at least in theory.

Also, as Indonesia is a (going strong) developing country, its Internet userbase is also growing with 8% of the population, approximate 20 million people (the numbers in Vietnam are 23% and almost 20 million, limited to users using computers only). The pricing in Indonesia is also low with even prepaid BES/BIS (really?) and Blackberries (read: smartphones) are used commonly.

Okie, that's the infrastructure (signal coverage, services and devices) but actually, I think there are problems with our (Vietnamese) developers, with entrepreneurs' business plan. In Indonesia, the situation is quite the same: people don't want to pay for web, most of them don't have credit cards or any other electrical-enabled paying methods. So, what did they (Indonesian developers) do? They build a useful service for free initially and plan ahead to generate revenue later. Twitter as an example, it's 4 years old with cash flow positive (recently) but it hasn't been being profit, just yet. Of course, taking Twitter - a global phenomenon - as an example is not really appropriate but the point is: it takes time to be successful in web business (it also takes a lot of money, needless to say).

Okie, that how others did things, how Vietnamese companies are doing now? I think we are being influenced by Chinese ways of doing thing (yes, those fcukers!). Chinese companies have the tradition of ripping off Western success models and make their own versions in Chinese and for Chinese people. Journalists even have a word for that: copycat. We are doing the same. Exactly the same way. Both in web businesses and a few others (I think it's not correct to say "everything", hopefully). Anybody heard about social network? It sucks. And the new FPT mobile, F99? It sucks, too. Those 2 examples are from Vietnam, let's take a look at our fellows from China. Check out this two sites: Groupon (made in US) and Groupon (made in China) (the Chinese clone managed to rip off the domain name as well). Another lovely couple: Facebook and Xiaonei or Renren. Oh, don't forget those low price iPhone clones from China also. China is the master of cloning and Vietnam is learning from the friendly neighbor really fast. Real fast...

We will see how everything's going. In the mean time, check out the special corner for 3G customers from VietNamNet with a lot of hot sh!t:

Saturday, May 22, 2010

UML Diagram - Here we go

Finally, we made it!

The UML assignment now has 3 versions

  1. Standalone version which is packed as a .jar file and can run without any problem in Windows and Linux (of course, JVM is required). You can get in here (Google Code link). The features are
    1. Build UML class diagram
      • From scratch: using menu, pop-up menu, drag and drop with a bunch of forms
      • From existing source code: load your Java source file(s) and modify the diagram using the same techniques as above
    2. Export Java source file(s) from the diagram. All methods are empty (of course)
    3. Save as Image
      • The whole diagram
      • Or this a part of it
    4. Easy navigation: most of the cases, the diagram will be big and it will be hard to have a good view but you can...
      • Zoom in and zoom out
      • Moving around 
      • Rearrange structures to make them more well-organized (if you mess them up, feel free to re-draw from the menu)
      • Quickly find a structure in the diagram 
      • A more focus view in a structure by display related structures only (from the menu bar or with the pop-up menu)
  2. Eclipse Plugin version. Get it from Google Code and drop it into the dropins directory inside your Eclipse installation (more details). Restart Eclipse (if you are running it) and the plugin should work right away!
    • You can watch a screen cast here
    • With this plugin, if you enable its view (Class Diagram), the view will watch the file in your editor and display it and its related structures. You can also right click in the package view or almost anywhere in Eclipse and get a new entry under Show In which is Class Diagram, click it and you will have a diagram of that item. The killing feature (in my opinion) is you can create new structure within the view using right clicks, after that, one more right click and you can select Generate to create new class right into your project with the specified relationships, properties, methods, etc. It's really amazing! Give it a try
  3. Applet version. This is actually a test to see how the GUI will work inside an applet and it turned out to be pretty neat. You can check it out in an older entry of mine but it's not the latest version. You can grab our submitted .zip package here (MediaFire link) which includes sources code, tests and many other interesting thing to test the applet view
In the source code, my teammates and I tried to comment as much as possible and we even export the documents by javadoc (which is available online here or downloadable here)

Well, that's a great introduction post I think. Don't forget to svn checkout our repository to get the latest source code (currently, the head is revision 50). Our Google Code link is: Thank you for reading this

A short description in Vietnamese for the folks who will have to do this exercise next year: Bài tập lớn Lập trình hướng đối tượng (Java) của thầy Nguyễn Việt Hà (hanv) giao cho lớp K53CC, Đại học Công nghệ, Đại học Quốc gia Hà Nội. Đề 1: Xây dựng biểu đồ lớp từ mã nguồn Java: phân tích mã nguồn Java sau đó hiển thị biểu đồ lớp và các quan hệ (is_a, has_a) của các lớp. Đề 2: Sinh chương trình khung từ biểu đồ thiết kế lớp: xây dựng công cụ đồ họa thiết kế lớp và các quan hệ rồi inh tự động chương trình khung Java: lớp, thuộc tính và định nghĩa phương thức (phương thức rỗng)

Have a nice weekend!

Sunday, May 16, 2010

OOP Assignment 2 - Report Document

Wow, finally I have done the report for the UML assignment. It's really tired to write 20 pages of this, honestly. We will have 3 more days to make it perfect, let's see.

PS: I almost forgot, grab the PDF file here (MediaFire link)

Wednesday, May 12, 2010

UGV Presentation

We did it. A wonderful presentation about UGV

Full version download: (including PowerPoint presentation - packed, English speech, Vietnamese speech)

Sunday, May 9, 2010

UML Diagram - Almost got it

If you haven't read it, we had an assignment 2 months ago about making a Java application which focuses on UML diagram (class diagram specifically). There are 2 assignments actually and each team will select one:

  1. You have a bunch of .java source code files and you have to display the UML diagram of it
  2. The second assignment is opposite of the first one: let built the UML diagram and then generate source code files from it (empty methods of course!!!!)
We made the first attempt really early but we was so busy that we haven't made any further progress until now and hell yeah, we got some really interesting stuffs to show off today.

Some functionalities is not available when you run it as an applet so you may want to download the jar version. It should run well in both Windows or Linux if you have the JRE