Monday, June 29, 2020

මොනවද මේ Data Structures?


Data Structures පරිගණක ක්‍රමලේඛණයේදී නැතිවම බැරි කොටසකි.  Data Structures කියන්නේ මූලික දත්ත ගබඩා කරන හා දත්ත සංවිධානය කරන ක්‍රමවේදයටයි. මේවාට උදාහරණ ලෙස.

  • Array
  • Bag
  • Linked List
  • Stack
  • Queue
  • Tree
  • Graph
මෙම data Structures හි දත්ත මෙහෙය වන්න යොදාගන්නේ algorithm ය. Data Structures බොහෝ විට  abstract data types (ADT) මත පදනම් වනවා. මෙම ADT වලදී පරිග‍ණක මතක නිරූපණය හා  කොහොමද ඒවා කියත්මක වන ආකාරය අදාළ වෙන්නේ නැහැ. මේක හරියට interface එකක් වගේ. උදාහරණයක් ගත්තොත් රියදුරා වාහනයක දන්නේ start කිරීම, break කිරීම, accelerate කිරීම, reverse කිරීම වගේ දේවල් ටිකක් විතරයි. මේවා ADT  වලද උදාහරණ වේ. start කරද්දී වාහනය ඇතුලේ වන සම්පූර්ණ ක්‍රියාවලිය ඔහුට අදාළ වෙන්නේ නැහැ. අපි  data Structures හි List ADT එක උදාහරණයකට ගත්තොත් එහි
  • නව List එකක් නිර්මාණය කිරීම.
  • තියෙන ලැයිස්තුව දත්ත ඇමිණීම
  • ලැයිස්තුව දත්ත ඇතුළත් කිරීම
  • ලැයිස්තුවෙන් දත්ත ඉවත් කිරීම
  • ලැයිස්තුවෙන් දත්ත ඉවත් කිරීම
මෙම ADT  මගින් data Structures අධ්‍යනය කර තමන්ගේ ක්‍රමලේඛයට සුදුසු   data Structures ඉක්මණින් තිරණය කිරීම  කළහැක.

Data Structures හි අවශ්‍යතාව

ක්‍රමලේඛණ වලට යොදා ගන්නා දිනෙන් දින භාවිතය වැඩිවන අතර ඒවායේ සංකීරණත්වය වැඩි වේ. එවිට නැගෙන ගැටලු කිහිපයක් පහත දැක්වේ.

Processor speed (සකසනයේ වේගය)

දිනෙන් දින දත්ත වැඩි වීමත් සමග දත්ත වල සිදුකරන සැකසීම් ප්‍රමාණය වැඩිවේ. අධික වශයෙන් දත්ත වැඩි වුනොත් සකසන අකර්මණ්‍ය වීම සිදුවිය හැක.‍

Data Search (දත්ත සෙවීම)

දත්ත 10 කින් එක් දත්තයක් සෙවීම ඉතා කෙටි කලකින් කළහැක. නමුත් දත්ත 10000 කින් එකක් සොයන්න  කොච්චර කාලයක් යයිද.

Multiple requests 

පරිශීලකයින් 1000 ක් එක විට search කළහොත් web server එක මත දී  server  එක අකර්මන්‍ය විය හැක.

එලෙස මෙවැනි ගැටලු වලට  data Structures මගින් ලබා ගත හැක.

Data Structures හි වාසි

කාර්යක්ෂකමතාව (Efficiency)

කාර්යක්ෂමතාව ඔබ තෝරාගන්නා Data Structures එක මත තීරණය වේ. 

යළි භාවිතය (Reusability)

Data Structures ඕනෑම තැනක ඕනෑම ක්‍රමලේඛයකට යොදි ගත හැක. එය එක්  ක්‍රමලේඛයකට  පමණක් අන්‍යනය වූවක්  නොවේ.

ව්‍යුක්තිකරණය (Abstraction)

Data Structures, ADT තුළින් ලබා ගතහැකි නිසා implementation ගැන වදවීය යුතු නැහැ. ඒ කියන්නේ Structure එකට දත්ත දානවා නම් add() විතරයි ලියන්නේ add වෙන විදිහ අදාළ ම නැහැ. 

