স্বাধীন পণ্য উন্নয়ন নিয়ে ধারাবাহিকের দ্বিতীয় লেখা

আগের লেখায় iOS উন্নয়নের দৃষ্টিতে স্বাধীন অ্যাপের প্রয়োজন ঠিক করা, উন্নয়ন ও প্রকাশের কিছু সম্পদ নিয়ে বলেছি। সম্পদের সীমার কারণে কেবল Apple App Store-এ থাকা কিছু টুল অ্যাপই করা সম্ভব হয়েছিল।

এই লেখার লক্ষ্য পূর্ণ বৈশিষ্ট্যের ক্রস-প্ল্যাটফর্ম পণ্য তৈরি এবং সেই পথে পাওয়া সমস্যা ও সমাধান। এখানে ধাপে ধাপে কীভাবে নিজের WeChat অফিসিয়াল অ্যাকাউন্ট, মিনি প্রোগ্রাম + অ্যাপের পূর্ণ পণ্য ইকোসিস্টেম তৈরি করেছি তা বলছি।

1. পণ্যের লক্ষ্য

বড় অর্থে পণ্যের লক্ষ্য হলো পণ্যটি যে মূল্য তৈরি করে। ব্যবহারকারীর পরিস্থিতি থাকলেও তৈরি পণ্যের মূল্য না থাকলে—আয় করতে না পারলে বা ব্যবহারকারী খুব কম হলে—তার থাকার প্রয়োজন নেই।

আরও বড় করে পণ্যের ভিশন থেকেও শুরু করা যায়...

থামুন—এখনই এত কিছু ভাববেন না, নইলে আপনার পণ্য কেবল অন্তহীন কল্পনাতেই থাকবে।

সম্পদ, জনবল ও বিনিয়োগ সীমিত হলে পণ্যের লক্ষ্য খুব পরিষ্কার: এটি কোন সমস্যা সমাধান করবে, অথবা কোন বৈশিষ্ট্য সম্পন্ন করবে!

যেমন আমার File Manager-এর MVP লক্ষ্য ছিল পরিষ্কার: ফোন ও কম্পিউটারের মধ্যে ফাইল স্থানান্তর।

MVP শেষ হলে স্বাভাবিকভাবেই অন্য চাহিদা আসে; কিছু নিজের পরিকল্পনা থেকে, আরও বেশি ব্যবহারকারীর মতামত থেকে:

  • 1.0.0 ফোন ও কম্পিউটারের মধ্যে স্থানান্তর
  • 1.1.0 ছবি, ভিডিও ও অডিও ফাইল দেখা বা চালানো
  • 1.2.0 ফাইল গ্রুপ, সরানো, মোছা, সংকোচন ও শেয়ার
  • 1.3.0 প্লেয়ার উন্নত করা
  • 1.4.0 নিরাপত্তা যাচাই: জেসচার পাসকোড ও বায়োমেট্রিক অথেন্টিকেশন
  • 2.0.0 ইন-অ্যাপ কেনাকাটা যোগ করা
  • 2.1.0 ফাইল স্ক্যানিং সম্পন্ন করা
  • ....

মূল File Manager স্ক্রিনশট: ফাইল দেখা ও ব্যবস্থাপনার সুবিধা

মূল File Manager স্ক্রিনশট: অতিরিক্ত ফাইল টুল ও ইন্টারফেস

একটি লক্ষ্য বেছে নিন। বড় হওয়ার দরকার নেই, তবে বাস্তবায়নযোগ্য হতে হবে। একবারে একটি বিষয়ে মন দিন এবং ভুল মনে হলেও এগিয়ে যান—শেষ না করলে ভুল জানবেন কীভাবে ◔ ‸◔? শেষ করে তারপর পর্যালোচনা করুন।

2. পণ্যের প্রোটোটাইপ

আগের লেখায় অনেক প্রোটোটাইপিং টুল চেষ্টা করে বলেছিলাম, প্রোটোটাইপ ডিজাইনের সময়েই xib দিয়ে স্ক্রিন বানানো যেত।

এখানে নিজের কথার বিরোধিতা করি ,,Ծ‸Ծ,,

পরবর্তী পরিকল্পনা ছাড়া শুধু শেষ ও প্রকাশের লক্ষ্য নিয়ে ব্যক্তিগত টুল অ্যাপ বানালে এভাবে ভাবা বোধগম্য।

পণ্য এগোলে প্রোটোটাইপ বা পরিকল্পনা ছাড়া এক ধাপ করে চলা ভবিষ্যৎ উন্নয়নে গুরুতর সমস্যা করে। প্রোটোটাইপ ডিজাইন আসলে পণ্যের যুক্তি সাজানোর প্রক্রিয়া।

এখানে কিছু প্রোটোটাইপিং টুল। এখন সবচেয়ে বেশি ব্যবহার করি MockingBot।

3. প্রকল্প ব্যবস্থাপনা

স্বাধীনভাবে iOS অ্যাপ তৈরি ও প্রকাশের পর গুরুতর সমস্যা বুঝলাম: প্রকল্প ব্যবস্থাপনার কোনো ধারণাই ছিল না। সময় পেলে বা মনে পড়লে কাজ করতাম, আলসেমি লাগলে কিছুই করতাম না।

