25, మార్చి 2020, బుధవారం

టైం లేదు నేర్చుకోటానికి

కరోనా కర్ఫ్యూని  సరికొత్త విషయాలు నేర్చుకోవటానికి  ఉపయోగించవచ్చు 


 సమాచారాన్ని అర్ధం చేసుకుంటే పరిస్థితులు అర్ధం చేసుకోవచ్చు ప్రస్తుత కరోనా మహమ్మారిని అంతం చెయ్యటానికి ఇంట్లోనే చాలా మంది ఉంటున్నాము దాని వల్ల  కాస్త ఇబ్బందులు పడుతున్నా బస్సులు రైళ్లల్లో ప్రయాణాలు తగ్గటం వల్ల పని తరవాత కాస్త సమయం  లభిస్తుంది దానిని సినిమాలు గట్రాలతో  పూర్తిగా నింపివేయకుండా మనకి మన జీవితంలో ఏదన్నా  ఉపయోగపడేలాగా ఉపయోగిస్తే బోలెడు లాభాలు ఉంటాయి. టైం లేదు నేర్చుకోటానికి అనుకునే మనలాంటి వాళ్లందరికీ ఇది ఒక గొప్ప అవకాశం.

ఎటువంటి ప్రోగ్రామింగ్ లాంగ్వేజ్ అయినా కూడా సమాచారాన్ని అర్ధం  చేసుకోవటానికి కొన్ని ఉపకరణాలు ఇస్తుంది. జావా , స్కాలా , క్లోజర్ , పైథాన్ ఏది నేర్చుకోవాలన్న ఇదొక మంచి సమయం. కరోనా వైరస్ వల్ల ఇంట్లో  వున్నాం కాబట్టి ఆ వైరస్ సమాచారంతోనే  నేర్చుకోవాలనుకుంటే మీకు కావాల్సిన సమాచారం సి ఎస్ వి రూపంలో ఇక్కడ పొందవచ్చు . ఇవన్నీ ఉచితంగానే లభిస్తాయి

https://data.humdata.org/dataset/novel-coronavirus-2019-ncov-cases

ప్రతి రోజు ప్రతి దేశంలో ఎన్ని కేసులు  నమోదు అయ్యాయో  అలాగే ఎంత మంది దీని బారిన పడి  మృతి చెందారో  లాంటి బోలెడు సమాచారం లభిస్తుంది .

వీటితో  మీరు
1. ఎక్సెల్ లాంటి టూల్ ఉపయోగించి ఛార్ట్స్ వేసి చిత్రాల రూపంలో సమాచారాన్ని అర్ధం చేసుకోవచ్చు
2. ఒక డాటాబేస్ లో  ఈ సమాచారాన్ని ఉంచి ఎస్ . క్యు . ఎల్  ( SQL ) ద్వారా సమాచారాన్ని అర్ధం చేసుకోవచ్చు
3. పైథాన్ లాంగ్వేజ్ ద్వారా జ్యుపిటర్ నోటుబుక్కు లో సమాచారాన్ని విశ్లేషించవచ్చు , అది ఎలా చెయ్యాలో నేర్చుకోవచ్చు


మీరు ఎలా ఈ  లాక్ డౌన్ సమయంలో కొత్త విషయాలు నేర్చుకున్నారో నేర్చుకుంటున్నారో నాతొ పంచుకోండి
వచ్చే పాడ్ కాస్ట్ లో ఆ విషయాలు మీ అభ్యంతరం లేకపోతే మీ పేరుతో ప్రస్తావిస్తా


ఆరోగ్యం జాగ్రత్త

8, మార్చి 2020, ఆదివారం

Distributed computing/processing[వితరణ వ్యవస్థ]



[వదామి అనే నా బ్లాగ్లోనుంచి ఇక్కడ పోష్ట్ చెయ్యటమయినది ]
ఒక కంప్యుటర్లో పని చేసే ఒక విధి  (ప్రోగ్రాం) రక రకాల ప్రొగ్రామింగ్ భాషలలో రాయొచ్చు . అది అర్ధం చేసుకోవడం కూడ పెద్ద కష్టం కాదు . సాధరణంగా మనదెగ్గర వున్న ఒక కంప్యుటర్లో ఈ విధి పనిచేస్తుంది  కాబట్టి రాయటం మరియు  మార్పులు చెయ్యటం కూడ సులువు. ఒక వేళ మనం రాసిన విధి పని చెయ్యటానికి ఒకటికన్నా ఎక్కువ కంప్యూటర్లు కావాలనుకోండి  అప్పుడు మనం రాసిన విధిని డిష్ట్రిబ్యుటెడ్ అంటారు అంటే ఒకటి కన్న ఎక్కువ భాగాలుగా విభజించి పని చెయించటం అన్నమాట .  



