The Django Book

(నరమానవుల భాషలో ‘జాంగో’ అని పలకాలన్నమాట.)

జాంగో అన్నది పైథాన్ లో రాయబడ్డ వెబ్ డెవెలప్మెంట్ ఫ్రేంవర్క్. అసలుకి జాంగో అన్నది ఒక రొమానీ పదం – దీని అర్థం – ‘I awake’ అని. అయితే, ఈ ఫ్రేంవర్క్ పేరు మాత్రం – జాంగో రీన్ హార్ట్ అన్న జాజ్ కళాకారుడి పేరు వల్ల వచ్చింది. దీన్ని రూపొందించిన వారు ఆయన అభిమానులు కావడం ఇందుక్కారణం.అసలు వెబ్బేమిటి?‌డెవలప్మెంటేమిటీ? ఫ్రేంవర్కేమిటీ? ఏమిటేవిటేవిటీ? అనకండి… ఆ వివరణలతో ఈ వ్యాసానికి సంబంధం లేదు.

ఖంగారు పడకండి. మీరు పుస్తకం.నెట్లోనే ఉన్నారు. ఇప్పుడు నేను రాస్తున్న వ్యాసం – ‘జాంగో బుక్‘ అన్న పుస్తకం గురించి. ఆ పుస్తకం పైన చెప్పిన జాంగో ఫ్రేం వర్క్ గురించి.

పుస్తకం సంగతికొస్తే, జాంగో ఉపయోగించి వెబ్ అప్లికేషనులు ఎలా రూపొందించాలో నేర్పించే పుస్తకం ఇది. ఆంలైన్ లో చదివేందుకు లభ్యం. అయితే, మొదట 2007 లో ‘The Definitive Guide to Django: Web Development Done Right‘ అన్న పేరుతో పుస్తకంగా వచ్చింది. దీని రచయిత – Adrian Holovaty జాంగో సృష్టికర్త. సహ రచయిత Jacob Kaplan-Moss – జాంగో టీం లో‌ప్రధాన డెవెలపర్. వరల్డ్ ఆన్‌లైన్ టీం వారు కొన్ని వెబ్సైట్ల నిర్వహణ చూసేవారు. ఈ సందర్భాల్లో ఒకోసారి ఏదో డెవెలప్ చేయమని, నాలుగురోజుల్లో ఐపోవాలనీ, ఇలాంటి డెడ్ లైనులు ఉండేవట. ఈ పరిస్థితుల్లో, అవసరం కొద్దీ, సమయం ఆదా చేసే జాంగో లాంటి ఫ్రేం వర్క్ ను కనిపెట్టారట. ఇదంతా 2003 నాటి కథ. రెండేళ్ళు గడిచే సరికి, వరల్డ్ ఆంలైన్ వారి సైట్లు చాలావాటిని జాంగో వల్ల సమర్థవంతంగా నిర్వహించగలుగుతున్నాం‌కనుక, దీన్ని ఓపెన్ సోర్సుగా విడుదల చేద్దాం అనుకున్నారట ..అలా జాంగో‌మనముందుకొచ్చింది. నేను వృత్తిలో భాగంగా కొంతకాలం జాంగో వాడాల్సి వచ్చింది ఈమధ్య. అప్పుడు ఈ పుస్తకం నా కంట బడింది. పుస్తకం చదువుతూ ఉంటే, చక్కగా రాయబడ్డట్లు అనిపించింది. మొదట కాస్త తికమకపడ్డా,చదవడం మొదలుపెట్టిన రెండ్రోజులకే నేను సర్దుకుపోవడం, ఈ పుస్తకం గురించి నాకు మంచి అభిప్రాయం కలిగించింది. ఇప్పుడీ‌పుస్తకం ఔపోసన పట్టలేదు కానీ, అవసరమున్నంత మేర చదివాను. మిగితావి తిరగేస్తూ ఉంటాను. అయినా సరే, పుస్తక పరిచయానికి అదంతా అడ్డంకి కాదన్న ఉద్దేశ్యంతో…. ముందుకెళ్తున్నా.

మొత్తంగా, ఇందులో ఇరవై చాప్టర్లు ఉన్నాయి.