নিজের পণ্য, নিজের ডিজাইন ও উন্নয়ন। MVP-তে সম্ভবত অর্থপ্রদানকারী ব্যবহারকারী ছিল না, তাই তাদের কাছে দায়বদ্ধও মনে হতো না।

এতে প্রকল্প খুব ধীর হয়। দীর্ঘদিন পরিকল্পনাহীন কাজ প্রকল্প মেরেও ফেলতে পারে।

কর্মক্ষেত্রে কয়েক বছর সংস্করণ ব্যবস্থাপনা করে বুঝেছি, ব্যক্তিগত প্রকল্পেও ব্যবস্থাপনার টুল ভালো কাজ করে। পণ্যের পরিষ্কার লক্ষ্য ও যুক্তিসঙ্গত প্রোটোটাইপ হলে কাজ ভাগ করা স্বাভাবিকভাবে আসে।

আমি প্রকল্প ব্যবস্থাপনায় coding.net ব্যবহার করি; সেখানে সোর্স কোডও হোস্ট করা যায়।

মূল প্রকল্প ব্যবস্থাপনা স্ক্রিনশট: আলাদা কাজে ভাগ করা কাজ

কাজকে ঘণ্টায় মাপা এককে ভাগ করুন। এতে পরিচালনা সহজ হয় এবং টেস্ট কেস লিখতেও সুবিধা। এখন কোডের আগে টেস্ট কেস শেষ করাই আমার অভ্যাস। এটি অপরিহার্য।

প্রোটোটাইপ পণ্যের যুক্তি সাজায়; টেস্ট কেস বাস্তবায়নের খুঁটিনাটি সাজায়। পূর্ণ টেস্ট কেস সঠিক ব্যবসায়িক যুক্তি ✅ তৈরিতে পথ দেখায় এবং অনেক ভুল ❌ আটকায়।

4. প্রযুক্তি নির্বাচন

এ পর্যন্ত সবই প্রস্তুতি; উন্নয়ন শুরু হয়নি। মূল সমস্যা হলো একমাত্র ডেভেলপার আমি, অথচ WeChat অফিসিয়াল অ্যাকাউন্ট, মিনি প্রোগ্রাম ও অ্যাপের পূর্ণ ইকোসিস্টেম বানাতে চাই।

মিনি প্রোগ্রাম, iOS ও Android দক্ষতা লাগবে। প্রোগ্রামিং ভাষা শেখা খুব কঠিন নয়, কিন্তু একই ব্যবসায়িক যুক্তি তিনবার তৈরি করলে তিনগুণ পরিশ্রম। এটি স্পষ্টতই বাস্তবসম্মত নয়।

সাধারণত বহু প্ল্যাটফর্মে ওয়েব ব্যবহার করতে পারি, এমনকি অ্যাপ বাদ দিয়ে অফিসিয়াল অ্যাকাউন্ট ও মিনি প্রোগ্রামে মন দিতে পারি। পণ্যের প্রথম দিকে দ্রুত চাহিদা যাচাইয়ের জন্য এটি খুব যুক্তিসঙ্গত।

একটু খুঁজলেই বহু ক্রস-প্ল্যাটফর্ম প্রযুক্তি পাওয়া যায়। তিন প্ল্যাটফর্মে এক কোডবেসে অ্যাপ ও মিনি প্রোগ্রাম বানাতে Uni-App ব্যবহার করা যায়। এটি Vue.js ফ্রন্টএন্ড ফ্রেমওয়ার্ক ব্যবহার করে এবং iOS ও Android-এ Weex সহায়তা দেয়।

ব্যক্তিগত বা ছোট বাণিজ্যিক পণ্যের জন্য যথেষ্ট।

5. ডেটা ব্যবস্থাপনা

মিনি প্রোগ্রাম ও অ্যাপের সমাধান ঠিক হওয়ার পর আরেকটি গুরুত্বপূর্ণ প্রশ্ন: ডেটা থাকবে কোথায়?

টুল হলে অ্যাপের স্থানীয় স্টোরেজই যথেষ্ট। কিন্তু পূর্ণ ব্যবহারকারী ব্যবস্থা-সহ তথ্য প্ল্যাটফর্ম, এমনকি জটিল ব্যবহারকারী-তৈরি কনটেন্ট কমিউনিটি চাইলে?

Uni-App-এর নিজস্ব uniCloud সেবা আছে। JavaScript দিয়ে সার্ভার উন্নয়ন করা যায় এবং মিনি প্রোগ্রাম ও অ্যাপ ডোমেইন ছাড়াই সার্ভার ব্যবহার করতে পারে।

আমি অন্য পথ নিয়েছি: সার্ভারলেস প্ল্যাটফর্ম LeanCloud-এ ডেটা হোস্ট করেছি। মিনি প্রোগ্রাম ও অ্যাপ LeanCloud-এর JavaScript SDK দিয়ে হোস্ট করা ডেটাবেসে যায়।

