ஜனவரி 22, 2012

பைத்தான் - உன்னதமான புரோகிராமிங் மொழி


ஒரு ப்ராஜெக்ட்டில் பைத்தான் (Python) மொழி பயன்படுத்த வாய்ப்பு கிடைத்தது.  பைத்தான் மொழியில் ஜாங்கோ (Django) தொகுப்பு (framework) கொண்டு ஒரு இணைய பயன்பாட்டு மென்பொருள் (web application) உருவாக்கினோம்.  அப்போதே அதைப் பற்றி எழுத நினைத்திருந்தேன்.  நாளை எழுதலாம், நன்கு தெரிந்து கொண்டு எழுதலாம், முதலில் ஆகுற வேலையைப் பாக்கலாம் எனக் கொஞ்சம் கொஞ்சமாக தள்ளிப் போட்டு காலம் கடந்து விட்டது.  பைத்தான் மொழியில் பெற்ற அனுபவம் எவர்க்கேனும் பயன்படட்டுமே என்பதற்காக இப்பதிவு.

பைத்தான் ஒரு அருமையான புரோகிராமிங் மொழி என்பதை படித்துத் தெரிந்து கொண்டதை விட அதை பயன்படுத்திப் பார்க்கையில் அது எவ்வளவு உண்மை என விளங்கியது.  பைத்தான் ஒரு ஓப்பன் சோர்ஸ் நிரல் மொழியாகும்.  எனவே உலகத் தரமிக்க இந்த மொழியை எந்தக் கட்டணமும் இன்றியே பயன்படுத்தலாம்.  வணிக நோக்கிலான மென்பொருள் உருவாக்கத்தில் கூட இலவசமாய்ப் பயன்படுத்திக் கொள்ள முடியும்.  பைத்தான் எந்தஒரு தனியார் மென்பொருள் நிறுவனத்திற்கும் சொந்தமானதல்ல.  பைத்தான் மென்பொருள் நிறுவனம் (Python Software Foundation) இதன் உரிமத்தை நிர்வகித்து வருகிறது.

பைத்தான் மொழி கொண்டு பல்வேறு பயன்பாட்டுக்கான மென்பொருட்களை உருவாக்க முடியும்.  பைத்தானின் கட்டளைகள் மிக மிக எளிமையானவை.  பிறர் எழுதிய புரோகிராம்களையும் பார்த்தே விளங்கிக் கொள்ள முடியும்.  இது ஒரு (Object Oriented Programming) பொருள் நோக்கு நிரலாக்க மொழி. ஆகவே எவ்வளவு பெரிய ப்ராஜெக்ட்களையும் சிறப்பாக கையாள இயலும்.  பைத்தானுடன் தன்னியல்பாகவே இணைந்து வரும் தொகுப்பு நிரல்கள் (standard libraries) ஒரு புரொகிராமரின் அனைத்து தேவைகளையும் நிறைவேற்றுவதாக இருக்கிறது.  இதோடு மட்டுமல்லாமல் third party libraries என்றழைக்கப்படும் இதர புரோகிராம்களுக்கும் குறைவில்லை.  விண்டோஸ், லினக்ஸ், யுனிக்ஸ், மேக் os என அனைத்து இயக்கச் சூழல்களிலும் பைத்தான் திறம்பட இயங்கும்.  



சி, சி++, சி#, ஜாவா, பி.எச்.பி, பேர்ல் போன்ற அனைத்து நிரல் மொழிகளுடனும் ஒத்திசைவாக இயங்கும்.


மொபைல் போன்களில் கூட பைத்தான் இயங்குமென்றால் பார்த்துக் கொள்ளுங்கள்.   

பைத்தானில் எழுதப்பட்ட இணையதளங்கள், டெஸ்க்டாப் மென்பொருட்கள், விளையாட்டுகள், மொபைல் அப்ளிகேஷன்கள் ஆயிரக்கணக்கில் இருக்கின்றன.


குறிப்பாக அதிகவேகம் தேவைப்படும் கிராபிக்ஸ் மென்பொருட்களிலும் பைத்தான் சிறப்பாக செயல்பட்டு வருகிறது. பைத்தானை புரோகிராமிங் மொழியாக மட்டும் இல்லாமல், ஒரு மென்பொருளின் கட்டளைகளை இயக்கும் ஸ்கிரிப்டிங் மொழியாகவும் பயன்படுத்தப் படுகிறது.  Gimp, Blender, 3D Studio Max, Maya, Autocad போன்ற அனைத்து பிரபல கிராபிக்ஸ் மென்பொருட்களிலும் பைத்தான் கொண்டு ஸ்கிரிப்ட்கள் (மேக்ரோஸ் போல) எழுத முடியும்.



