Skip to main content

Posts

Showing posts from 2009

Cool Script

හදිසියේ පොඩි java script එකක් හම්බුනා ඔන්න ඒක හැමොටම බලාගන්නත් එක්ක මම මෙක දාන්න හිතුවා.මේක එචර දෙයක් නොවුනට පොඩ්ඩක් හිතුවොත් ගොඩක් දේවල් වලට පාවිච්චි කරන්න පුලුවන්.

javascript: document.body.contentEditable = 'true'; document.designMode = 'on'; void 0

1.මුලින්ම තමන්ට කැමති web site එකකට යන්න.ඔන්න මම නම් මගෙ කැමතිම එකට ගි‍යා.
2. 2 නුව මම කලින් සදහන් කල java script එක රූපයේ ආකාරයට address bar එක මත සටහන් කර Enter කරන්න.




3.ඉන් පසුව ඔබට web පිටුව මත ඇති රූප හො වෙන යම් ඔනැම දෙයක් තමන්ට ඔන ආකාරයට වෙනස් කර ගත හැක.පහත රූපයේ ආකාරයට.






4.මෙය නැවත save කිරීම මගින් ඔබට මෙම පිටුවේ අඩන්ගු css/java script ඇතුලු සියලුදේ සමගින් ලබාගත හැක.

How to genarate Unique ID in Java

Style 1 - UUID

import java.util.UUID;

public class GenerateUUID {

public static final void main(String... aArgs){
//generate random UUIDs
UUID idOne = UUID.randomUUID();
UUID idTwo = UUID.randomUUID();
log("UUID One: " + idOne);
log("UUID Two: " + idTwo);
}

private static void log(Object aObject){
System.out.println( String.valueOf(aObject) );
}
}



Example run :

>java -cp . GenerateUUID
UUID One: 067e6162-3b6f-4ae2-a171-2470b63dff00
UUID Two: 54947df8-0e9e-4471-a2f9-9af509fb5889

If Java 5 is not available, then there are other more laborious ways to generate unique ids


Style 2 - SecureRandom and MessageDigest

