Thursday, March 11, 2010
Y!M pager server
is down for Y!M 6.5 and prior versions:
( http://mediocre-ninja.blogspot.com/2009/06/pidgin-ym-connection.html )
Compatible clients such as Pidgin and Kopete suffers, too. But if you upgrade to the recent versions, it should be fine.
For pidgin (on Ubuntu), you need to upgrade pidgin-data to 2.5.7+ to work with new Y!M protocol.
( http://mediocre-ninja.blogspot.com/2009/06/pidgin-ym-connection.html )
Compatible clients such as Pidgin and Kopete suffers, too. But if you upgrade to the recent versions, it should be fine.
For pidgin (on Ubuntu), you need to upgrade pidgin-data to 2.5.7+ to work with new Y!M protocol.
Labels:
Linux-BSD-Unix,
OpenSource
Tuesday, March 09, 2010
Cyber Station experience
Some experience with Windows when consulting for a few Cyber Station sites.
A. PARTITION HDD
B. REPLACE IE ON XP
by FireFox or Chrome.
1/ Download Firefox/Chrome and some plugins (JRE, FlashPlayer, IETab)
2/ Install Flash Player
3/ Install JRE
4/ Install Firefox/Chrome
5/ Launch Firefox/Chrome, install IETab and configure it
6/ Restart Firefox/Chrome, customize it (homepage, download, more plugins)
7/ Hide IE icon from desktop
8/ Change IE icon in QuickLaunch bar to launch Firefox (but still use IE picture)
9/ (rename the icon title to "Browser" and) Copy that "fake" icon to Desktop
Done ! Bye bye IE 6 :-)
Recently tested:
* Firefox 2.0.20 + FlashPlayer 10.0.22 + JRE 1.6.0_07 ( + IETab 1.3)
* Firefox 3.5.2 + FlashPlayer 10.0.45 + JRE 1.6.0_15 ( + IETab 1.5)
* Chrome 4.x + FlashPlayer 10.0.45 + JRE 1.6.0_15 ( + IETab for Chrome)
A. PARTITION HDD
B. REPLACE IE ON XP
by FireFox or Chrome.
1/ Download Firefox/Chrome and some plugins (JRE, FlashPlayer, IETab)
2/ Install Flash Player
3/ Install JRE
4/ Install Firefox/Chrome
5/ Launch Firefox/Chrome, install IETab and configure it
6/ Restart Firefox/Chrome, customize it (homepage, download, more plugins)
7/ Hide IE icon from desktop
8/ Change IE icon in QuickLaunch bar to launch Firefox (but still use IE picture)
9/ (rename the icon title to "Browser" and) Copy that "fake" icon to Desktop
Done ! Bye bye IE 6 :-)
Recently tested:
* Firefox 2.0.20 + FlashPlayer 10.0.22 + JRE 1.6.0_07 ( + IETab 1.3)
* Firefox 3.5.2 + FlashPlayer 10.0.45 + JRE 1.6.0_15 ( + IETab 1.5)
* Chrome 4.x + FlashPlayer 10.0.45 + JRE 1.6.0_15 ( + IETab for Chrome)
Labels:
OpenSource
Saturday, February 27, 2010
Shorten URL sites
So với các trang từ xưa như tinyUrl.com hay easyUri.com thì các trang mới vừa ngắn hơn, vừa giao diện đơn giản và ít Ads hơn :
Thử nghiệm Mediocre-Ninja.blogSpot.com : (http://mediocre-ninja.blogspot.com)
http://3.ly/IMDw
http://tr.im/Q1od
http://nn.nf/912b
http://8byf.gu.ma
http://is.gd/9fJD3
http://ow.ly/1bFm8
http://sn.im/12t2u6
http://smal.ly/1K2
http://su.pr/31NNQU
http://url.ie/57y0
http://go2.vg/7OkuF
http://bit.ly/ckUrCp
http://cli.gs/1NZ9PH
http://pnt.me/x8qz0P
http://yep.it/ms7xje
http://fly2.ws/wi51iNe
http://smal.ly/1K2
http://sova.in/3mh
http://nsfw.in/aab13f
http://www.x.se/brty
http://twurl.nl/gnzgo2
http://adjix.com/xprh
http://snipurl.com/uj2i2
http://clockurl.com/Fi
==== DEPRECATED (acquired by bit.ly or pending the service for various reasons)
http://k.vu/dt
http://j.mp/aw3E6y
http://bt.gd/1zP
http://kl.am/7OS3
http://zi.ma/6f0425
http://zud.me/1y
Theo các bạn thì site nào là tốt nhất ?
Thử nghiệm Mediocre-Ninja.blogSpot.com : (http://mediocre-ninja.blogspot.com)
http://3.ly/IMDw
http://tr.im/Q1od
http://nn.nf/912b
http://8byf.gu.ma
http://is.gd/9fJD3
http://ow.ly/1bFm8
http://sn.im/12t2u6
http://smal.ly/1K2
http://su.pr/31NNQU
http://url.ie/57y0
http://go2.vg/7OkuF
http://bit.ly/ckUrCp
http://cli.gs/1NZ9PH
http://pnt.me/x8qz0P
http://yep.it/ms7xje
http://fly2.ws/wi51iNe
http://smal.ly/1K2
http://sova.in/3mh
http://nsfw.in/aab13f
http://www.x.se/brty
http://twurl.nl/gnzgo2
http://adjix.com/xprh
http://snipurl.com/uj2i2
http://clockurl.com/Fi
==== DEPRECATED (acquired by bit.ly or pending the service for various reasons)
http://k.vu/dt
http://j.mp/aw3E6y
http://bt.gd/1zP
http://kl.am/7OS3
http://zi.ma/6f0425
http://zud.me/1y
Theo các bạn thì site nào là tốt nhất ?
Labels:
top5-bestTool-performance
Sunday, February 07, 2010
Presenting in English
18 things make you a better presenter, especially when presenting in English :
1/ LEAVE NOTHING TO CHANCE
2/ KNOW EXACTLY HOW TO START
3/ GET STRAIGHT TO THE POINT
4/ TALK TO YOUR AUDIENCE
5/ KNOW WHAT WORKS
6/ BE CONCISE
(to be continued)
1/ LEAVE NOTHING TO CHANCE
2/ KNOW EXACTLY HOW TO START
3/ GET STRAIGHT TO THE POINT
4/ TALK TO YOUR AUDIENCE
5/ KNOW WHAT WORKS
6/ BE CONCISE
(to be continued)
Labels:
project-management-plan,
SoftSkill
Tuesday, December 15, 2009
Xmarks for Chrome
Lâu nay thằng FF 3 trên Ubuntu (lappy) cứ bị lỗi ì ạch, chuyển sang 3.5 vẫn chậm, 2.0 thì chạy được nhưng nhiều add-on ko compatible, thế là phải xài Konqueror và Chromium .
Hai cái này xài được, chỉ vướng 2 chỗ là bookmark (Xmarks) và zoom. May quá bây giờ Google đã release Chrome bản chính thức cho Linux , không những chạy Flash phe phé, mà còn zoom khá hơn, và Xmarks cũng đã hỗ trợ :
bye bye FireFox@lappy !
Labels:
Linux-BSD-Unix,
OpenSource
Sunday, October 18, 2009
Smart technical Questions
If you want a technical support online, you should know how to ask properly:
http://newbielearnlinux.googlepages.com/SmartQuestions
(http://sites.google.com/site/newbielearnlinux2/SmartQuestions)
Warning: this style should NOT be applied when talking with girls, unless you are trying to dump her :-)
http://newbielearnlinux.googlepages.com/SmartQuestions
(http://sites.google.com/site/newbielearnlinux2/SmartQuestions)
Warning: this style should NOT be applied when talking with girls, unless you are trying to dump her :-)
Labels:
coding,
Linux-BSD-Unix
Monday, September 07, 2009
Eclipse WTP Hotswap
One of the reason why JavaEE does not have many succesful projects is that its development time is usually longer than other competitors' time (PHP, Ruby, Python, ASP.NET, ...) . Ok, we all know the burden of overly complicated design and over-engineered implementations from Sun, so let's skip them and go to the one to be resolved: the Hot-Deploy time. In other words, the time for developers to see the web-page refreshed with their changes applied.
The word "hot deploy" used above may not reflect its original meaning, not only because my poor English, but also because (Vietnamese) developers have different concepts of it: "automatic hot swap", "automatic redeploy webapp", "automatic restart container" .
This is how I understand the differences:
1/ Hot deploy container: automatic restart whole servlet container (Tomcat)
2/ Hot deploy webapp: automatic reload context root and all classes of respective webapp.
3/ Hot deploy classes: hot-swap only the re-compiled classes (runtime)
It is obvious that #1 is slower than #2 and #2 is slower than #3: Hot-swap or hot-code replacing .
Ok, now what? Let's try to reduce the hot-deploy time in Java developement in the well-known combination: Eclipse + WTP plugins + Tomcat. Assumed that you already have an Eclipse with WTP/WST plugins installed (e.g. Eclipse JavaEE version).
Create a New Server WTP for your web application
From the New menu, select Other… -> Server -> Server. For your server type (probably "Apache Tomcat 6"), specify the path to your Tomcat installation directory, e.g. "/opt/apache-tomcat-6.0.18" or "D:\USR\apache-tomcat-6.0.18" . Add your web project as a 'Resource' to this server (you may modify the context root first).
Adjust the server's settings
Double click on the Server in your Server view (its name is something like "Tomcat v6.0 Server at localhost-config"), it will display the "Overview" tab:
- Server location: Use Tomcat installation (actually, either "workspace metadata" or "custom location" can work as well, but let's use the most simple for beginners)
- Port: modify the HTTP port from 8080 to the one you desire. You may also modify the remaining 2 ports respectively to avoid port conflicts between Tomcat instances.
- Timeout: better increase them 100 or 200 seconds more.
- Server options: not necessary to check any options.
Enable classes hot-swap
Ok, the main settings for hot-deploy here:
- Publishing: Auto publish when resources changes (to hot-deploy text resources like .properties, .html, .jsp, ... and packaged resources like .jar, .zip ) , the interval should be small (1 or 0 sec).
- Switch to "Modules" tab, since you already added the web app to the server, there should be at least a "module" with the specified context root (path URL). Select that module, then click "Edit" button, uncheck the "Auto reloading enabled" checkbox, click OK. Now your module should have "Auto Reload" setting as disabled (equivalence to <Context reloadable="false" ... /> in server.xml/context.xml of Tomcat)
- Save the changes (at least make sure the two above has been applied already).
Start the server in Debug mode
Once you started the web-app in Debug (right click -> choose "Debug..."), Changes you make to your JSPs or inside Java methods will be instantly hotswapped into your running webapp, therefore reduce the development time (at least the wasted time looking at console when reloading web-app).
Why?
Since Java 1.4.2 , the JPDA supports hot-swap classes on debug mode, by manipulateing class loaders at runtime. Eclipse makes use of it via WTP under the name Hot Code Replace . Setting auto-publish helps replacing text files and recompiled jar, but not for classes. By default, Tomcat's context reloading will reload all classes using its class loaders and therefore does not take advantage of hot-deployed classes.
Note that JPDA is not the best for hot code replacing, the number one here must be JRebel. Some web frameworks (Tapestry, Stripes, Wicket, Grails, Roo) also has their own classloader handlings to support quick reload. They're all inspired by some standalone JAR files around which I don't remember (probably the pioneers for JRebel). And FYI, Tomcat Sysdeo plugin and Jetty can also support HCR , in case you don't want to use Tomcat WTP.
Some more recommended settings
Running Tomcat in Eclipse (via WTP plugin) is a bit slower than via external command, and running in Debug mode is somehow resource-hogging, which may result in errors like hot-swap failure or OutOfMemoryError . To avoid those issues, you may try some JVM options via Tomcat JRE params: Double-click on your server in the "Servers" view, switch to the "Overview" tab, click on the "Open launch configuration" link, switch to the Arguments tab; there you can add relevant memory settings to the "VM Arguments" section
-client -Djava.awt.headless=true
-Xmx1024m
-Xms512m
-XX:MaxPermSize=1024m
-XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:+UseConcMarkSweepGC
Limitations
JPDA HCR not applied: to change the signature of a class (add/remove methods or fields) or to add new classes on the fly. Additionally, some method calls (“stack frames”) can’t be modified, including the main method or any method invoked via reflection, that is, by using java.lang.reflect.Method.invoke().
(JRebel can overcome those limitations)
Good luck & have fun :-) ,
./.
The word "hot deploy" used above may not reflect its original meaning, not only because my poor English, but also because (Vietnamese) developers have different concepts of it: "automatic hot swap", "automatic redeploy webapp", "automatic restart container" .
This is how I understand the differences:
1/ Hot deploy container: automatic restart whole servlet container (Tomcat)
2/ Hot deploy webapp: automatic reload context root and all classes of respective webapp.
3/ Hot deploy classes: hot-swap only the re-compiled classes (runtime)
It is obvious that #1 is slower than #2 and #2 is slower than #3: Hot-swap or hot-code replacing .
Ok, now what? Let's try to reduce the hot-deploy time in Java developement in the well-known combination: Eclipse + WTP plugins + Tomcat. Assumed that you already have an Eclipse with WTP/WST plugins installed (e.g. Eclipse JavaEE version).
Create a New Server WTP for your web application
From the New menu, select Other… -> Server -> Server. For your server type (probably "Apache Tomcat 6"), specify the path to your Tomcat installation directory, e.g. "/opt/apache-tomcat-6.0.18" or "D:\USR\apache-tomcat-6.0.18" . Add your web project as a 'Resource' to this server (you may modify the context root first).
Adjust the server's settings
Double click on the Server in your Server view (its name is something like "Tomcat v6.0 Server at localhost-config"), it will display the "Overview" tab:
- Server location: Use Tomcat installation (actually, either "workspace metadata" or "custom location" can work as well, but let's use the most simple for beginners)
- Port: modify the HTTP port from 8080 to the one you desire. You may also modify the remaining 2 ports respectively to avoid port conflicts between Tomcat instances.
- Timeout: better increase them 100 or 200 seconds more.
- Server options: not necessary to check any options.
Enable classes hot-swap
Ok, the main settings for hot-deploy here:
- Publishing: Auto publish when resources changes (to hot-deploy text resources like .properties, .html, .jsp, ... and packaged resources like .jar, .zip ) , the interval should be small (1 or 0 sec).
- Switch to "Modules" tab, since you already added the web app to the server, there should be at least a "module" with the specified context root (path URL). Select that module, then click "Edit" button, uncheck the "Auto reloading enabled" checkbox, click OK. Now your module should have "Auto Reload" setting as disabled (equivalence to <Context reloadable="false" ... /> in server.xml/context.xml of Tomcat)
- Save the changes (at least make sure the two above has been applied already).
Start the server in Debug mode
Once you started the web-app in Debug (right click -> choose "Debug..."), Changes you make to your JSPs or inside Java methods will be instantly hotswapped into your running webapp, therefore reduce the development time (at least the wasted time looking at console when reloading web-app).
Why?
Since Java 1.4.2 , the JPDA supports hot-swap classes on debug mode, by manipulateing class loaders at runtime. Eclipse makes use of it via WTP under the name Hot Code Replace . Setting auto-publish helps replacing text files and recompiled jar, but not for classes. By default, Tomcat's context reloading will reload all classes using its class loaders and therefore does not take advantage of hot-deployed classes.
Note that JPDA is not the best for hot code replacing, the number one here must be JRebel. Some web frameworks (Tapestry, Stripes, Wicket, Grails, Roo) also has their own classloader handlings to support quick reload. They're all inspired by some standalone JAR files around which I don't remember (probably the pioneers for JRebel). And FYI, Tomcat Sysdeo plugin and Jetty can also support HCR , in case you don't want to use Tomcat WTP.
Some more recommended settings
Running Tomcat in Eclipse (via WTP plugin) is a bit slower than via external command, and running in Debug mode is somehow resource-hogging, which may result in errors like hot-swap failure or OutOfMemoryError . To avoid those issues, you may try some JVM options via Tomcat JRE params: Double-click on your server in the "Servers" view, switch to the "Overview" tab, click on the "Open launch configuration" link, switch to the Arguments tab; there you can add relevant memory settings to the "VM Arguments" section
-client -Djava.awt.headless=true
-Xmx1024m
-Xms512m
-XX:MaxPermSize=1024m
-XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled -XX:+UseConcMarkSweepGC
Limitations
JPDA HCR not applied: to change the signature of a class (add/remove methods or fields) or to add new classes on the fly. Additionally, some method calls (“stack frames”) can’t be modified, including the main method or any method invoked via reflection, that is, by using java.lang.reflect.Method.invoke().
(JRebel can overcome those limitations)
Good luck & have fun :-) ,
./.
Labels:
Free-Libre-OpenSource,
Java-Groovy-Scala
Tuesday, September 01, 2009
Maven Archetype quick notes
maven-archetype-plugin allows the user to create a Maven 2 project from an existing template caled an archetype.
If you just use an IDE to generate Maven project, you can be familiar with default project structure of Maven:
Let's consider an example using it to create a "todo-list" project which contains 2 sub-projects: todo-core and todo-web
Old-fashioned way:
New way:
Now we can edit the pom.xml to get desired result.
If you just use an IDE to generate Maven project, you can be familiar with default project structure of Maven:
Let's consider an example using it to create a "todo-list" project which contains 2 sub-projects: todo-core and todo-web
cd workspace
mkdir -p todo-list
cd todo-list
mkdir -p todo-list
cd todo-list
Old-fashioned way:
mvn archetype:create -DartifactId=todo-core -DgroupId=org.vnoss
mvn archetype:create -DartifactId=todo-web -DgroupId=org.vnoss -DarchetypeArtifactId=maven-archetype-webapp
mvn archetype:create -DartifactId=todo-web -DgroupId=org.vnoss -DarchetypeArtifactId=maven-archetype-webapp
New way:
mvn archetype:generate
mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp
mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp
Now we can edit the pom.xml to get desired result.
Labels:
Java-Groovy-Scala,
Linux-BSD-Unix
Monday, August 17, 2009
Gnome theme collection
Some nice themes for GNOME (mostly Ubuntu) on gnome-look.org .
Download and install what you like the most !
HAVE FUN !
Download and install what you like the most !
(you have to click on thumbnails to view larger image of screenshot)
HAVE FUN !
Labels:
Linux-BSD-Unix
Subscribe to:
Posts (Atom)