అందులో మొదటిది జాంగో చరిత్ర, అసలు వెబ్ ఫ్రేం వర్క్ అంటే ఏమిటి? పైథాన్ ఏమిటి? ఇలాంటి ప్రాథమిక ప్రశ్నలతో సాగుతుంది. రెండో అధ్యాయం లో జాంగోని మన కంప్యూటర్లో పనిచేసేలా చేయడానికి ఏం దిగుమతి చేస్కోవాలి, ఏవి ఇంస్టాల్ చేసుకోవాలి? కొత్త ప్రాజెక్టు మొదలుపెట్టడం ఎలా? ఎలా సరిచూసుకోవాలి పని చేస్తోందో లేదో – ఇలాంటి విషయాల గురించి చర్చిస్తుంది. తరువాతి ఛాప్టర్ లో మీరనుకున్నట్లు, ఒక ‘హలో వరల్డ్’ ప్రోగ్రాం తీసుకుని, జాంగో లో దాన్ని ఎలా రూపొందించాలో, జాంగో అసలు ఎలా పనిచేస్తుందో, తన సర్వర్ కు వచ్చిన అభ్యర్థనలను ఎలా ప్రాసెస్ చేస్తుందో – చక్కగా వివరించారు.

జాంగోది ‘మోడల్ వ్యూ కంట్రోలర్’ (ఎంవీసీ) తరహా నిర్మాణం. అయితే, మామూలు గా మనం ఎంవీసీ అనుకునే ఎం,వీ,సీ ల స్థానం జాంగోలో కాస్త వేరుగా ఉంటుంది లెండి. ఏదేమైనా, ‘వ్యూ’ భాగాన్ని జాంగోలో ‘టెంప్లేట్’ అంటాము. క్లయంట్ వైపు నుంచి వచ్చే అభ్యర్థనలకు అనుగుణంగా వారికి సర్వర్ ఏదో జవాబు పంపిస్తుంది కదా – దాన్ని మనం‌ క్లయంట్లకు చూపే విధానం – టెంప్లేట్. ఉదాహరణకు – ఏదో ఎచ్టీఎమ్మెల్ పేజీ చూపాలి అనుకుందాం..ఆ పేజీ ఇలా ఉండాలి అని ఒక టెంఫ్లేట్ జాంగోలో మనం ముందే సేవ్ చేయాలి. ఆ టెంప్లేట్లు ఎలా నిర్మించాలి? అన్నది నాలుగో చాప్టరు కథ. ఐదో చాప్టర్ ‘మోడెల్స్ ‘గురించి. మోడల్స్ అంటే, నరమానవ భాషలో చెప్పాలంటే, ఇక్కడ, ఒక డేటాబేస్ తో సంభాషించుకోవాలంటే జాంగోలో ఏం చేయాలి? అన్నది. నేనాట్టే‌పాటించలేదు కానీ, ఈ ఛాప్టరు చాలా వివరంగా రాసారు.

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

సాధారణంగా, ఇంతవరకూ వస్తే, జాంగో ఎంతోకొంత వంటబట్టినట్లే. తదుపరి చాప్టర్లు నా దృష్టిలో‌రిఫరెన్ సు లా చదవాల్సినవి.