ඔයලා Data Structures ගැන දන්න දේවල් තියෙනවා නම් ඒවා මෙහි කමෙන්ට් කරන්න.

Sunday, June 28, 2020

කවුද මේ Elon Musk?

ඊලොන් මස්ක් - විකිපීඩියා වෙන්

Elon Reeve Musk යනු ඉංජිනේරුවෙක්, කාර්මික නිමැයුම්කරුවෙක්, තාක්ෂණික ව්‍යවසායකයෙක් හා මානව හිතවාදීයෙක් වේ. ඔහු දකුණු අප්‍රිකානු, කැනඩානු හා ඇමරිකානු පුරවැසියෙක් වේ. ඔහුගේ උපත 1971 ජූනි 28 දී සිදුවිය. ඉතා ප්‍රකට පුද්ගලයෙකු වන මොහු ලොව ප්‍රකට තාක්ෂණීක ආයතන කිහිපයක ප්‍රධානි තනතුර හොබවා ඇත. ඒවා අතරින්,

  •  SpaceX ආයතනයහි ප්‍රාරම්භකයා(Founder), ප්‍රධානි(SEO) හා ප්‍රධාන ඉංජිනේරුවරයා විය.
  • Tesla ආයතනයහි මුල් අයෝජකයා, ප්‍රධානියා හා නිෂ්පාදන ගෘහ නිර්මාණ ශිල්පියා විය.
  •  The Boring Company හි ප්‍රාරම්භකයා විය
  •  Neuralink හි උප  ප්‍රාරම්භකයා විය.
  •  OpenAI හි ප්‍රාරම්භකයා හා සමාරම්භක සහාකාර සභාපති විය.
මීට අමතරව ඔහු 2018 දී Fellow of the Royal Society (FRS) හි සමාජිකත්වයට තේරීපත් විය. 2016 දී ඔහුට  Forbes සගරාවේ ලොව ප්‍රබලතම පුද්ගලයින් ගේ ලැයිස්තුවේ 21 වන ස්ථානය හිමි වූ අතර 2019 දී ඔහු එහි සම ප්‍රථම ස්ථානය ලබා ගැනීමට හැකි විය. ස්වොත්සහයෙන් දියුනු වූ බිලියනපතියකු ලෙස, 2020 ජූනි මස දී ඔහුගේ ඇස්තමේන්තු ගත වත්කම ඩොලර් බිලියන 42ක් වූ අතර 2020 දී නිකුත් කළ, Forbes සගරාවේ දී ලොව ධනවත්ම පුද්ගලයන් අතර 31 වන තැනට පත්විය. එමෙන්ම ඔහු ඕනෑම ස්වයංකිය නිෂ්පාදන කරුවන්ගේ ප්‍රධානියා(CEO) තනතුර වැඩිම කලක් දැරීය.

දකුණු අප්‍රිකාවේ ප්‍රේටෝරියා(Pretoria) හිදී කැනේධීයානු මවකට හා දකුණු අප්‍රිකානු පියෙකුට දාව උපත ලබන Musk. සැකෙවින්ම Pretoria සරසවියට වරම් ලබනවා. කැනඩාවට යාමට පෙර ඔහු වයස 17 දී Queen's සරසවියට ප්‍රවේශ වනවා.  ඔහු Pennsylvania සරසවියට ප්‍රවේශ වී වසර 2කට පසු  Wharton පාසලේදී ප්‍රථම උපාධිධාරියන් ගේ උපාධියක් ආර්ථික විද්‍යා‍වෙන් ලබා ගන්නා අතර කලා හා විද්‍යා විදුහලෙන් ප්‍රථම උපාධිධාරියන් ගේ උපාධියක් භෙෘතික විද්‍යාවෙන් ලබා ගන්නවා. 1995 දී  ඔහු කැලිපෝනියා (California) වට යන අතර ස්ටැන්පර්ඩ් සරසවියෙන්  Ph.D. එක applied physics හා material sciences විෂයන් වලින් හැදෑරීම ආරම්භ කරන්න හැදුව නමුත් ඔහු එහි ලියාපදිංචී වීම වෙනුවට ව්‍යාපාරික රැකියා පසු පස හබා ගියේය. පසුව ඔහු තම සහෝදරයා වු කිම්බල් සමග එක්ව වෙබ් මෘදුකාංග සමාගමක් වන Zip2 සමාගම ස්ථාපිත කරන ලදී. එය 1999 දී Compaq ආයතනය විසින් ඩොලර් මිලියන 340කට පවරාගන්නා ලදී. අනතුරුව ඔහු  X.com, නම් ජාලගත බැංකුවක් නිර්මාණය කරන අතර එය 2000දී Confinity සමාගම සමග ඒකාබද්ධ කරන අතර එය පසු කලක PayPal ක්‍රමවේදය දියත් කරනවා. මෙය පසුව ඩොලර් බිලියන 1.5කට eBay සමාගම විසින් මිලදී ගන්නවා.