ఒక కంప్యుటర్లో పని చేస్తున్న విధి మరొక కంప్యూటర్లో వున్న విధితో కలిసి పని చెయ్యాలంటే  ముఖ్యంగా కావల్సినవి
1) ఆ రెండు కంప్యుటర్లకి అవి ఎక్కడ ఏ పేర్లతో వున్నయొ తెలియటం
2) ఆ రెండు కంప్యూటర్లకి అర్ధమయ్యే ఒక భాష (ప్రోటోకాల్)
3) ఒక వేళ ఒకటి కన్నా ఎక్కువ కంప్యూటర్లు కలిసి పని చెయ్యాల్సి వస్తే వాటిని అనుసంధాన పరచటానికి నిజ జీవితంలో లాగానే ఒక కంట్రోలర్ లేక మాస్టర్  


ఈ విషయాలుతెలుసుకుంటే  మనం ప్రస్తుతం వాడుకలో వున్న చాలా టెక్నాలజీలని (ఇంకా  పదాలని) సులువుగా అర్ధం చేసుకోగలం

ఉదాహరణకి కొన్ని
1) అర్.పి.సి  ని తీసుకోండి రెండు (లేక చాలా) కంప్యూటర్లలో వున్న విధులు మాట్లాడుకోవటానికి వాడే భాష రిమోట్ ప్రొసీజరల్ కాల్
2) సర్వీస్ డిస్కవరీ : ఒక్కో కంప్యుటరుకీ మరొక కంప్యూటర్ ఎక్కడ వుందో దాని ఆచుకీ తెలియజేసే ఒక ప్రక్రియ/విధానం 
3) హెచ్ టి టి పి :  మీ ఇంటర్నెట్ బ్రౌసర్  మరొక కంప్యుటర్లో  [సర్వర్ ] వున్న ఒక  విధితో మాట్లాడటానికి వాడే భాష ఈ హెచ్ టి టి పి
4) మాప్/రెడ్యూస్ : మీ సమాచారాన్ని వందలాది మెషిన్ల మీద కొంచం కొంచం ప్రాసెస్ చేస్తూ కావాల్సిన సమాచారాన్ని పొందగలిగే వ్యవస్థ 

ఇలా ఇంకెన్నెన్నో ప్రత్యేకమయిన అవసరాలకోసం ప్రత్యేకమయిన ప్రోటోకాల్స్/టూల్స్   తయారు చేశారు



1, మార్చి 2020, ఆదివారం

A programming language in telugu [తెలుగులో ప్రోగ్రామింగ్ లాంగ్వేజ్ ]

తెలుగులో ప్రోగ్రామింగ్ లాంగ్వేజ్
అసలు ఇది సాధ్యపడే విషయమేనా ?
ఒక వేళ సాధ్యపడితే దీనివల్ల ఎమన్నా ఉపయోగం వుందా ?

దీని గురించి చాలా కాలంగా ఆలోచిస్తున్నాను , తప్పకుండా తెలుగు మాట్లాడే వాళ్ళకి తెలుగులోనే ప్రోగ్రాం రాయటం మరియు తెలుగులో ఆలోచించటంవల్ల వాళ్ళు పరిష్కరిద్దామనుకునే సమస్యలకు సులువయిన జవాబు లభించే అవకాశం వుంది.

ప్రతి ప్రోగ్రామ్ అమెరికాలోని ఒక సంస్థకి ఉపయోగపడే సమస్యని పరిష్కరించేది గా ఉండక్కర్లేదేమో, అలాగే  ప్రతి ప్రోగ్రామర్ బిటెక్ చేసిన ఒక సాఫ్ట్వేర్ కూలి అవ్వక్కర్లేదు కదా.

ఒక సాధారణ షాప్ యజమాని తన రోజువారీ కార్యకలాపాల కోసం ఒక ప్రోగ్రాం రాసుకోగలిగితే ? చక చకా వాట్సాప్ వాడే టిఫిన్ సెంటర్ బాబాయి తన పనులకోసము ఒక చిన్న మొబైల ప్రోగ్రామ్ రాసుకోగలిగితే ?
ఇలా రాయటానికి ఏదన్నా  పెద్ద ఇంజనీరింగ్ అవసరమా ? అసలు ప్రోగ్రామింగ్ అనేది కష్టమయిన పనేనా ?

నేను కేవలం తెలుగు మీడియం గురించి మాట్లాడట్లేదు ఒక భావాన్ని కంప్యూటరుకి  సులువుగా వ్యక్తపరిచి కావలసిన పని చేయించుకోగలిగితే  ఎంత మంది జీవితాలని  ప్రభావితం చెయ్యగలం అని ఆలోచిస్తున్నాను