import java.security.SecureRandom;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class GenerateId {

public static void main (String... arguments) {
try {
//Initialize SecureRandom
//This is a lengthy operation, to be done only upon
//initialization of the application
SecureRandom …

How to Add User to SVN? කොහොමද SVN එකට පරිෂීලකයෙක් එකතු කරන්නෙ.?

Lot of open source and commercial projects are working on the version control system like SVN,CVS.These days i was tried to configure CVS in my company local server(Linux-Fedora Core).For that purpose, i was searched lot of article about the CVS configuration but couldn't find any good article about "How to add user to SVN" but finally i did it completely.I write down it because it may be helpful to others.

Step 1.
check your CVS folder
#echo $CVSROOT

step 2.
It is possible to have cvs users which are not part of the OS (no local users). This is actually probably wanted too from the security point of view. Simply add a file named passwd (in the CVSROOT directory) containing the users login and password in the crypt format. This is can be done with the apache htpasswd tool.
Note: This passwd file is the only file which has to be edited directly in the CVSROOT directory. Also it won't be checked out. More info with htpasswd --help

# htpasswd -cb passwd prabath password1 # -…

ගුගල් CodeJam

ගුගල් සමාගම විසින් අවුරුදු පතා සිදු කරණු ලබන අංගයක් වන ගුගල් codejam තරග මාලාවේ 2009 අවුරුද්ද සදහා වන තරගය අගෝස්තු මස ආරම්බ කිරීමට නියමිතයි.මෙහිදී ගුගල් විසින් සපයනු ලබන සන්කීර්ණ ගැටලු සදහා පිලිතුරු පරිනණක භාෂාවකින් ලිවීමට ඔබට සිදුවනු ඇත.මෙගැන වැඩි විස්තර දැන ගැනීමට කැමතිනම් ඒ සදහා මෙතනින් පිවිසෙන්න

Shell Script එකක් ලියා ගැනීමේදී සැලකිලිමත්වියයුතු මුලික කරුණු.

Script ඒකක් ලිවීමේදී ඔබට VI එඩිටරය හො gedit වැනි එඩිටරයක් වැනි ඔනෑම text එඩිටරයක් මේ සදහා පාවිචියට ගත හැක.එ ඔනෑම editor මගින් ඔබට අවශ්‍ය script එක ලියා එය .sh යන file extension යටතේ save කර ගත යුතුයි.මේහිදී .sh යන extension එක යොදා ගනුයේ shell script යන වචනයේ කෙටි යෙදුමක් ලෙසයි.උදාහරණයක් ලෙස පහත සදහන් script එක ඔබගේ ඔනෑම එඩිටර් එකක් මත සටහන් කර ගන්න

#
# My first shell script
#
clear
echo "Hell World!!"

මෙහිදී කාටතත් සුපුරුදු පරිදි hello world උදාහරණයක් මා විසින් දී ඇත.සටහන්කරගත්තාට පසුව එය ඔබට කැමති නමක් යොදා අගට .sh එක extension යොදා save කර ගන්න.උදාහරණයක් ලෙස helloworld.sh .
මෙහිදී මීලගට ඔබ ලියාගත් script එක Linux පද්දතියක් තුල run වීමට අවශ්‍ය permission නොහොත් අවසර සැකසිය යුතුය.මේ සදහා ඔබට shell යෙදුමක් බාවිතා කල හැක.පහත සදහන්විදාන වලින් ඒකක් යොදාගෙන ඔබට මෙම කාර්යය කර ගත හැක.

$ chmod +x your-script-name
$ chmod 755 your-script-name

උදාහරණයක් ලෙස
$ chmod +x helloworld.sh

මෙහිදී පහත සදහන් කොටස් මගින් දැක්වෙනුයේ comments සලකුනුයි මෙය එකේ ප්‍රතිපලය සදහා කිසිදු බලපෑමක් සිදු නොකරයි.

#
# My …

Shell Scripting යනු කුමක්ද? සහ කුමක් සදහාද?

සාමාන්‍යයෙන් shell එකකින් කරණුයේ යම්කිසි යුසර් කෙනෙක් විසින් යතුරු පුවරුව හරහ දෙනු ලබන විදාන එකින් එක ක්‍රියාත්මක කිරීමයි.shell script එකක් මගින් කරන ප්‍රදාන කාර්යය වනුයේ එම විදාන එකක් හො කිපයක් text ෆයිල් එකක් මත ලියා තබාගෙන එය එක විට ක්‍රියාත්මක කිරීමයි.එය හරියට windows මෙහෙයුම් පද්දතියේ ඇති batch file වලට සමානයි.
මෙමගින් කාලය විශාල ලෙස ඉතුරු කරගැනීමට හැකි අතරම කාර්යයන් සිවයන්ක්‍රීයවම කිරීමට හැකියාව ලැබෙනවා.මේවා බොහො විට යොදාගනු ලබන්නෙ පරිනණක පද්දති කලමණාකරනය කිරීම වැනි කටයුතු සදහායි.මීලග ලිපියේ සිට shell script එකක් ලියගන්නා ආකාරය නිදසුන් සහිතව ඉදිරිපත් කිරීමට බලාපොරොත්තු ව්මි.

මොකක්ද මෙ linux shell එක කියන්නෙ?

ඇත්තටම shell එක කිඋවම ඔබේ මතකයට නැගේන්නේ කලු පාට හො සුදු පාට සහිතව command සටහන් කරමින් වැඩකරන බොහොම කම්මැලි දෙයක් හැට්යට.නමුත් ඇත්ත මීට වඩා බොහොම වෙනස්.පහත සදහන් රූපය මගින් දැක්වෙන්නේ shell එක සමග වැඩ කිරීමට පාවිච් කරන අතුරු මුහුනතයි.

Kernel එකට අදාල කොටසක් නොඋනත් එය kernel එක හා මෘදුකාංග අතර හා පරිශීලකයන් අතර සම්බන්දතාවය ඇතිකර ගැනීමට බොහො සෙයින් උපකාරීවේ.පහත පෙනෙන රූපය මගින් එය මනාව පැහැදිලිවේ.

මෙහි දැක්වෙන ආකාරයට මගින් සිදුවන කාර්යය ගැන ඔබට යම්කිසි මට්ටමකට අවබොද්යක් ලබාගැනීමට හැකිවෙයැයි සිතමි.සාමාන්‍යන් මෙහෙයුම් පද්දතියක් තුල shell එකකට වඩා වැඩි සංක්‍යාවක් දැකගත හැක.ඔබටත් ඔබගේ Linux පද්දතිය තුල ඇති shell පිලිබදව දැනගැනීමට අවශ‍යනම් මෙම යෙදුම මගින් එය ලබාගත හැක
$ cat /etc/shells
එමෙන්ම දැනට පද්දතියතුල සක්‍රීයව ඇති එක පිලිබදව දැන ගැනීමට අවශ්‍යයනම් මෙම යෙදුම මගින් එය ලබාගත හැක
$ echo $SHELL
දැනට මෙහෙයුම් පද්දතිතුල බහුලවම බාවිතාවන shell එක හැටියට bash නැමති shell එක හදුන් වන්න පුලුවන්.මෙය යන Brian Fox and Chet Ramey දෙදෙනා විසින් සන්වර්දනය කර ඇති අතර නිදහස් මෘදුකාංග පදනම මගින් පවත්වාගෙන යනු ල…

අලුත් වැඩක් අලුත් විදියට

මෙදවස් ටිකේ පොඩ්ඩක් වැඩ අඩු හන්දා ආපහු Blog ලියන ඩැඩේ පටන් ගන්න හිතුනා.ඔන්න මේ පාර අලුත් වැඩක් පටන් ගන්න හිතුනා.අද ඉදලා Linux shell Script ගැන පොඩ් tutorial එකක් සිංහලෙන් ලියන හිතුනා.ඉදිරියේදි ඒ ගැන තොරතුරු මේම blog එක හරහා ඔබට ලබාගත හැක

Portable Ubuntu

ගොඩ කාලෙකට පස්සෙ ඔන්න ආපහු පොඩි ආරංච්යක් පිලිබදව.ආරංච්යක් කිවුවට මේක ට්කක් පරණ ආරංච්යක් නමුත් ගොඩක් අය මේ පිලිබදව නොදන්නා නිසා මේ පිලිබදව කියන්න සිතුනා.Portable Ununtu යනු Windows පද්දතිය තුල වැඩකල හැකි ආකාරයේ මෙහෙයුම් පද්දතියකි.මෙසේ කියු විටම ඔබේ සිතට එනුයේ Virtual Machine එකක් උඩ දුවන ආකාරයේ මෙහෙයුම් පද්දතියකි.නමුත් මෙහි අති විශේෂත්වය වනුයේ මෙය වනුයේ Virtual Machine එකක් උඩ නොව වෙනත් ආකාරයකටය.මෙහි ඇති තාක්ෂණික පසුබිම පිලිබධව අද්‍යනය කිරීමට අවස්තාව නොලැබුනත් මෙය යම්කිසි ම්ට්ටමට Virtual Machine සංකල්පය යොදාගෙන ඇති ආකාරය පැහැදිලිවේ.ඉදිරියේදී මෙහි ඇති තාක්ෂණික පසුබිම පිලිබදව ලිපියක පල කිරීමට බලාපොරොත්තු වෙමි.

සාමාන්‍යන් Virtual Machine එකක් තුල මෙහෙයුම් පද්ධතියක් වැඩකරන අවස්ථාවේ එය වෙනමම Window එකක් තුල තමයි වැඩකරන්නෙ.නමුත් මෙහි ඇති විශේෂත්වය තමයි මෙය වැඩකරන පසුබිම තුලම ස්ථාන ගතවී එහිම අන්ගයක් ලෙස වැඩකිරීමයි.Ubuntu වල ඇති Task Bar එක රූපයේ දැක්වෙන ආකාරයට windows Desktop එක තුලම පිහිටයි.එය ම්ගින් අපට සාමාන්‍යය Ubuntu පද්ධතියක…

මොකක්ද මේ Google Map API කියන්නේ?

ඔන්න මේ දවස් ටිකේ පොඩි වැඩකට අත ගහුවා Google Map API එක්ක.ඇත්තටම වෙනස්ම අත්දැකීමක් ඒක.මොකද සාමානයෙන් මම කරන්නෙ මුදුකාංග වල back end එක්ක වැඩ කරන එක.ඉතින් ඒක ටිකක් කම්මැලි හිතෙන වැඩක්.නමුත් මේ Google Map API එක්ක කරපු වැඩේ ටිකක් වෙනස් මොකද මේක Front end වැඩක් හන්ද.මම හිතන්නේ ඔයාලා හැමොම දැකල ඇති Google Map එක.ඉතින් මේ සේවාව ලබාදෙන්නෙ Google සමාගම.Google සමාගම මේ සේවාව ලබාදෙනවා පමනක් නෙමෙයි ඒක, අනිත් පුද්ගලයින්ටත් එම සේවාව තමන්ගේ වෙබ් පිටුවට හෝ තමන් කැමති ඔනැම තැනකට පාවිචික් කිරීමට අවස්ථාව ලබාදී තිබෙනවා.
අපි බලමු කොහොමද අපිට ඔන විදියට Google Map පාවිචිකරන්නෙ සහ මොනවද තියන Facility කියලා.ඔන්න ඔතනදි තමයි Google Map API කරලියට එන්නෙ.Google Map API මගින් එය පාවිචිකරන්නාට Google Map හි ඇති Function පාවිචියට ගැනීමට මාර්ගයක් සකසා දෙනවා.එමගින් ඉතා පහසුවෙන් අපට වුවමනා ආකාරයට එය හසුරවා ගත හැක.එය Java script යොදාගෙන සංවර්දනය කර ඇත.එම නිසා ඉතා පහසුවෙන් මෙය Web තාක්ෂණයත් සමග යොදා ගත හැක.
මෙය ඉතා සරල නිදසුනක් මගින් මේ ආකාරයට එය යොදාගන්නා ආකාරය පැහැදිලිකල …

සහන 2009 සමුලුව

ඔන්න ඉතින් මේ දවස් ආපහු නිදහස් මුදුකාංග වලට කැමැත්තක් දක්වන අයට ටිකක් වැඩ අදික කාලයක්.මමත් ඔන්න අද "සහන-2009 සමුලුවට"(මාර්තු 24,25) ගියා.වැඩේ හොදට තිබුනා. Dr.සංජීව වීරවර්ණ,Dr.රුවන් වීරසිංහ සහ තවත් විදේශ රටවලින් පැමිණි විද්වතුන් සහ නිදහස් මුදුකාංග සදහා ඇල්මක් දක්වන්නන් විශාල පිරිසක් මෙහි පැමින සිටියා.ඔන්න ඉතින් මමත් වැඩේට සෙට් වුනා. HNB Tower එකේ තමයි මේක තිබුනේ.එතෙන්ට ගිහින් බලනකොට මෙන්න අපේ Faculty බාගයක් විතරම එතන.අපේ වුන්ගේ FOSS ගැන මාර වුනන්දුවක් තියෙන්නේ මුනු දිහා දැකපුහාම කියන්න පුලුවන් මොකටද ආවෙ කියලා.
ඔන්න Dr.සංජීව වීරවර්ණ මුලින්ම කතාවක් කරල කට්ටිය පිලි අරගෙන වැඩේ පටන්ගත්තා.ඊට පස්සේ තව කවුද කට්ටියක් "සහන" වල ඇති වටිනාකම ගැන විස්තර කරා.ඉතින් ඊට පස්සෙ ආවෙ T වෙලාව ඒකෙදි මමයි තව යාලුවෙකුයි එතනින් පැන ගත්තා මොකද අද නිවාඩුවක් දාලා නෙමෙයි ආවෙ.කොහොම වුනත් හිටපු ටික කාලය තුල ගොඩාක් දේවල් ඉගෙන ගත්තා.අපි ඉතින් එදත් අදත් කවදත් FOSS කට්ටියනෙ ඔනම FOSS වැඩකට පොඩි වෙලාවකට හරි සෙට් වෙනවා.හෙටත් වැඩේ තියනවා try එකක් දාලා බලන්න ඔන ඒකටත් සෙට් වෙන්න.

Damn Small Linux ඔබගේ USB තුල ස්ථාපනය කරගන්නේ කෙසේද?

මේ දවස්ටිකේ වැඩි වැඩක් නැතුව ඉන්න අතරතුරේ නිකමට වගේ USB එකත Damn Small Linux දාල බලන්න හිතුනා.ඔන්න ඒක සිථාපනය කරගන්නා ආකාරය ඔයලටත් කියන්න හිතුනා.
ලොකයේ ඇති කුඩාම මෙහෙයුම් පද්ධති අතර එකක් වන Damn Small Linux මෙහෙයුම් පද්ධතිය ඔබගේ පරිගණකයෙ වෙනත් මෙහෙයුම් පද්ධතියක් තුල මෙන්ම USB එක මතද ස්ථාපනය කරගත හැක.මේ සදහා 64MB පමණ සෑහේ.නමුත් දැනට වෙලදපොලේ ඇති සියලුම වාගේ මීට වඩා ධාරිතාවකින් යුක්ත නිසා ඒගැන ප්‍රස්නයක්නෑ.

ඔන්න වැඩේ කරන්නේ මෙහෙමයි.

*.මුලින්ම dsl-embedded.zip ගොනුව මෙම සිථානයෙන් බාගත කර ගත හැක.

*.ඉන්පසුව dsl-embedded.zip ගොනුව ඔබගේ USB තුලට දිගහැරගන්න.

*.ඉන්පසුව syslinux-3.36.zip මෙම ගොනුව ඔබගේ පරිගණකය තුලට බාගතකරගෙන.ඒය තුල syslinux නමින් බහාලුමක් සාදා එය තුලට දිගහැරගන්න.

*.start තුල ඇති run තුල cmd නමින් සටහන් කර කරගන්න

*.ඉන්පසුව ලැබෙන command box එක තුල cd \syslinux\win32 සටහන්කර එම බහලුම තුලට ගොස් syslinux.exe -ma X:මෙම විදානය කරගන්න.

*.මෙහි X වෙනුවට ඔබගේ USB එකට ලැබෙන අක්ෂරය ලබාදෙන්න.

*.ඉන්පසු ඔබගෙ පරිගණකය reboot කර එය usb boot අකාරයට සකසන්න.මේ සදහා ඔබගේ පරිගණකයෙ BIOS settings වෙනස්කර ගතයු…

Ubuntu සිංහල කරණය

ඔන්න ඉතින් පොඩි වැඩක් සෙට් වුනා මෙ මාසෙ 24 වෙනිද "නිදහස් මෘදුකාංග සහ මෘදුකාංග දෙශීය කරනය" ගැන lecture එකක් කරන්න. ඉතින් මේදවස්වල මම එකට උවමනා දේවල් ට්කක් කරමින් ඉන්න අතරේ Ubuntu සිංහලට පරිවර්තනය කරන හටි ගැන ටිකක් ලියන්න හිතුන.

මෙන්න වැඩෙ කරන හැටි
1.මුලින්ම ඔබගේ Ubuntu මෙහෙයුම් පද්දතිය ඇතුලත සිංහල Fonts ස්ථාපිත කරගත යුතුයි.

1.1 මුලින්ම මෙය ස්ථාපිත කරනනීමට කලින් ඔබගේ Ubuntu තුල ඒ සදහා අවශය පසුබිම සකසා ගත යුතුයි.මේ සදහා Universe repository, Enable කරගත යුතුයි.මේ සදහා ඔබට වැඩි විස්තර උවමනානම් (wiki.ubuntu.com/AlwaysEnableUniverseMultiverse).
සාමානියෙන් Ubuntu ස්ථාපනය කරන අවස්ථාවේදීම මෙය enable වී ඇත.

1.2 ඉන්පසුව පහත සදහන් විදානය ඔබගේ Shell එක මත Run කරගන්න.
sudo apt-get install ttf-sinhala-lklug scim scim-gtk2-immodule im-switch scim-m17n m17n-db m17n-contrib language-pack-si-base

1.3 ඉන්පසුව පහත සදහන් විදානයත් ඔබගේ Shell එක මත Run කරගන්න
rm -f ~/.xinput.d/* ; im-switch -z all_ALL -s scim-immodule

2.ඉන්පසුව මෙය si.tar.gz ඔබගේ පරිඝණකය මතට බාගථ කරගන්න.

3.මෙය ඔබගේ Ubuntu තුල /usr/share/lo…

නව ආරම්භයක්

ඔන්න මමත් හුගාක් කලෙක පස්සෙ ආපහු ලියන්න set උනා සිංහලෙන්.සිංහල එතරම් දුරට ලියන්න අපහසු හන්දා වැඩෙ අත ඇරල දාලයි හිටියෙ,නමුත් UCSC සිංහල එසෙණින් පරිවර්තකය නිසා වැඩේ ගොඩාක් ලේසි උනා.අපේම Faculty කරපු වැඩක් හන්ඩ ගොඩක් ආඩම්බරයි.එහෙනම් ඉතින් ඉක්මනටම සෙට් වෙමු වඩෙට.

Web Crawler API

Japanese Crawler project is a research and development project was done by me in my company.It was a really challenge to me.My host is a Japanese patent site and want to crawling data from it.Normally web host protocols are base on www but amazing this one is www7 and www8.When i saw it first time, I'm confusing.However It was not impotent to my works.
First I was did some research about crawlers and bots before start the project design.First time I thought this is a common type web Crawler project and then i was download some sample crawler source code from sorceforge.After I was been running sample crawler source code giving my host(www7.xxxx.com).Ohhhhh There was a no out put only show one page called www7.xxx.ipdl.I can't believe that because it is working with other site like www.google.com.... etc.After I was understood, this is not a common type of web crawler project..
Then I want to work hard.First I…