Producing open source software – Karl Fogel

పేరులో ఏమున్నది అనుకుంటాం కానీ, ఈ పేరు చూస్తే ఈ పుస్తకం దేనిగురించో అర్థం కావడం లేదూ? 🙂

ఓపెన్-సోర్స్ ని విరివిగా ఉపయోగించడం తెలుసు కానీ, నేనెప్పుడు ఏ ఓపెన్సోర్సు ప్రాజెక్ట్ డెవెలప్మెంట్ లోనూ పాలు పంచుకోలేదు (యూనివర్సిటీ రిసర్చ్ కూడా ఒక విధంగా “ఓపెన్” సోర్స్ ఏ అనుకోండి. అది వేరే సంగతి). కానీ, ఓపెన్సోర్స్ ప్రాజెక్టులు పని చేసే విధానం నాకు ఎప్పుడూ అబ్బురంగా అనిపిస్తూ ఉంటుంది. ఒక్కొక్కరూ ఒక్కో చోట ఉంటారు. కనీసం ఒకరికి ఒకరికి ముఖ పరిచయం కూడా ఉండదు. కానీ, ఎన్నో ఓపెన్ సోర్స్ ప్రాజెక్టులు ఏళ్ల తరబడి నడుస్తున్నాయి. వాటి వెనుక వందల కొద్దీ ప్రాజెక్టులు ఆగిపోయి ఉండవచ్చు. కానీ, అలా కొట్టిపారేసుకుందాం అనుకున్నా కూడా – కళ్ళ ముందు విజయవంతంగా నడుస్తున్న ప్రాజెక్టులను చూస్తూ – ఎలా పనిచేస్తారో వీళ్ళు? అనుకుంటూ ఉంటాను తరుచుగా. ఈ పుస్తకం నాలాంటి వాళ్ళ కోసం. అలాగే, కొత్తగా ఓపెన్సోర్స్ ప్రాజెక్టు మొదలుపెట్టాలి అనుకుంటున్న వాళ్ళకోసం కూడా. ఓపెన్సోర్స్ ఉపయోగిస్తున్న వాళ్ళకీ, ప్రాజెక్టులో సభ్యులుగా ఉన్న వాళ్ళకీ – అందరికీ ఉపయోగపడే పుస్తకం.

పుస్తకంలో తొమ్మిది అధ్యాయాలు ఉన్నాయి. అధ్యాయాల వారీగా పరిచయం చేస్తాను.

మొదటి అధ్యాయం – Introduction. ఓపెన్ సోర్స్, ఫ్రీ సాఫ్ట్వేర్ – ఇవన్నీ ఏమిటి? పోలికలేమిటి? తేడాలేమిటి? ఎలా వచ్చాయి? వీళ్ళ భావజాలాలు ఉన్నాయా? ఉంటే ఏమిటి? వీటి గురించి పరిచయం చేస్తూనే ఓపెన్సోర్సు ప్రాజెక్టుల పనితీరు గురించి ప్రాథమిక అవగాహన కలిగిస్తారు.

ఇదివరలో ఒకసారి ఇంజినీరింగ్ లో ఉన్నప్పుడు ఒకసారి “సాఫ్ట్వేర్ ఫ్రీడం డే” అని ఒకటి చేసారు. అప్పుడే రిచర్డ్ స్టాల్మన్ రాసిన “మేనిఫెస్టో” ఒకసారి చదివాను. ఆయన కూడా హైదరాబాదులో ఒక లెక్చర్ ఇచ్చినట్లే గుర్తు నాకు ఆ సమయంలోనే ఎప్పుడో. అప్పట్లో నాకు – ఏమిటీ ఇంత పట్టుబడుతున్నాడు? అనిపించింది. కానీ, ఇప్పుడీ అధ్యాయం చదువుతున్నప్పుడు గానీ నాకు అయన ఫిలాసఫీ పూర్తిగా అర్థం కాలేదు. ఓపెన్ సోర్స్ కు, ఫ్రీ సాఫ్ట్వేర్ ఉద్యమానికి మధ్య ఉన్న పోలికలు, తేడాల గురించి ఏదన్నా అయోమయం ఉన్నవారు తప్పక చదవాలి ఇలాంటి వ్యాసాలను.

రెండవ అధ్యాయం – Getting Started : ఇప్పుడు మనం ఒక ఓపెన్ సోర్స్ ప్రాజెక్టు మొదలుపెడడం అనుకుంటే, ఎక్కడ మొదలుపెట్టాలి? ఎలాంటి అంశాలు గమనించుకోవాలి? ఎలా మొదలుపెట్టాలి? ఎలా దీని గురించి తక్కినవారికి తెలియజేయాలి? అన్న అంశాల గురించి చిన్న పరిచయం ఈ అధ్యాయం.

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

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

