कस्टम डेवलपमेंट
कुछ समस्याएँ वेबसाइट में फ़िट नहीं बैठतीं। जब काम कोई टूल हो, कोई इंटीग्रेशन हो, या कोई ऐसी प्रक्रिया हो जिसे अब हाथ से करना ठीक नहीं, तो हम इसकी जगह वही बनाते हैं।
छोटी टीम, अनुभवी, और स्कोप को लेकर ईमानदार। अगर कोई मौजूदा प्रोडक्ट आपकी समस्या हल कर सकता है, तो हम यह साफ़ बता देंगे, बजाय इसके कि उसे दोबारा बनाने का बिल थमा दें।
रजिस्टर
हम किस तरह का काम लेते हैं
कस्टम सॉफ़्टवेयर को समझने का एक अच्छा तरीका है, उस समस्या से जिसे वह हटाता है। ये वे पैटर्न हैं जो सबसे ज़्यादा सामने आते हैं, और जो हम अक्सर बनाकर देते हैं।
| समस्या | हम क्या बनाते हैं |
|---|---|
| एक ही मैनुअल काम, हर दिन, ऐसे व्यक्ति द्वारा जो इसके लिए बहुत अनुभवी है | एक इंटरनल टूल जिसमें सारे स्टेप्स एक बार तय हो जाते हैं: एक फ़ॉर्म, एक क्यू, एक साफ़ ऑडिट ट्रेल, और ऐसी परमिशन जो टीम के असली काम करने के तरीके से मेल खाती हों। |
| दो सिस्टम जो आपस में बात नहीं करते | एक इंटीग्रेशन जो उनके बीच की मैपिंग संभालता है, एक तरफ़ के डाउन होने पर सुरक्षित तरीके से दोबारा कोशिश करता है, और बताता है कि कब किसी इंसान की ज़रूरत है। |
| बिज़नेस एक ऐसी स्प्रेडशीट पर चल रहा है जिसे कोई छूने की हिम्मत नहीं करता | एक छोटा वेब एप्लिकेशन जिसके पीछे एक असली डेटा मॉडल हो, ताकि दो लोग एक साथ काम कर सकें और पिछली तिमाही के आँकड़े गलती से ओवरराइट न हों। |
| एक रिपोर्ट जिसे हर हफ़्ते कोई हाथ से तैयार करता है | एक शेड्यूल्ड जॉब जो डेटा जुटाती है, उसे जाँचती है, और ज़रूरतमंद लोगों तक रिपोर्ट पहुँचाती है, हर रन का रिकॉर्ड रखते हुए। |
| एक ग्राहक वर्कफ़्लो जो मार्केटिंग साइट से जोड़ा गया, जब तक कि वह टूट न गया | अपने ही पते पर एक ठीक-ठाक एप्लिकेशन, जो साइट के डिज़ाइन सिस्टम को साझा करती है ताकि सब कुछ एक ही कंपनी जैसा महसूस हो। |
| कुछ ऐसा जिसकी कोई कीमत नहीं लगा सकता क्योंकि किसी ने उसका स्कोप तय ही नहीं किया | एक छोटा डिस्कवरी चरण: सबसे छोटा काम करने वाला वर्ज़न लिखित रूप में तय किया जाता है, साथ ही वे हिस्से भी साफ़-साफ़ बताए जाते हैं जिन्हें हम नहीं बनाएँगे। |
निर्णय
हम क्या बनाना है यह कैसे तय करते हैं
- पहले वह सबसे छोटी चीज़ जो काम करे। प्रोडक्शन में एक संकरा सा टूल दो हफ़्तों में उतना सिखा देता है जितना एक पूरा स्पेसिफ़िकेशन एक तिमाही में भी नहीं सिखाता, और जब पता चल जाए कि कौन सा हिस्सा मायने रखता है, तो इसे आगे बढ़ाया जा सकता है।
- जानबूझकर 'बोरिंग' टेक्नोलॉजी। हम दिलचस्प विकल्प की बजाय आज़माया-परखा विकल्प चुनते हैं। कस्टम सॉफ़्टवेयर की परख उस दिन होती है जब किसी को इसे बदलना पड़े, लॉन्च वाले दिन नहीं।
- डेटा मॉडल शुरू में ही ठीक कर लें। इंटरफ़ेस को फिर से बनाना सस्ता है, पर डेटा की बनावट बदलना महँगा, इसलिए स्क्रीन तय होने से पहले डेटा की बनावट तय की जाती है।
- बनाने से पहले खरीदने पर विचार। अगर कोई लाइसेंस्ड प्रोडक्ट आपकी ज़रूरत पूरी करता है, तो ईमानदार सलाह यही है कि उसे इस्तेमाल करें। हम उसे दोबारा बनाने का बिल थमाने की बजाय, उसे जोड़ने वाला छोटा हिस्सा बनाना पसंद करेंगे।
- दूसरे डेवलपर के लिए डिज़ाइन। पढ़ने लायक कोड, डॉक्यूमेंटेड सेटअप, ऐसे टेस्ट जो मक़सद बताएँ। काम की असली कसौटी यह है कि क्या कोई और इसे सुरक्षित तरीके से बदल सकता है।
मानक
हर प्रोजेक्ट के साथ क्या शामिल रहता है
वेबसाइट जैसा ही इंजीनियरिंग स्तर, क्योंकि किसी इंटरनल टूल को सालों तक वे लोग इस्तेमाल करते हैं जिनके पास कोई और विकल्प नहीं होता।
आपकी अपनी रिपॉज़िटरी
पूरा इतिहास, आपके अकाउंट में, और सेटअप इतना अच्छी तरह डॉक्यूमेंटेड कि कोई नई मशीन उसी दोपहर तक प्रोजेक्ट चला सके।
ऑटोमेटेड जाँच
हर बदलाव पर टेस्ट और टाइप चेकिंग चलती है, इससे पहले कि कुछ भी उन लोगों तक पहुँचे जो इस पर निर्भर हैं। कोई भी लाल परिणाम डिप्लॉय को रोक देता है।
एक-कमांड डिप्लॉय
पब्लिश करना एक ही, दोहराया जा सकने वाला क़दम है, और पिछला वर्ज़न सिर्फ़ एक रिवर्ट दूर। न कोई हाथ से जोड़ा गया रिलीज़, न कोई अनडॉक्यूमेंटेड सर्वर।
सुगम्य इंटरफ़ेस
इंटरनल सॉफ़्टवेयर को भी वही कीबोर्ड सपोर्ट, कंट्रास्ट और सिमेंटिक्स मिलते हैं जो पब्लिक साइट को मिलते हैं। स्टाफ़ भी उसी स्तर के हक़दार हैं जो ग्राहकों को मिलता है।
कोड से बाहर रहने वाले राज़
क्रेडेंशियल एक सीक्रेट स्टोर में रहते हैं और चलती हुई सर्विस तक एनवायरनमेंट वैल्यू के रूप में पहुँचते हैं, रिपॉज़िटरी में किसी फ़ाइल के रूप में कभी नहीं।
हैंडओवर का एक रास्ता
अकाउंट, डोमेन और रिपॉज़िटरी जब चाहें आपके अपने ऑर्गनाइज़ेशन को ट्रांसफ़र किए जा सकते हैं, बिना कुछ भी रोके रखे।
स्कोप
हम कहाँ रुकते हैं
अपनी सीमाओं के बारे में साफ़ रहना भरोसेमंद होने का ही एक हिस्सा है। हम एक छोटी, अनुभवी टीम हैं, इसलिए हम वही काम लेते हैं जो अच्छी तरह कर सकें, और जो नहीं कर सकते उसे मना कर देते हैं।
हम लाइसेंस्ड प्लेटफ़ॉर्म दोबारा नहीं बेचते, ऐसे प्रोजेक्ट में स्टाफ़ नहीं लगाते जिसे हम खुद नहीं बना रहे, और बिना स्कोप तय किए किसी समस्या की कीमत नहीं बताते। जहाँ काम का कोई हिस्सा किसी विशेषज्ञ का काम हो, हम आपको साफ़ बता देंगे, बजाय इसके कि यह बात आपकी क़ीमत पर पता चले।
शुरू करने के लिए किसी स्पेसिफ़िकेशन की ज़रूरत नहीं। हमसे संपर्क फ़ॉर्म या sales@wwi.dev पर संपर्क करें और काम को सीधी भाषा में बताएँ।