பைத்தானை அதிக அளவில் பயன்படுத்தும் நிறுவனங்களில் கூகிளை விட ஒரு சிறந்த எடுத்துகாட்டை தந்துவிட முடியுமா எனத் தெரியவில்லை. நம் கணினி பயன்பாட்டின் அங்கமாகிவிட்ட கூகிள் தேடுபொறி (Google Search engine), கூகிள் வரைபடங்கள் (Google Maps)கூகிள் குழுமம் (Google groups), வீடியோ பகிர்வு தளமான Youtube அனைத்தும் பைத்தான் மொழியில் உருவாக்கப் பட்டவையே.  நாசா (NASA), யாஹூ (Yahoo) போன்ற உலகளவில் மிகப்பெரிய நிறுவனங்களிலும் பைத்தான் பயன்படுத்தப் படுகிறது.
                                     
விசுவல் பேசிக் போன்ற காலம் கடந்த புரொகிராமிங் மொழிகளை பாடத்திட்டதிலிருந்து நீக்கிவிட்டு, நவீன காலத்திற்கேற்ப திறமூல (open source) தீர்வான பைத்தான் மொழியை பாடத்திட்டதில் சேர்த்திட வேண்டும்.  கல்லூரி ப்ராஜெக்ட்களை பைத்தான் போன்ற மொழிகளில் செய்ய மாணவர்களை ஊக்கப் படுத்த வேண்டும்.  கணினித் துறையில் இருக்கும் மாணவர்கள் கட்டாயம் பைத்தான் படிக்கும் நிலை வரும். அந்த நாள் வெகு தொலைவில் இல்லை.

இம்மொழியை சுவைக்க நினைக்கும் அனைவருக்கும் என் வாழ்த்துகள்.


ஜனவரி 13, 2012

ஆண்ட்ராய்ட் கத்துக்கப் போறீங்களா? - பாகம் 2

ஆண்ட்ராய்ட் சூழலை நம் கணினியில் நிறுவ ஆண்ட்ராய்ட் எஸ்.டி.கே துணை வேண்டும்.  கூகிளில் android sdk எனத் தேடினீர்கள் என்றால் முதல் சுட்டியிலேயே சரியான தளத்திற்கு சென்று விடலாம்.  http://developer.android.com/sdk/index.html பக்கத்தில் இருந்து உங்கள் இயக்கச் சூழலிற்கேற்ற (operating system) மென்பொருளைப் பதிவிறக்கவும்.

இந்த எஸ்.டி.கே உங்களது பல்வேறு ஆண்ட்ராய்ட் இயக்கச் சூழலை நிர்வகிக்கத்தான்.  இதை நிறுவினால் மட்டுமே உங்களால் ஆண்ட்ராய்ட் பயன்படுத்த இயலாது.  உங்களுக்குத் தேவையான ஆண்ட்ராய்ட் இயக்கச் சூழலையும் நிறுவ வேண்டும்.  எப்படி விண்டோசில் 98, xp, vista, 7 என பல்வேறு பதிப்புகள் இருக்கிறதோ ஆண்ட்ராய்டிலும் 1.5, 1.6, 2, 2.1, 2.2, 3 போன்று பல்வேறு பதிப்புகள் இருக்கின்றது.  ஆண்ட்ராய்ட் கற்றுக் கொள்ள இவை அனைத்தும் தேவையில்லை.  புதிய பதிப்பை மட்டும் தற்போதைக்கு நிறுவாதீர்கள், ஏனெனில் அது மிக மிக வேகமாக (ரன் ஆவ இரண்டு நாள் ஆயிடும்.. பர்வாயில்லயா) இயங்குகிறது.  ஆண்ட்ராய்ட் 2.2 (API Level 8) நிறுவிக் கொள்ளுங்கள்.

நீங்கள் நிறுவிய அடைவில் (installed folder) என்னென்ன இருக்கிறதென ஒரு நோட்டம் விட்டால் platforms என்றொரு அடைவைக் (folder) காணலாம். நீங்கள் நிறுவிய பல்வேறு ஆண்ட்ராய்ட் பதிப்புகளுக்கேற்ப தனித்தனி அடைவுகள் இங்கு இருக்கும்.  platforms folder ஆள் அரவமற்ற மொட்டைத் தெரு போல இருந்தால், ஆண்ட்ராய்ட் இயக்கச் சூழலையும் நிறுவ வேண்டுமென்பதை கவனத்தில் கொள்க.