నాలుగవ అధ్యాయం – Social and Political infrastructure:
సామూహికంగా, స్వచ్చందంగా నడిచే ప్రాజెక్టులు కనుక – ఎవరొ ఒకరు నియంత కాకుండా, ప్రాజెక్టు నిర్వహించే ప్రధాన వ్యక్తైనా సరే, నా ధోరణే చెల్లాలి అన్న ధోరణిలో వెళ్ళకుండా…అలాగే, ఎవైన గొడవల వల్ల వేరు కుంపటి పెట్టుకోవడం (forkability) వంటివి జరగకుండా చూడ్డం, జరిగితే ఏం చేయాలి? ప్రధాన నిర్ణయాలు తీసుకోవడానికి ఏ పధ్ధతి ఉత్తమం? – ఈ అంశాలు ఇందులో బాగా వివరంగా చర్చిస్తారు.

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

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

– ఓపెన్సోర్స్ ప్రాజెక్టుల రెవెన్యూ మాడల్స్ గురించి నాకు ఎప్పుడూ కుతూహలమే. ముఖ్యంగా లినారో, కానోనికల్ వంటి కంపెనీల గురించి తెలుసుకున్నాక, వాటిలో పనిచేసే ఉద్యోగులు కొందరి గురించి వ్యక్తిగతంగా తెలిసాక – ఒక పక్క స్వచ్చందంగా పనిచేసే వారిని, ఒకపక్క తమకు పని చేసే వారిని ఎలా పెట్టుకుంటారు? అసలు వీళ్ళకి డబ్బులిచ్చి ఇంజినీర్లను, ఇతరులను పెట్టుకోవడం దేనికి? పెట్టుకున్నా అంతంత డబ్బులు ఎలా వస్తాయి? ఇలా సవాలక్ష సందేహాలు ఉండేవి నాకు. ఈ అధ్యాయం చదివాక, చాలావరకు తీరిపోయాయి.

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

ఏడవ అధ్యాయం – Packaging, Releasing and Daily Development: మామూలు సాఫ్ట్వేర్ కంపెనీలతో పోలిస్తే, ఇలాంటి సామూహిక ప్రాజెక్టుల్లో రిలీజ్, డెవెలప్మెంట్ చక్రాలు కొంచెం వేరుగా ఉంటాయి. కనుక, ఈ ప్రాజెక్టుల్లో వాటి పనితీరు గురించి, కొన్ని సంప్రదాయాల గురించి ఇందులో వివరంగా ఉదాహరణలతో సహా చెప్పారు. అయితే, అన్ని రకాల కంపెనీలకూ చెల్లుబాటు కాకపోయినా కూడా, ఈ భాగం సాఫ్ట్వేర్ రంగంలో ఉండే అందరికి ఉపయోగపడేదే అనుకుంటాను.

ఎనిమిదవ అధ్యాయం – Managing Volunteers: ఇది కూడా మళ్ళీ మంచి సార్వజనీనత ఉన్న అంశం. ప్రాజెక్టులో పాలుపంచుకుంటున్న వివిధ వ్యక్తులకి మధ్య ప్రాజెక్టు నిర్వహణని ఎలా పంచాలి? ఎలాంటి పనులకి ఒక “మేనేజర్” ని పెట్టాలి? వాళ్ళు ఏం చేస్తారు? – ఇవన్నీ చాలా వివరంగా చర్చిస్తారు. అధ్యాయం మొత్తం ఓపెన్సోర్సు ప్రాజెక్టులని దృష్టిలో ఉంచుకునే చెప్తారు కానీ, సరిగ్గా చదివితే, ఆన్లైన్ సైట్ల నిర్వహణ గురించే కాదు – అసలుకి మామూలుగా people management గురించి కూడా ఎన్నో విషయాలు తడతాయి. కొన్ని యధాతథంగా ఎక్కడైనా వాడుకునే సూచనలు. ఇవన్నీ ఎవరికీ తెలియవు అని కాదు – మళ్ళీ ఒకసారి నేమరువేసుకోవడానికి. అంతే!