2002 මැයි මසදී ඔහු SpaceX ආයතනය ස්ථාපනය කරනවා. එය අභ්‍යවකාශ නිෂ්පාදකයෙක් හා අජටාකාශ ප්‍රවාහන සේවා ආයතනයක් වේ.  ඔහු Tesla Motors, Inc(වර්තමනයේදී එය Tesla, Inc ) සම්බන්ධ වන අතර එය ස්වයංකීය වාහන නිෂ්පාදන කරන ආයතනයකි. 2004 දී ඔහු එහි ප්‍රධානියා හා නිෂ්පාදන ගෘහ නිර්මාණ ශිල්පියා වන්නට හැකි විය. 2006 දී ඔහු සූර්යය බල ශක්ති සේව‍ා ආයතනයක් වන SolarCity ආයතන ගොඩනැගීමට උපකාරී විය(වර්තමානයේ දී Tesla ආයතනයේ උප ආයතනකි). 2015දී OpenAI හී සම ප්‍රතිස්ථාපිතයකු විය. එය ආදායම් නොලබන පර්යේෂන ආයතනයක් වන අතර එහි අරමුණ වූයේ මිත්‍රශීලී කෘතීම බුද්ධි දීයුණු කරවීමයි. ඉන්පසු ඔහු සම ප්‍රතිස්ථාපිතයකු ලෙස Neuralink ආයතනය බිහි කළේය. මෙය මොළ හා සම්බන්ධ පර්යේෂන කරන  neurotechnology ආයතනයකි. මෙහි අරමුණ වන්නෙ මොළ පරිගණක අතුරුමුහුණතක්( brain–computer interfaces) නිර්මාණය කිරීමයි. 
2016 දෙසැම්බරයේදී ඔහු  The Boring Company ස්ථාපනය කරන අතර එයින් යටිතල ව්‍යුහ හා උමං ගොඩනැගීමේ ආයතනයකී. එහි අරමුණ වන්නේ උමං එලදායි ලෙස විද්‍යුත් වාහන සදහා යොදා ගැනීමයි. 

ඔහුගේ ප්‍රථමික ව්‍යාපාර ගමනට අමතරව මස්ක හට  Hyperloop නමින් අධිවේගී ප්‍රවාහනය පද්ධතියක් පිළිබද අදහසක් පවතී. මාස්ක් කියන විදිහට SpaceX, Tesla, හා SolarCity ආයතන වල අරමුණු ඔහුගේ දැක්ම වන ලොව වෙනස් කිරීම හා මනුෂ්‍යත්වයට උදව් වීම යන්න වටා පරිභ්‍රමණය(කරකැවෙන) බවයි. ඔහුගේ අරමුණු අතර ගෝලීය උණුසුම් අඩුකිරීමෙන් අඛන්ඩ බල ශක්ති නිශ්පාදනය / පාරීභෝජනය හා අගහරු මත මිනිස් කොලනි පිහිටුවා මිනිස් ගහනය අඩුවීමේ අවදානම අඩුකිරීම යන ඒවා අඩංගු වේ.

මුලශ්‍ර wikipedia
ඉතින් ඔබ ඔහු ගැන මෙකක්ද හිතන්නේ ඔබේ අදහක් පහළ කමෙන්ට් කරන්න.

Saturday, June 27, 2020

About myself..

මුලින්ම සුබ උදැසනක්!, සුබ දවාලක්!, සුබ හැන්දෑවක්! අපේ මේ පුංචි බ්ලෝග් අඩවියට ඔබව සාදරයෙන් පිළිගන්නවා.

 ස්තූතියි!