பிறகு இன்னொரு சேதி, உங்கள் நண்பரது கணினியிலோ அல்லது கல்லூரி ஆய்வகத்திலோ அல்லது வேறு எங்கோ ஆண்ட்ராய்ட் நிறுவப்பட்டிருந்தால் உங்கள் கணினியில் பதிவிறக்கித்தான் நிறுவ வேண்டுமென்ற கட்டாயம் இல்லை.  இணைய இணைப்பு இல்லாவிட்டாலும் ஆண்ட்ராய்ட் முழுதாக நிறுவிக் கொள்ளலாம்.  ஏற்கனவே நிறுவப்பட்டிருக்கும் அடைவை நகலெடுத்து (copy through pen drive or dvd) உங்கள் கணினியில் நிறுவதற்கு தேவையின்றியே பயன்படுத்தலாம்.










எக்லிப்சில் ADT (ஆண்ட்ராய்ட் டெவலப்மெண்ட் டூல்கிட்) எப்படி நிறுவதென அடுத்த பதிவில் பார்க்கலாம் (இன்னும் எத்தன மாசம் ஆகப் போவுதோ?  கூகிளின் துணைகொண்டு முன்னேறிப் போய்க் கொண்டே இருக்கவும். எந்த பதிவிற்கும் காத்திருக்காதீர்கள்.  )













அனைவருக்கும் இனிய பொங்கல் நல்வாழ்த்துகள்


---தொடரும்

ஜனவரி 07, 2012

தொழில்நுட்பப் பதிவுகளைத் தொகுக்கும் மின்னிதழ்கள்

 பொதுவாக தொழில்நுட்பம் அல்லாத பதிவுகளை நான் அதிகம் படிப்பதில்லை.  பரபரப்பாய் இயங்கும் உலகில் இதற்கென ஒதுக்கும் சில மணித்துளிகளை என் துறை சார்ந்த பதிவுகளைப் படிப்பதற்கே அதிகம் செலவிடுகிறேன்.  அவ்வப்போது ஆங்காங்கே ஓரிரு தொழில்நுட்பமல்லாத பதிவுகளைப் படித்ததுண்டு.  அறிவுசார் பகிர்தல்களை விட கூச்சல், சண்டை சச்சரவுகள் அதிகம் தென்படுகிறது.  தனிநபர் தாக்கல்கள், சாதி மத மோதல்கள், முகத்தை சுளிக்க வைக்கும் பின்னூட்டங்கள், அனானிகளின் அட்டூழியங்கள் என நல்ல கனியில் புழு பூத்தது போல் சிலர் விஷமத்தனங்களை மேற்கொள்கின்றனர்.

பொது விடயங்களை எழுதும் தமிழ் வலைதளங்களுக்கு இருக்கும் ஆதரவைப் போல தொழில்நுட்ப பதிவுகளுக்கு இருப்பதில்லை.  ஒன்று தொழில்நுட்ப பதிவுகள் சென்றடையும் பயனர்கள் மிகக் குறைவு, மற்றொன்று அதிகம் படித்த மக்களுக்கு (தாய் மொழியே தெரியாதது போல நடிக்கும் நன்மக்கள்) தாய்மொழியில் படிப்பதில் ஆர்வமில்லை.  படிப்பதற்கே அதிக ஆளில்லாத போது தொழில்நுட்ப பதிவுகளை எழுதுவது ஆங்காங்கே அத்தி பூத்தாற் போலத்தான் இருக்கும்.  தொழில்நுட்பப் பதிவுகள் யாருக்கு சேர வேண்டுமோ (கிராமப்புற மாணவர்கள்) அவர்களுக்கு கணினி, இணைய இணைப்பு போன்ற வசதிகள் எளிதாய் அணுகக் கூடிய தூரத்தில் இல்லை.  

எழுதும் சில தொழில்நுட்ப பதிவர்களும் தொழில்நுட்பம் அல்லாத பதிவுகளையும் சேர்த்து கதம்பமாய் எழுதுவதினால் எங்கு எது கிடைக்கும் எனத் தெரியாமல் போய் விடுகிறது.  இந்நிலை மாற ஆங்காங்கு சிதறிக் கிடக்கும் நல்ல பதிவுகளைத் தொகுத்திடல் வேண்டும்.  அச்சுப் பிரதியாக வெளியிடுவது அதிக செலவு பிடிக்கக் கூடிய ஒன்று.

போதிய விளம்பரதாரர் இல்லாததால் மூடப்பட்ட சிறு இதழ்கள் ஏராளம் உண்டு.  இதற்கு எடுத்துக்காட்டாக பதிவர்களுக்கான தென்றல் மாத இதழ் கைவிடப்பட்ட செய்தி வருத்தமளிக்கிறது.

புத்தாண்டு மற்றும் பொங்கல் பரிசாக தமிழில் இருக்கும் சில தொழில்நுட்ப பதிவுகளைத் தொகுத்து இரு மின்னிதழ்கள் வெளிவருகின்றது.
ஒன்று கற்போம் மின்னிதழ், மற்றொன்று கணியம் மின்னிதழ்.
இந்த மாத இதழ்களை கீழ்க்காணும் சுட்டியில் பதிவிறக்கிக் கொள்ளவும்