తొమ్మిదవ అధ్యాయం – Licenses, Copyrights and Patents : ఈ అధ్యాయం మొత్తం వివిధ ప్రముఖ ఓపెన్ సోర్స్ లైసెన్స్ల గురించి, కాపీరైట్లు-పేటెంట్లు వాటితో ఓపెన్సోర్స్ ప్రాజెక్టులకి ఉండే సంబంధం గురించి – చాలా తేలికైన భాషలో వివరిస్తుంది. ప్రాజెక్టు ఏదన్నా మొదలుపెట్టాలి అనుకునేవారు మొట్టమొదట చదవాల్సిన వివరాలు ఇవి. వీటి గురించి క్లుప్తంగా మొదటి అధ్యాయంలో రాసారు కానీ, ఈ అధ్యాయం మాత్రం ప్రాజెక్టు మొదలుపెట్టాలి అనుకునేవారికి అన్నింటికంటే ముఖ్యమైంది అని నా అభిప్రాయం.

చివర్లో కొన్ని టూల్స్, సాఫ్ట్వేర్ గురించి రెండు మూడు అపెండిక్స్ లు ఇచ్చారు – కొత్తవారి సౌకర్యార్థం.

చదువుతున్నంత సేపూ నాకు అనిపించినది ఏమిటి అంటే – ఓపెన్సోర్స్ మేనేజ్మెంట్ మామూలు మేనేజ్మెంట్ కంటే కూడా క్లిష్టమైనదేమో అని. నాకు మేనేజ్మెంట్ అనుభవం లేదు. పెద్ద సైజు గుంపులు ఉన్న ప్రాజెక్టుల్లో కూడా పని చేయలేదు. కనుక, నాకు ఇలా అనిపించి ఉండవచ్చు. కానీ, ఎలాగైనా, ఓపెన్సోర్స్ మేనేజ్మెంట్ లో ఉండే మౌలిక తేడాలు (ఒక్కొక్కరు ఒక్కో చోట ఉండడం, ఆన్లైన్ వార్తాకలాపాలే ఉండడం వంటివి) వల్ల నాకు దీనికి ప్రత్యేకమైన నేర్పరితనం కావాలి అనిపిస్తోంది.

నాకు ఇలాంటి పుస్తకం చదవడం ఇదే మొదటిసారి కనుక, ఇందులో ఏమన్నా మిస్సయ్యారేమో? అన్నది నేను చెప్పలేను. కాకపొతే, ఇది చదివాక రెండు అంశాల గురించి కుతూహలం కలిగింది.
౧) వికీపీడియా వంటి సామూహిక కార్యాలను నిర్వహించడంలో ఉన్న సాధకబాధకాలు (వికీనామిక్స్ పుస్తకం దీని గురించి అనుకుంటాను. చదివిన వారు చెప్పండి)
౨) అలాంటివి కాకుండా ఇప్పుడీ పుస్తకం.నెట్ తరహాలో నడిచే వేబ్జీన్స్ నిర్వహణ గురించి, కంటెంట్ మేనేజ్మెంట్ గురించిన వ్యాసాలు
-ఎవన్నా ఉంటే కొంచెం చదవాలని. ఈ అంశాల గురించి ఇక్కడ ఈ వ్యాసం చదివిన వారికీ ఏమన్నా లంకెలు తెలిస్తే చెప్పండి.

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

పుస్తకం ఆన్లైన్ కొనుగోలుకూ (Amazon link, here), ఆన్లైన్ చదువుకూ కూడా లభ్యం. (ఇతర భాషల్లోకి అనువదిస్తున్నారు కూడానట!)

You Might Also Like

3 Comments

  1. Dr Somanchi Sai Kumar

    నిజంగానే ఈ విశ్లేషణ బాగుంది. నేను కూడా చాలా ఓపెన్ సోర్స్ softwares వాడుతున్నాను కానీ ఎలా వాటిని అభివృద్ధి చేస్తారో ఇప్పుడు దీని ద్వారా అర్థమయిది .

  2. rama (rama sundari)

    సౌమ్యా,

    మీ పుస్తక పరిచయాలు, పుస్తక పఠనం, బ్లాగు విషయాల నిర్వహణ వగైరా అంశాల గురించి వింటూ, ‘అబ్బ, ఒక విలువైన మనిషి’ అనుకోకుండా ఉండలేక పోతున్నాను.
    ఈ పుస్తకం టైటిల్ ని విశ్లేషించిన తీరు బాగుంది. మీ దృష్టి విలక్షణమైనది.
    రమా సుందరి

  3. Ramesh

    ధన్యవాదాలు, టపా వ్రాసినందుకు, లంకెలు ఇచ్చినందుకు. Online లో కొన్ని sections చదివాను. విషయం, వివరణ, విశ్లేషణ బాగున్నాయి.

Leave a Reply