ఎనిమిదో చాప్టరు మొత్తం -ఒక జాంగో అప్లికేషన్ లో వివిధ లంకెలు ఎలా రూపొందించాలి? అన్నదాని గురించి. ఉదాహరణకి: ఎక్స్.కాం అన్న సైటును జాంగో ద్వారా రూపొందించాం అనుకుంటే, ఎక్స్.కాం/వై, ఎక్స్.కాం/వై/జెడ్ – ఇలాంటి లంకెల పనితీరును నిర్ణయించే కోడ్ భాగాలను ఈ లంకెలకి అనుసంధానించే ప్రక్రియ, దానిలోని మెళకువల గురించి ఈ చాప్టర్. తొమ్మిదో చాప్టర్లో ఇందాక చెప్పిన ‘టెంప్లేట్’ ల గురించి మరింత వివరంగా, కొంచెం అడ్వాంస్డ్ లెవెల్లో ఉంటుంది. ఇక్కడికే నేను ఊరికే బ్రౌజ్ చేయడం మొదలైపోయింది లెండి. అలాగే, పదోచాప్టర్లో ‘మోడెల్స్’ గురించీ, డేటాబేస్ తో వ్యవహారాల్లో చూపవలసిన మెళుకువల గురించీ, మరింత వివరంగా రాశారు. ఇంతదాకా ఈ పుస్తకంలో, ఇన్ని చెప్పుకున్నా, అసలు డేటాబేసుతో గానీ, టెంప్లేట్లతో గానీ, ప్రధానంగా సంభాషించే ‘వ్యూస్.పై’ ఫైలు గురించి ప్రస్తావించనేలేదు పెద్దగా. ఈ పదకొండో‌ చాప్టర్లో దాని గురించి వివరంగా రాసి ఉంది. పన్నెండు చాప్టర్లో జాంగోని ఒక పూర్తి స్థాయి అప్లికేషన్ కోసం‌డిప్లాయ్ చేయడానికి తీసుకోవలసిన జాగ్రత్తల గురించి, దాని తాలూకా చిట్కాల గురించీ. పదమూడో చాప్టరు -ఎచ్టీఎమ్మెల్ కాక, తక్కిన రకాల పేజీల సృష్టి గురించి.

సాధారణంగా మనకు ఏదన్నా సైటులో రిజిస్ట్రేషన్, లాగిన్ వంటివి అవసరం ఉండొచ్చు.అలాంటి అవసరాల కోసం జాంగోలో ఒక రిజిస్ట్రేషన్ మాడ్యూల్ కూడా‌ఉంది. యూజర్లూ, వారి రిజిస్ట్రేషనులూ, సెషనులూ – ఇవన్నీ ఈ మాడ్యూల్ ను చేర్చుకుని, దానికి తగ్గట్లుగా టెంప్లేట్ రూపొందించుకుంటే‌చాలు – తేలిగ్గా చేసేస్కుని, మన అసలుపని పైకి దృష్టి సారించవచ్చు. దీని గురించి పధ్నాలుగో చాప్టరు వివరిస్తుంది. (అయితే, ఇదొక్కటి చాలదు లెండి. కాస్త వెబ్బులో కృషి చేయాలి మొత్తానికి ఒక రిజిస్ట్రేషన్ సిస్టం పెట్టాలంటే!) జాంగోలో వివిధ రకాల caching పనితీరులను వివరించేది పదిహేనో ఛాప్టరు. ఇక ఇందులో ఉన్న వివిధ ప్యాకేజీలూ, లైబ్రరీల గురించిన ఛాప్టరు పదహారోది. పదిహేడోది (నేనస్సలు ముట్టనిది) – జాంగోలోని మిడిల్ వేర్ గురించి. లెగసీ అప్లికేషన్లనూ, డేటానూ, జాంగోలోకి ఇంటిగ్రేట్ చేయాల్సి వస్తే, ఎలా చేయాలీ? అన్న ప్రశ్నకు జవాబులు పద్దెనిమిదో ఛాప్టర్లో ఉన్నాయి. జాంగోలో లోకలైజేషన్ ఎలా చేయాలి? – అన్నది పందొమ్మిదో ఛాప్టర్ వివరిస్తుంది. అన్నట్లు, జాంగో ఇప్పుడు అంతర్జాతీయంగా యాభై భాషల్లో‌ఉందట!! ఇక చివరగా ఇరవయ్యో ఛాప్టరు మన సైటును దుండగుల బారినుంచి ఎలా కాపాడుకోవాలో, ఎలాంటి చర్యలు తీసుకోవాలో వివరిస్తుంది.

‘We wish you the best of luck in running your Django site, whether it’s a little toy for you and a few friends, or the next Google.’
-అన్న వాక్యాలతో ముగిసిందీ పుస్తకం‌:-)