ডেভেলপমেন্ট স্তরে দৈনিক 30,000টি বিনামূল্যের API অনুরোধ ও SMS সেবা আছে। ব্যবহারকারী ব্যবস্থা, ডেটা আপলোড ও প্ল্যাটফর্ম ডেটা নেওয়ার জন্য যথেষ্ট।

অনুরোধ সীমা ছাড়ালে পণ্যে যথেষ্ট ব্যবহারকারী এসেছে। তখন সেই ট্রাফিকের আয় দিয়ে বাণিজ্যিক ব্যবহার অনুযায়ী মূল্য স্তর চালানো সম্ভব বলে মনে করি।

ডেটা পাওয়ার একটু দুষ্টু উপায়

আবহাওয়া বা তথ্যের অ্যাপ বানাতে চান, কিন্তু আবহাওয়া বা খবরের ডেটা নেই—তখন কী করবেন?

চীনে অনেক API মার্কেটপ্লেস আছে, যেমন:

Alibaba Cloud API Marketplace

Tencent Cloud API Marketplace

Baidu Cloud API Marketplace

Juhe Data

EastApi

এবং আরও।

এসব মার্কেটপ্লেসে অর্থপ্রদত্ত ও বিনামূল্যের API দুইই আছে।

  • পণ্যের ট্রাফিক থেকে ভালো আয়ের উপায় থাকলে অর্থপ্রদত্ত API ভাবুন।

  • না থাকলে বিনামূল্যের সীমা ব্যবহার করুন। কিন্তু পরীক্ষাতেই 100টি অনুরোধ শেষ হতে পারে। তখন?

LeanCloud-এর সার্ভারলেস ডেটাবেস ও API মার্কেটপ্লেস একসঙ্গে ব্যবহার করুন। দৈনিক আবহাওয়ার ক্ষেত্রে আগে ডেটাবেস দেখুন। ডেটা না থাকলে মার্কেটপ্লেস থেকে নিয়ে ডেটাবেসে রাখুন।

100টি অনুরোধেও সব শহর না হলে? বিনামূল্যের মনোভাব ধরে রেখে কয়েকটি প্ল্যাটফর্মে আবেদন করুন।

6. প্রকাশ ও পরিচালনা

এখন মিনি প্রোগ্রাম, অ্যাপ ও সার্ভার তৈরি শেষ। প্রকাশ করব কীভাবে?

মিনি প্রোগ্রাম তুলনামূলক সহজ: WeChat Official Accounts Platform-এ নির্দেশনা মেনে আবেদন করুন।

iOS প্রকাশে অর্থপ্রদত্ত ডেভেলপার অ্যাকাউন্ট লাগে। এটি বাধা, তবে দীর্ঘমেয়াদি পরিচালনায় Apple-এর ডেভেলপার সাইটে আবেদন করার পরামর্শ দিই। এখন আবেদন সহজ: iPhone-এ Developer অ্যাপ ডাউনলোড করে সেখানেই অর্থ দিন।

Android বিতরণে সফটওয়্যার কপিরাইট নিবন্ধন লাগে। সাধারণ আবেদনে 1-2 মাস লাগতে পারে, অথবা তৃতীয়-পক্ষ এজেন্টকে অর্থ দিয়ে করাতে পারেন।

বিনামূল্যের মনোভাব চালিয়ে যাই: অ্যাপ ও মিনি প্রোগ্রামের প্রচারস্থানের ছবি, অডিও ও ভিডিও কোথায় রাখব?

অফিসিয়াল অ্যাকাউন্টের মিডিয়া লাইব্রেরি এই সমস্যা মেটায়। সেখানে ছবি, অডিও ও ভিডিও রেখে মূল URL নিন; অ্যাপ ও মিনি প্রোগ্রাম সেগুলো ব্যবহার করতে পারে।

7. আয় করা

ট্রাফিক থেকে আয়ের সহজ উপায় বিজ্ঞাপন।

তবে প্রকাশকদের জন্য প্ল্যাটফর্মের যোগ্যতা বাড়ছে, ফলে স্বাধীন ডেভেলপারের বিজ্ঞাপন সংযোগ কঠিন।

  • Uni-App এক ক্লিকে সংযোগ দেয়; তার নথি দেখুন।

  • অফিসিয়াল অ্যাকাউন্টে পাঠক তৈরি হলে লেখার ভেতর বিজ্ঞাপন চালু করা যায়।

  • মিনি প্রোগ্রামে 1,000 জন স্বতন্ত্র দর্শক হলে প্রকাশক আয় চালু করা যায়।

8. শেষ কথা

শুরুতে বলা WeChat অফিসিয়াল অ্যাকাউন্ট, মিনি প্রোগ্রাম ও অ্যাপের ইকোসিস্টেম এভাবে পূর্ণ হলো।

এই ধাপগুলো অনুসরণ করে তিনটি পণ্যে প্রক্রিয়াটি করেছি। কোড স্ক্যান করে চেষ্টা করুন:

মূল ঐতিহাসিক পণ্যের QR কোড; উপলভ্যতা বদলে থাকতে পারে