అసలు తెలుగులో ప్రోగ్రామ్ రాయటం ఒక వేళ కుదిరితే అది చూడటానికి ఎలా ఉంటుంది ? ప్రస్తుతం ఇంగ్లీషులో వున్న అన్ని ప్రోగ్రామింగ్ లాంగ్వేజస్ కి ఈ తెలుగు ప్రోగ్రామింగ్ కి ఎమన్నా వ్య త్యాసం వుంటుందా ?

మరెందుకు  ఆలస్యం ? ఒక సారి అలాంటి ప్రోగ్రామింగ్ భాషని ఊహించి చూద్దాం

దీనికోసం అందరికి సులువుగా తెలిసిన జావా/జావాస్రిప్ట్ లాంటి ఒక ఊహాజనిత ఇంగ్లిష్ ప్రొగ్రామింగ్  లాంగ్వేజిని ఈ తెలుగు ప్రోగ్రామింగ్ భాషకి పోల్చి చూద్దాం

అలాగే ఈ ప్రోగ్రామింగ్ చేసేది మన కిరాణా కొట్టు సుధీర్, అతనికి కొన్ని చిన్న చిన్న ప్రోగ్రామింగ్ అవసరాలు రావొచ్చు

సమస్య 

వ్వాట్సాప్ లో వచ్చిన ప్రతి మెస్సేజు చూసి అందులో  కనుక  రైస్ [బియ్యం] ప్రసక్తి 10 సార్లకన్నా ఎక్కువ ఉంటే వెంటనే తన తమ్ముడికి ఒక మెసేజ్ పెట్టాలి .. సరుకు పెంచుకోటానికి 

ఇందుకోసం getMessagesFromWhatsapp అనే  ఒక  సాధనం [utilitiy ] వుంది అనుకుందాం. 

ఇది జావా లాంటి సాధారణ లాంగ్వేజస్  లో  ఇలా ఉండొచ్చు 

var messages = getMessagesFromWhatsapp()

var riceCount = 0; 
for(var i=0;i<messages.length;i++) {
   if(messages[i] === 'rice' ) {
   riceCount = riceCount + 1; 
}
if( riceCount > 10 ) {
   sendMessage("More rice")
}

ఇది తెలుగులో ఇలా ఉండొచ్చు 


getMessagesFromWhatsapp()  మెసేజులు  అనుకో 
0 బియ్యం అనుకో 

మెసేజులు లో ప్రతి మెసేజు తో 
  బియ్యం కానీ రైస్ కానీ అయితే బియ్యం లెక్క  పెంచు 

బియ్యం 10 దాటితే   "బియ్యం తే" అని మెసేజ్ పెట్టు 


ఈ ఊహజనిత ప్రోగ్రాముకి ఇంగ్లీషు ప్రోగ్రామ్ కి తేడా పెద్దగా లేదు కానీ ఈ తెలుగు ప్రోగ్రాములో విషయం చాల సులువు అని తెలుస్తోంది కాదు. నేను నీలం రంగులో పెట్టినవి తెలుగు ప్రొగ్రమింగ్ లాంగ్వేజీ కి సంబంధించినవి

ఇలాంటి ప్రోగ్రామింగ్ లాంగ్వేజ్ తయారు చేయగలమా  ? చెయ్యొచ్చు  కాస్త సమయం కేటాయించాలి కానీ తప్పకుండ చెయ్యొచ్చు


నాతొ ఎవరన్నా కలిసి పని  చెయ్యాలి  అని  అనుకుంటున్నారా .. నన్ను సంప్రదించండి . ప్రోగ్రామింగ్ అందరికి అందుబాటులోకి తీసుకురావచ్చు .. విఫలమయినా కూడా నష్టంలేకుండా  ప్రొగ్రమింగ్ లాంగ్వేజ్  డిసైన్ గురించి నేర్చుకోవచ్చు


Authentication and Authorization [సాక్ష్యం అధికారం ]

అధికారం సాక్ష్యం
ప్రతి ప్రొగ్రమ్మర్ ఎప్పుడో అప్పుడు తను రాస్తున్న ప్రొగ్రాం ని ఎవరు వాడాలో ఎవరు వాడకూడదో నిర్నయం తీసుకోవాల్సి వస్తుంది ..

Authentication  Authorization గురించి అవగాహన పెంచుకుందాం

ప్రముఖంగా ..

రామ కోటి

ఐఫొన్లో మాత్రమే సరిగ్గా పనిచేస్తోంది.. బోలెడు తప్పులూ నిదానంగా రామజపం చేస్తూ కిందకి వెళ్ళండి .. సర్రున లాగేస్తే పని చెయ్యదు :-) ...