ఏ సాఫ్ట్వేరుకన్నా ఎంతోకొంత డాక్యుమెంటేషన్ ఉంటుంది. ఓపెన్ సోర్సు సాఫ్ట్వేరు తీసుకుంటే, దాని తాలూకా డాక్యుమెంటేషన్ ఉంటుంది కానీ, ప్రాజెక్టులని బట్టి ఒక్కోసారి చాలా తక్కువగానూ, ఒక్కోసారి చాలా వివరంగానూ ఉంటుంది. కానీ, ఇంత తేలిగ్గా అర్థమయ్యేలా రాయబడ్డ పుస్తకం ఇదివరలో నేను చదవలేదు. ఉదాహరణకి – ‘లూసీన్ ఇన్ యాక్షన్‘ అని లూసీన్ మీద పుస్తకం ఉన్నా కూడా, అది సామాన్య ప్రజానీకానికి కాదు, అని నా నిశ్చితాభిప్రాయం. లూసీన్, జాంగో రెండు వేర్వేరు ప్రయోజనాలకి రాసిన పుస్తకాలు కనుక, వాటిని పోల్చలేం అనుకోండి, కాని, ఈ వెబ్-పుస్తకం మాత్రం, కొంత ప్రోగ్రామింగ్ అనుభవం, బోలెడంత ఆసక్తీ ఉన్న అందరికీ పనికొస్తుంది.

You Might Also Like

4 Comments

  1. పుస్తకం » Blog Archive » 2010 – నా పుస్తక పఠనం కథ

    […] అవగాహన కల్పిస్తూ రాసిన ఈ-పుస్తకం The Django Book : జాంగో ను ఉపయోగించి వెబ్ […]

  2. పుస్తకం.నెట్ కు రెండేళ్ళోచ్! « sowmyawrites ….

    […] గత ఏడు వచ్చిన వ్యాసాల జాబితా చూస్తే – The Django Book లాంటి సాంకేతిక పుస్తకం మొదలుకుని అడ్వర్టైజింగ్ ప్రపంచం […]

  3. యోగి

    కొంచెం ఆశ్చర్యం కొంచెం సంతోషం! మీరో మంచి సంప్రదాయానికి తెరతీసారు. టెక్ పుస్తకాలూ, పుస్తకాలే – డేటాబేస్ నిర్వహణలాంటి లోతైన అంశాలనుకూడా విసుగెత్తనివ్వకుండా చదువరులకు అందించగలిగిన రచయితలు చాలామంది ఉన్నారు – ఉదాహరణకి పాల్ రాండల్, బ్రెంట్ ఓజర్, థామస్ లా రాక్, క్రిస్టియన్ బోల్టన్. వీళ్ళలో ఎవరూ రచనావ్యాసంగ కెరియర్‌గా తీసుకున్న వారూ కాదు మరి – సగటు ఉద్యోగులు. బహుశా చేసే పనిని ఏదో ఆఫీస్ కు పోయినాం, కాపీ-పేస్ట్ పని చేసినాం అన్న చందాన కాకుండా సీరియస్ గా తీసుకునేవాళ్ళు ఇక్కడితో పోలిస్తే, అక్కడ ఎక్కువ. (ఇక్కడ ‘అక్కడే’దో, ‘ఇక్కడే’దో మళ్ళీ చెప్పాల్సిన పనిలేదనుకుంటాను).

    నేనూ కొన్ని రోజులు జాంగో, గూగుల్ ఆప్ ఇంజన్లతో ఆడుకున్నాను, (జాంగోను)సీక్వెల్ సర్వర్ తో పని చేయించగలిగాను కూడానూ(వీటి సాయంతో ) కానీ అది అక్కడీతో ఆగిపోయింది, పెద్దగా పనికొచ్చే పనులేం చెయ్యలేదు.

    మీరిచ్చిన ఆన్లైన్ పుస్తకం లో ఎడమపక్కన comments on this block సెక్షన్ చూసారా? That’s djangos power. 🙂

    అన్నట్టు కొత్తగా ఎవరైనా జాంగోను స్థాపించుకుని ప్రయత్నించి చూడాలనుకుంటే – ఆ తతంగం అంతా కొంచెం గజిబిజిగా అనిపిస్తే – అంటే, నా మట్టిబుర్రకు కొంచెం గజిబిజిగానే అనిపించింది లెండి – అలాంటి వాళ్ళకోసం ఇక్కడో one click install ఉంది చూడండి!

Leave a Reply