Jan 2012 கற்போம் மின்னிதழ்


Jan 2012 கணியம் மின்னிதழ்









ஜனவரி 05, 2012

ஆண்ட்ராய்ட் கத்துக்கப் போறீங்களா?


நாளுக்கு நாள் மொபைல் சாதனங்களின் எண்ணிக்கை பெருகிக் கொண்டே வருகிறது. வங்கிக் கணக்கை கையாள்வது முதல் திரைப்பட முன்பதிவு வரை விரல்நுனியில் நம் தேவைகளை நிறைவேற்றிக் கொள்கிறோம். முப்பதாயிரத்தில் இருந்துதான் தொடக்க விலையே என்ற நிலை போய் மூவாயிரத்திற்குக் கூட ஸ்மார்ட் போன்கள் கிடைக்கின்றது.  இலவச மொபைல் இயக்கச் சூழலான ஆண்ட்ராய்ட் வந்தபிறகு அதிநவீன வசதிகள் கொண்ட மொபைல் சாதனங்கள் சாமானியர்களும் அணுகும்படியாக உள்ளது.



ஒரு துறை வளரும்போது அந்தத் துறையில் பணியாற்ற அதிக ஆட்கள் தேவைப்படுவது இயற்கை நியதி. 

மொபைல் மென்பொருட்களை உருவாக்கும் திறனுள்ள வல்லுனர்களின் தேவை மின்னல் வேகத்தில் எகிறிக் கொண்டே போகிறது.  


மொபைல் சாதனங்களுக்கு மென்பொருள் உருவாக்க முற்றிலும் மாறுப்பட்ட அணுகும் முறை தேவைப்படுகிறது.  டெஸ்க்டாப் கணினியில் இருப்பது போன்ற நினைவகமோ (memory), செயலியோ (processor) மொபைல் சாதனத்தில் இருக்காது.  நீண்ட நேரம் மின்கலத்தில் (battery) சக்தி இருக்க தேவைக்கு மிஞ்சி எந்த வளங்களையும் பயன்படுத்தாத வண்ணம் மொபைலுக்கான மென்பொருளை வடிவமைக்க வேண்டும்.  ஐபோன், ஆண்ட்ராய்ட், ஜாவா மொபைல் ஆகிய அனைத்திலும் மிகப்பெரிய தேவைகள் இருக்கின்றது.  இதில் ஆண்ட்ராய்ட் பணிச்சூழலுக்கு மென்பொருள் உருவாக்க எங்கிருந்து தொடங்க வேண்டுமென இப்பதிவில் காண்போம்.
ஆண்ட்ராய்ட் கற்றுக்கொள்ள ஆசைப்படுவர்களுக்கு எழும் சில கேள்விகள்:
என்னுடைய ஆப்பரேட்டிங் சிஸ்டத்தை பயன்படுத்த முடியுமா?
ஆண்ட்ராய்ட் மென்பொருட்களை உருவாக்க லினக்ஸ், மேக் ஓஎஸ், விண்டோஸ் என எந்த இயக்கச் சூழலையும் பயன்படுத்தலாம்.

ஆண்ட்ராய்ட் மொபைல் அவசியம் இருக்க வேண்டுமா?
மொபைல் தேவையில்லை, எமுலேட்டர் மூலமாக உருவாக்கிக் கொள்ளலாம் (சில வகையான மென்பொருட்களைத் தவிர).

எந்தெந்த மென்பொருள் உருவாக்கக் கருவிகள் தேவைப்படும்? செலவு செய்ய வேண்டியிருக்குமா? (Development tools and its cost)
ஆண்ட்ராய்ட் எஸ்.டி.கே, ஜாவா உருவாக்க மென்பொருளான எக்லிப்ஸ் என இலவவச திறமூலத் தீர்வுகளையே (free & open source tools) பயன்படுத்திக் கொள்ளலாம்

என் கணினியில் உருவாக்கிய மென்பொருளை எளிதாக உண்மையான பொபைலில் நிறுவ முடியுமா?
தாராளமாக இயக்க முடியும்.  இது ஐபோன், ஐபேட் மென்பொருட்களில்தான் சாத்தியமில்லை.  ஐபோன் மென்பொருள் உருவாக்கத்தில் பயன்படுத்தப் படுவது சிமுலேட்டர், இங்கு நாம் பயன்படுத்துவது எமுலேட்டர்.  எமுலேட்டர் மென்பொருளில் உண்மையான மொபைலில் எந்த கட்டளைகள் இயங்குகிறதோ அவை அப்படியே இயக்கப் படுகிறது. 

-தொடரும்