লেখক: Neil Lock

  • Page Builder Sandwich কীভাবে কাজ করে

    How-Page-Builder-Sandwich-Worksএই নিবন্ধটিতে পেজ বিল্ডার স্যান্ডউইচ কীভাবে কাজ করে তার একটি সংক্ষিপ্ত রূপরেখা তুলে ধরা হবে, এবং যারা আমাদের পেজ বিল্ডারটি ওয়ার্ডপ্রেসের বিভিন্ন বিষয়ের সাথে কীভাবে সমন্বিত হয় তা জানতে আগ্রহী তাদের জন্য এটি একটি প্রাথমিক নির্দেশিকা হিসেবে তৈরি করা হয়েছে। আমি পেজ বিল্ডার স্যান্ডউইচের একক বৈশিষ্ট্যগুলো নিয়ে বিস্তারিত আলোচনা করব না; আপনি যদি সেগুলো চান, তবে আমাদের ভিডিও পেজে চলে যান যেখানে আমরা সংক্ষিপ্ত স্ক্রিনকাস্টের মাধ্যমে প্রতিটি বৈশিষ্ট্য আলাদাভাবে প্রদর্শন করেছি।

    পেজ বিল্ডার স্যান্ডউইচ অন্যান্য পেজ বিল্ডার থেকে কীভাবে আলাদা তা যদি জানতে চান, তবে আমাদের How Page Builder Sandwich Is Different from the Rest.

    Where is the page builder?

    এটি কোথায় থাকে? এবং এটি দিয়ে আমি কী সম্পাদনা করতে পারি?

    অন্যান্য অনেক পেজ বিল্ডারের মতো না হয়ে, পেজ বিল্ডার স্যান্ডউইচ আপনার ওয়েবসাইটের ফ্রন্ট-এন্ডে অবস্থান করে। আপনি যদি ব্যাক-এন্ডে থাকেন, তবে আমরা কনটেন্ট এডিটর বোতামগুলোর পাশাপাশি একটি “Frontend” বোতাম সরবরাহ করেছি যা আপনাকে আপনার পেজের ফ্রন্ট-এন্ডে নিয়ে যাবে।

    পেজ বিল্ডার স্যান্ডউইচ আপনাকে আপনার পোস্ট, পেজ এবং কাস্টম পোস্ট টাইপের বিষয়বস্তু সম্পাদনা করার সুবিধা দেয়। তবে এটি আপনার সাইটের সামগ্রিক ফ্রন্টপেজ ব্লগ পোস্ট এবং অন্যান্য নন-সিঙ্গেল এরিয়া সরাসরি সম্পাদনা করার অনুমতি দেয় না। বিষয়টি এভাবে ভেবে দেখুন: আপনি যা সম্পাদনা করতে চান তার যদি ব্যাক-এন্ডে একটি কনটেন্ট এডিটর থাকে (যেমন “New Post” এবং “New Page”), তবে পেজ বিল্ডার স্যান্ডউইচ ব্যবহার করা যেতে পারে। আপনি আপনার একক পেজ এবং ব্লগ পোস্ট সম্পাদনা করতে পারেন, এবং উদাহরণস্বরূপ আপনার যদি এমন কোনো প্লাগইন থাকে যা রেস্তোরাঁর মেনু বা পোর্টফোলিও আইটেম যুক্ত করে, তবে আপনি সেগুলোও সম্পাদনা করতে পারবেন।

    ফ্রন্ট-এন্ডে থাকাকালীন, আমরা আপনার অ্যাডমিনবারে একটি নীল রঙের “Edit with Page Builder Sandwich” বোতাম রেখেছি। আপনার পেজ সম্পাদনা শুরু করতে কেবল সেটিতে ক্লিক করুন।

    সরাসরি কনটেন্ট সম্পাদনা

    পেজ বিল্ডার স্যান্ডউইচের মাধ্যমে, আমরা কনটেন্ট সম্পাদনাকে যতটা সম্ভব সহজ ও ঝামেলামুক্ত করেছি। কনটেন্ট সম্পাদনা করা একদম সহজ ও সাবলীল—শুধু ক্লিক করুন এবং লিখুন। এটি এতটাই সহজ।

    The inspector

    পরিচিতি: ইন্সপেক্টর

    আমরা লক্ষ্য করেছি যে অনেক পেজ বিল্ডারে প্রচুর পপআপ থাকে। ব্যক্তিগতভাবে আমি পপআপ পছন্দ করি না, কারণ এগুলো মনোযোগ ব্যাহত করে এবং মূলত আপনাকে বলে “আরে, আপনি যা করছেন তা থামান যতক্ষণ না আপনি প্রথমে এই ক্ষেত্রগুলো পূরণ করছেন”। এগুলো একটি মসৃণ সম্পাদনার অভিজ্ঞতার স্বাভাবিক প্রবাহকে নষ্ট করে দেয়। এই কারণে, আমরা সামগ্রিকভাবে পপআপের ব্যবহার কমিয়ে এনেছি এবং এর পরিবর্তে তৈরি করেছি ইন্সপেক্টর।

    ইন্সপেক্টর হলো একটি সাইডবার-জাতীয় অংশ যাতে আপনার প্রয়োজনীয় সমস্ত ফরম্যাটিং এবং লেআউট টুল রয়েছে। ইন্সপেক্টরটিকে আপনার স্ক্রিনের বাম বা ডান দিকে সংযুক্ত (ডক) করা যেতে পারে যাতে আপনি যা সম্পাদনা করছেন তা সহজেই দেখতে পান।

    ইন্সপেক্টর থেকে আপনি বিভিন্ন টেক্সট প্রোপার্টি যেমন হেডিং, ফন্ট সাইজ, বোল্ড, ইটালিক, টেক্সটের রঙ এবং আরও অনেক কিছু সমন্বয় করতে পারেন। এগুলো ছাড়াও, এটি আপনাকে ছবি যুক্ত করতে এবং রো বা কলামযুক্ত কনটেন্ট তৈরি করার সুযোগ দেয়। এটি আরও উন্নত সম্পাদনা করতে সক্ষম, যেমন আলদা রোগুলোকে সম্পূর্ণ-পৃষ্ঠার প্রস্থের রো-তে রূপান্তর করা, রো ও কলামের ব্যাকগ্রাউন্ড রঙ, কনটেন্টের উল্লম্ব অ্যালাইনমেন্ট, সেইসাথে মার্জিন ও ব্যাকগ্রাউন্ড নিয়ন্ত্রণ করা। এটি অত্যন্ত শক্তিশালী এবং আপনি বেশিরভাগ সময়েই নিজেকে এটি ব্যবহার করতে দেখবেন।

    ওয়ার্ডপ্রেস থিমের সাথে সমন্বয়

    পেজ বিল্ডার স্যান্ডউইচে প্রাকৃতিকভাবে নিজস্ব প্রায় কোনো স্টাইলিং অন্তর্ভুক্ত থাকে না। আপনি যখন আপনার কনটেন্ট সম্পাদনা করেন, তখন যে শৈলী বা স্টাইল আপনি দেখতে পান তা মূলত আপনার থিমের ওপর ভিত্তি করে প্রদর্শিত হয়।

    শর্টকোডের সাথে সমন্বয়

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

    সুবিধার জন্য, আপনি ইন্সপেক্টর ব্যবহার করে আপনার শর্টকোডগুলো সম্পাদনা করতে পারবেন। আপনি যদি আরও নিয়ন্ত্রণ চান, তবে শর্টকোডগুলোকে তাদের মূল (raw) আকারে সম্পাদনা করতে সেগুলোতে ডাবল-ক্লিক করতে পারেন। এছাড়াও, আপনার ওয়েবসাইটে উপলব্ধ সমস্ত শর্টকোড ইন্সপেক্টরে তালিকাভুক্ত থাকে যাতে সহজেই সেগুলো কনটেন্টে যুক্ত করা যায়।

    No bloat

    ওয়েবসাইটের ধীরগতি বা ব্লোট সম্পর্কে কী?

    ধীরগতির ওয়েবসাইট কে পছন্দ করে? আমরা তো নই-ই, এবং নিশ্চিতভাবেই আপনিও নন। আমরা নিশ্চিত করেছি যে পেজ বিল্ডার স্যান্ডউইচ আপনার ওয়েবসাইটের পারফরম্যান্সে প্রায় শূন্য প্রভাব ফেলে। লগ আউট থাকা অবস্থায়, খুব কম করে হলেও, শুধুমাত্র রো এবং কলামের CSS স্টাইলগুলো এঙ্কু করা হয়, পাশাপাশি আপনার ব্যবহৃত শর্টকোডগুলোর জন্য প্রয়োজনীয় JS ও CSS স্ক্রিপ্টগুলো এঙ্কু করা হয়।

    ডেভেলপারদের জন্য

    আপনি যদি একজন ডেভেলপার হন এবং আপনার ওয়ার্ডপ্রেস প্লাগইনে শর্টকোড থাকে, তবে পেজ বিল্ডার স্যান্ডউইচ একটি Shortcode API প্রদান করে যাতে আপনি আপনার গ্রাহকদের শর্টকোড সহজে তৈরি এবং পরিবর্তনের জন্য বিভিন্ন ফিল্ড সরবরাহ করতে পারেন।

    আপনি যদি সক্ষমতা আরও বাড়াতে চান বা পেজ বিল্ডার স্যান্ডউইচের কিছু অংশের সাথে সমন্বয় করতে চান, তবে আমাদের বেশ কিছু কার্যকর অ্যাকশন এবং ফিল্টার হুক রয়েছে যা আপনি ব্যবহার করতে পারেন।

  • কেন আমরা EDD থেকে Freemius-এ স্থানান্তরিত হয়েছি

    কেন আমরা EDD থেকে Freemius-এ স্থানান্তরিত হয়েছি

    When Page Builder Sandwich was launched in 2016, we were using Easy Digital Downloads. In 2017, we moved to Freemius. Here’s why we switched:

    ইডিডি (EDD) কী এবং কেন আমরা এটি বেছে নিয়েছিলাম?

    ইজি ডিজিটাল ডাউনলোডস (EDD) হলো ওয়ার্ডপ্রেসের জন্য একটি জনপ্রিয় সেলফ-হোস্টেড ইকমার্স / উকমার্স বিকল্প। প্রাথমিকভাবে ইডিডি ব্যবহার করে ওয়ার্ডপ্রেস পণ্য সরাসরি বিক্রি করা বেশ কঠিন, তবে এর সফটওয়্যার লাইসেন্সিং এক্সটেনশন প্লাগইন বিক্রির জন্য এটিকে নিখুঁত করে তোলে। এই এক্সটেনশনটি লাইসেন্স কি তৈরি এবং যাচাইকরণের কাজও পরিচালনা করত।

    ইডিডি ভালো কাজ করার আরেকটি কারণ ছিল, এটি গ্রাহকদের সরাসরি ওয়েবসাইট থেকে আমাদের পণ্য কেনার সুযোগ দিত এবং পাশাপাশি তাদের নিজস্ব একটি অ্যাকাউন্ট পেজ সরবরাহ করত যেখানে তারা লগইন করে তাদের কেনাকাটার ইতিহাস দেখতে পারতেন।

    Since it worked well, and since we’re a big fan of Pippin Williamson, this was Sandwich’s first option.

    প্রিমিয়াসের সাথে তুলনায় এটি কীভাবে কাজ করে, এবং আমরা কখন পরিবর্তন করেছিলাম?

    ২০১৬ সালে, প্রিমিয়াসের প্রধান ডেভেলপার ও সহ-প্রতিষ্ঠাতা ভোভা ফেল্ডম্যান আমাদের প্রিমিয়াসের একটি সংক্ষিপ্ত বিবরণ ইমেল করে ব্যাখ্যা করেছিলেন যে এটি কেবল একটি ইকমার্স সমাধানের চেয়েও বেশি কিছু — এটি অ্যানালিটিক্স ও ইনসাইটস সমাধান, একটি মার্কেটিং অটোমেশন টুল এবং বিল্ট-ইন সাপোর্ট টুল-এর মতো অন্যান্য সুবিধা প্রদান করে যাতে গ্রাহকরা সরাসরি ওয়ার্ডপ্রেস ড্যাশবোর্ড থেকেই আপনার সাথে যোগাযোগ করতে পারেন।

    শুরুতে, আমরা কেবল ‘Freemius Insights’ — প্রিমিয়াসের অন্যতম একটি ফিচার — ব্যবহার করতাম, কারণ আমরা অ্যানালিটিক্স সম্পর্কে আগ্রহী ছিলাম। সেই সময় মানুষ কেন আমাদের প্লাগইন আনইনস্টল করছিল তার সাধারণ কারণগুলো বুঝতে এটি আমাদের সত্যিই সাহায্য করেছিল।

    গ্রাহকদের জন্য দ্রুত সমীক্ষার মাধ্যমে এটি আমাদের আরও ডেটা-ভিত্তিক সিদ্ধান্ত নিতেও সাহায্য করেছে। উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারী আমাদের প্লাগইন আনইনস্টল করতে যেতেন, তবে একটি সংক্ষিপ্ত প্রতিক্রিয়া ফর্ম পপ আপ হতো এবং তারা কেন আনইনস্টল করার সিদ্ধান্ত নিয়েছেন তা জিজ্ঞাসা করত। এই প্রতিক্রিয়াগুলো আমাদের গ্রাহকদের চাহিদা বুঝতে সাহায্য করেছিল।

    এই প্রক্রিয়ায় আমরা জানতে পেরেছিলাম যে ব্যবহারকারীরা আনইনস্টল করছিলেন কারণ তারা সক্রিয় করার পর কী করতে হবে তা জানতেন না। আনইনস্টলের হার কমাতে আমরা কেবল একটি ওয়েলকাম স্ক্রিন এবং টিউটোরিয়াল ভিডিও যুক্ত করেছি। অত্যন্ত সহজ।

    অ্যানালিটিক্স ছাড়াও, প্রিমিয়াস প্ল্যাটফর্মটি এমনভাবে তৈরি করা হয়েছে যাতে আপনি আপনার ওয়ার্ডপ্রেস পণ্যগুলো আরও কার্যকরভাবে বিক্রির জন্য এটি সহজেই ব্যবহার করতে পারেন!

    ভালো-মন্দ বিচার করার পর, ২০১৭ সালের জানুয়ারিতে আমরা প্রিমিয়াসে স্থানান্তরিত হই। এর কারণগুলো নিচে দেওয়া হলো:

    প্রিমিয়াস গ্রাহকদের সরাসরি তাদের ওয়ার্ডপ্রেস ড্যাশবোর্ড থেকেই আপনার পণ্য কেনার সুযোগ দেয়

    Instead of being redirected to an external website, Freemius allows customers to purchase straight from their WordPress Dashboard. This made huge impact on sales of course! Generally, the fewer things the user has to do to purchase something, the more likely it is that they actually make the purchase.

    ইডিডি-র ক্ষেত্রে, স্যান্ডউইচে আগ্রহী ব্যক্তিদের লাইসেন্স কি কেনার জন্য তাদের পেজ তৈরির অভিজ্ঞতা ছেড়ে অন্য একটি বাহ্যিক ওয়েবসাইটে যেতে হতো। অবশেষে কেনাকাটা সম্পন্ন করার আগে তাদের বেশ কয়েকটি ক্লিক — এবং আরও অনেক বিভ্রান্তির মধ্য দিয়ে যেতে হতো।

    বিপরীতে, প্রিমিয়াসের মাধ্যমে গ্রাহকরা যখন তারা স্যান্ডউইচ ব্যবহার করে দেখছেন ঠিক তখনই সরাসরি তাদের ওয়ার্ডপ্রেস ড্যাশবোর্ড থেকেই কেনাকাটা করতে পারেন — কেনার জন্য অন্য কোনো সাইটে যাওয়ার প্রয়োজন হয় না।

    পুরো বিষয়টির এই সুবিধা গ্রাহকদের জন্য কেনাকাটাকে দশ গুণ মসৃণ এবং সহজ করে তুলেছে, যার ফলে বিক্রি উল্লেখযোগ্যভাবে বৃদ্ধি পেয়েছে।

    ডেভেলপাররাও আপনার সাফল্যের সাথে গভীরভাবে জড়িত

    প্রিমিয়াস ব্যবহার করে আপনার পণ্য বিক্রি করা সম্পূর্ণ বিনামূল্যে নয়। প্রতিটি বিক্রির জন্য, তারা আপনার আয়ের একটি ছোট অংশ গ্রহণ করে, যা পেমেন্ট এবং প্রসেসিং ফি বাবদ যায়। এটাই তাদের ব্যবসায়িক মডেল।

    তবে এখানে লক্ষ্য করার মতো গুরুত্বপূর্ণ বিষয় হলো যে তাদের ব্যবসায়িক মডেল আপনার ওয়ার্ডপ্রেস পণ্যের সাফল্যকে ঘিরেই আবর্তিত হয়।

    ভোভা এবং তার টিম খুবই সহযোগিতাপূর্ণ। কীভাবে আরও বেশি আয় করা যায়, কীভাবে প্লাগইন উন্নত করা যায় এবং কীভাবে প্রিমিয়াসকে নিজের সুবিধার্থে ব্যবহার করা যায় সে সম্পর্কে তারা আমাদের বিভিন্ন পরামর্শ ও কৌশল দিয়েছিলেন। তথ্যের ব্যাপারে তাদের এই উদারতা স্যান্ডউইচের বৃদ্ধিতে অবদান রেখেছে।

    উপসংহার: আপনি যদি ওয়ার্ডপ্রেস পণ্যের একজন নির্মাতা হন যিনি আয় করতে চান, তবে প্রিমিয়াসই সেরা সমাধান।

    পেজ বিল্ডার স্যান্ডউইচের লক্ষ্য হলো পেজ তৈরির মাধ্যমে স্বজ্ঞাততা এবং ব্যবহারকারীর অভিজ্ঞতা উন্নত করা। প্রিমিয়াসও ঠিক এই কাজটিই করে: এটি ক্রেতা এবং বিক্রেতা উভয়ের জন্যই অভিজ্ঞতাকে কার্যকরভাবে মসৃণ করে তোলে।

    ২০১৭ সালে প্রিমিয়াসে স্থানান্তরিত হওয়ার পর থেকে আমাদের গ্রাহকরা আরও সন্তুষ্ট, আনইনস্টলের হার কমেছে এবং সামগ্রিকভাবে বিক্রি বেড়েছে। আপনি যদি আপনার ওয়ার্ডপ্রেস প্লাগইন বা থিম থেকে আয় করতে চান, তবে প্রিমিয়াস নিঃসন্দেহে বেছে নেওয়ার মতো একটি প্ল্যাটফর্ম।

    এর ফিচারগুলো প্রতিযোগীদের তুলনায় অনেক উন্নত। এটি উন্নতির জন্য আরও বিজ্ঞ সিদ্ধান্ত নিতে আমাদের সাহায্য করেছে। তাদের টিম অসাধারণ সাপোর্ট প্রদান করে। আপনি যদি ওয়ার্ডপ্রেস পণ্যের নির্মাতা হন, আমরা আশা করি প্রিমিয়াসের সাথে আমরা যে ইতিবাচক প্রভাব পেয়েছি আপনিও তা অনুভব করবেন।

  • আমরা খুব শীঘ্রই বড় কিছু প্রকাশ করতে যাচ্ছি।

    In a few short months, we’ll be relaunching as Frontly Builder.

    এই মুহূর্তে, এটি এখনও ব্যাপক উন্নয়নের অধীনে রয়েছে। তবুও, আমরা কী করছি তা আপনাদের দেখানোর জন্য আমরা ভীষণভাবে রোমাঞ্চিত। এখানে, আমরা আলোচনা করব কেন আমরা এই পরিবর্তন করছি, কীভাবে Frontly PBS থেকে আলাদা হতে চলেছে এবং আপনার কী কী বিষয় লক্ষ্য রাখা প্রয়োজন।

    Page Builder Sandwich থেকে Frontly Builder-এ

    Before the idea of Sandwich, we noticed a little pattern with page builders everywhere: A lot of them were difficult to use.

    For example, some of these builders would have you go through numerous pop-ups and other settings if you want to add something as simple as an image, a row, a button.

    And if you wanted to change a column’s settings, clicking on the edit button takes you to yet another pop-up that requires you to input settings like size and margins through dropdown options that aren’t very flexible.

    It was frustrating because we knew that page builders should exist to make things easier for users, not the other way around.

    Other wordpress page builders
    Other WordPress Page Builders

    This is how we came up with Page Builder Sandwich.

    We wanted to introduce a builder that was going to maximize users’ experience when creating webpages, allowing them to create awesome things the fast and easy way.

    We received lots of great feedback that allowed Sandwich to evolve. And the more our audience grew, the more suggestions we received on how we could further improve the plugin.

    We were in a state of constant development, and we loved it.

    Page Builder Sandwich has true front-end power, and so will Frontly Builder.

    আসল ফ্রন্টএন্ডে চালিত হওয়ার অর্থকে নতুনভাবে সংজ্ঞায়িত করা

    Sandwich-এর বিবর্তন ছিল অবিরাম।

    Apart from the feedback (both negative— things we could work on; and positive ones— which we knew we had to retain), Sandwich’s capacity to grow increased, too. We kept finding more and more ideas and solutions to further improve PBS.

    And the more wants and needs from PBS arose, the more our code’s main foundation got tweaked.

    আপনার সমস্ত প্রিয় টপিংসহ একটি আসল স্যান্ডউইচের কথা কল্পনা করুন।

    অবশ্যই, এটির স্বাদ দুর্দান্ত হবে, তবে এটি আপনার মুখে কীভাবে আঁটবে? কীভাবে এটি তার মূল উদ্দেশ্য পূরণ করবে— যা হলো খাওয়া?

    This is kind of what happened with PBS. We realized that so much more could be done with it with an even more efficient, stronger foundation. That we could take it further.

    যেমনটি আমরা উল্লেখ করেছি, Page Builder Sandwich ক্রমাগত বিবর্তনের মধ্য দিয়ে যাচ্ছে।

    Frontly is the next step to that evolution.

    You’ll still get an awesome support team, theme and plugin compatibility, and more.

    Page Builder Sandwich-এর জন্য এটি কোনো বিদায় নয়।

    It’s a hello to Frontly.

    So what makes Frontly different from Page Builder Sandwich?

    We’ve been working really hard to maximize Frontly’s development. The goal now is to make it an insanely better version of PBS — to embody what it means to operate on true front-end.

    Right now, we’re focusing on further improving Frontly’s UX and UI. We’ve worked on giving it a smoother look, a more user-friendly experience, and features that’ll let you build professional-looking websites in even less effort and less time.

    Questions on Frontly?

    We have a short FAQ post you can check out. Add a comment below so we can add your questions to our list!

    এটি খুব শীঘ্রই আসছে।

    While we’re crazy excited to show you guys what we’ve come up with, we wanna make sure everything is just right for you. So leave us your email to get first dibs on updates, tips and trick, and big promos on the release date.

    We are relaunching as Frontly Builder.

    Leave your email so you don’t miss out.

     
  • ভালো গ্রাহক সেবা প্রদানের গোপন রহস্য

    প্রতিদিন সকালে কাজে যাওয়ার পথে, একজন বারিস্তা আছেন যিনি কল্পনাতীত সবচেয়ে বাজে ভাবলেশহীন মুখে আমার হাতে কফি তুলে দেন। এটি আমাদের দুজনের জন্যই একটি দৈনন্দিন রীতি হয়ে দাঁড়িয়েছে।

    এবং যদি এই নির্দিষ্ট কফির দোকানটি অফিসে যাওয়ার পথে সুবিধাজনক স্থানে না থাকত, তবে হয়তো আমি অনেক আগেই আমার ক্যাফিনের প্রিয় ঠিকানা বদলে ফেলতাম।

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

    কিন্তু যেহেতু ই-মেইল এবং লাইভ চ্যাটে বার্তা আদান-প্রদানের সময় আপনি ভাবলেশহীন মুখ দেখতে পান না, তাই এদের শনাক্ত করা একটু কম স্পষ্ট। তবে বিশ্বাস করুন, তারা বিদ্যমান।

    হ্যাঁ, আপনার ব্যবসার বৃদ্ধির জন্য ভালো গ্রাহক সেবা অত্যন্ত গুরুত্বপূর্ণ। কিন্তু কেবল কাস্টমার সাপোর্ট থাকাই যথেষ্ট নয়।

    আপনাকে ভালো সেবা প্রদান করতে হবে (যদি চমৎকার নাও হয়) যা আপনার গ্রাহকদের গুরুত্বপূর্ণ বোধ করাবে, কারণ তারা সত্যিই গুরুত্বপূর্ণ। সর্বোপরি, তাদের কারণেই আপনার ব্যবসার অস্তিত্ব রয়েছে।

    তবে, সবাই এটা বোঝেন না যে কেবল মান ছাড়াই কাস্টমার সার্ভিস প্রদান করাই যথেষ্ট নয়।

    প্রকৃতপক্ষে, কোম্পানিগুলোর পেছনে সাপোর্ট টিম থাকাটা স্বাভাবিক বলে মনে হলেও, সাম্প্রতিক পরিসংখ্যান দেখায় যে ৬৮% গ্রাহক একটি কোম্পানি ছেড়ে চলে যান কারণ তারা মনে করেন না যে কোম্পানিটি তাদের বিষয়ে যত্নশীল (যেখানে তাদের যত্নশীল হওয়া উচিত ছিল)।

    কিন্তু প্রকৃতপক্ষে কীসের ভিত্তিতে ভালো কাস্টমার সাপোর্ট নিশ্চিত হয় এবং আপনি কীভাবে তা বজায় রাখবেন?

    একজন সহকর্মী সাপোর্ট স্পেশালিস্ট হিসেবে আরেকজনের উদ্দেশ্যে, আপনার গ্রাহকদের—এবং সেই সূত্রে আপনার ব্যবসাকে—খুশি রাখার জন্য কিছু গুরুত্বপূর্ণ বিষয় এখানে তুলে ধরা হলো।

    1. নেতিবাচক মতামতের সদ্ব্যবহার করুন

    প্রযুক্তি শিল্পেই হোক বা অন্য কোথাও, আপনি কোনো না কোনোভাবে আপনার পণ্য সম্পর্কে সর্বদাই মতামত পাবেন। তবে খেয়াল রাখবেন: এর সবগুলোই আপনার শুনতে ভালো লাগার মতো হবে না।

    এবং আপনাকে সে জন্য প্রস্তুত থাকতে হবে।

    তবে প্রস্তুতির চেয়েও বেশি যা করা প্রয়োজন তা হলো নেতিবাচক মতামতকে গ্রহণ করা এবং তার সদ্ব্যবহার করা।

    আজ হোক বা কাল, আপনার কাছে অভিযোগ, নতুন ফিচারের অনুরোধ এবং অসন্তোষমূলক মন্তব্যের বন্যা বয়ে যাবে।

    সেগুলো গুরুত্বের সাথে নোট করে রাখুন।

    আপনার সামনে আসা যে কোনো মন্তব্য—ইতিবাচক বা নেতিবাচক যাই হোক না কেন—মনোযোগ দিয়ে শোনা এবং সে ব্যাপারে খোলামেলা হওয়া অত্যন্ত গুরুত্বপূর্ণ। এই মন্তব্যগুলো নির্দেশ করে যে আপনার পণ্য বা সেবায় কীসের ঘাটতি রয়েছে, যা আপনাকে আপনার দর্শক বা বাজারের চাহিদা পূরণ করার সুযোগ দেয়।

    উদাহরণস্বরূপ, যদি আপনি আপনার ইউজার ইন্টারফেসে নেভিগেট করা কঠিন বলে প্রচুর অভিযোগ পান, তবে এর অর্থ হলো আপনাকে আপনার ইউজার ইন্টারফেস পরিবর্তন করতে হবে।

    যদি এক মাসের মধ্যে এটি তৃতীয়বার হয় যে আপনি আপনার পণ্যের দুর্বল কার্যক্ষমতা সম্পর্কে অভিযোগ পেয়েছেন, তবে সম্ভবত আপনার টিমের সাথে একত্রিত হওয়া এবং উল্লিখিত পারফরম্যান্স সমস্যাটি কীভাবে সমাধান করা যায় তা অগ্রাধিকার দেওয়া একটি ভালো সিদ্ধান্ত হবে।

    অন্য কথায়, নেতিবাচক প্রতিক্রিয়া ভালো। এগুলো আপনার পণ্যকে আরও উন্নত করার সুযোগ; গ্রাহকদের অসন্তোষ থেকে অনুপ্রেরণা নেওয়ার সুযোগ। এটি আপনার ব্যবসা এবং আপনার পণ্যকে আরও এগিয়ে নিতে সাহায্য করবে, এবং এটি যত বেশি ঘটবে, আপনি এবং আপনার গ্রাহক উভয়েই তত বেশি খুশি হবেন।

    2. তাদের জানতে দিন যে আপনিও একজন মানুষ

    একটি বিষয় যা আমাকে সত্যিই বিরক্ত করে তা হলো অনমনীয় ধরনের ই-মেইল পাওয়া যা স্বয়ংক্রিয়ভাবে তৈরি হওয়া উত্তরের মতো মনে হয়।

    বিশাল কোম্পানিগুলো সাধারণত প্রকৃত স্বয়ংক্রিয় বার্তা এবং বটের ওপর নির্ভর করে, কিন্তু এর কারণ হলো বাজারে তাদের ব্র্যান্ড ইতিমধ্যেই সুপ্রতিষ্ঠিত এবং বিশ্বস্ত।

    এখন, আপনি যদি আমাদের মতো হন, যাদের গ্রাহক সেবা দেওয়ার জন্য রক্ত-মাংসের মানুষ রয়েছে, তবে আপনার গ্রাহকদের এটা জানতে দেওয়া গুরুত্বপূর্ণ যে আপনিও একজন মানুষ—তারা আপনার কাছে পৌঁছাতে পারে, সাহায্য চাইতে পারে, এবং এমন একটি আন্তরিক উত্তর পেতে পারে যা কোনো কপি-পেস্ট করা বা আগে থেকে তৈরি করা উত্তরের মতো শোনাবে না।

    ওয়ান-অন-ওয়ান ই-মেইল সাপোর্টের ক্ষেত্রে আমার একটি পরামর্শ হলো, আপনার গ্রাহককে এমন কিছু কখনোই বলবেন না যা আপনি বাস্তব জীবনে বলতেন না। এর মানে হলো “অভিবাদন!” বা “উত্তরে বিলম্বের জন্য আমরা বিনীতভাবে ক্ষমাপ্রার্থী”-এর মতো বাক্যগুলো বাদ দেওয়ার সময় এসেছে।

    ব্যক্তিগতভাবে, আমার মনে হয় যে অতিরিক্ত আনুষ্ঠানিকতা এমন একটি ধারণা দেয় যেন আপনি গ্রাহকের প্রতি যত্নশীল হয়ে সাপোর্ট দিচ্ছেন না—আপনি শুধুমাত্র এটি আপনার কাজ এবং আপনাকে দিতেই হবে বলেই সাপোর্ট দিচ্ছেন।

    আর এটি একেবারেই অনুচিত।

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

    3. তাদের কখনোই ঝুলিয়ে রাখবেন না

    এটি সম্ভবত খুবই সহজবোধ্য একটি বিষয়।

    কখনোই, কোনোভাবেই আপনার গ্রাহককে তাদের সমস্যার কোনো সমাধান—বা অন্তত একটি তাৎক্ষণিক সমাধান—না দিয়ে ঝুলিয়ে রাখবেন না।

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

    আপনি তখন কী বলবেন?

    “দুঃখিত, আমাদের সেই ফিচারটি নেই। বিদায়।

    শুভেচ্ছা সহ,
    সাপোর্ট”

    না… এভাবে তো একদমই চলবে না।

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

    “আমাদের কাছে আরও রঙ উপলব্ধ হলে আমরা আবার আপনার সাথে যোগাযোগ করব!” এবং পরবর্তীতে কথা অনুযায়ী কাজ করুন।

    4. দ্রুত উত্তর দেওয়া গুরুত্বপূর্ণ- তবে কার্যকর উত্তর দেওয়াও সমান গুরুত্বপূর্ণ

    হ্যাঁ, যত দ্রুত সম্ভব আপনার গ্রাহকদের উত্তর দেওয়া গুরুত্বপূর্ণ। কিন্তু কেবল একটি উত্তর পাঠানোই যথেষ্ট নয়।

    আপনার উত্তরের অর্থপূর্ণ বিষয়বস্তু থাকা উচিত, এবং তা আপনার গ্রাহকদের চলমান সমস্যার সমাধান বা বিকল্প দেওয়া উচিত (পয়েন্ট #3 দেখুন)। একটির সাহায্য ছাড়া অন্যটি ফলপ্রসূ হয় না।

    হ্যাঁ, আপনার গ্রাহকরা তাড়াহুড়োয় আছেন – কিন্তু তাদেরকে একটি দায়সারা উত্তর দেওয়া কোনো উত্তর না দেওয়ার মতোই খারাপ (এবং এটি সম্ভবত আরও খারাপ বার্তা দিতে পারে, কারণ একবার আপনি “send” বোতাম চেপে দিলে আর ফিরে আসার সুযোগ থাকে না)।

    5. যে প্রতিশ্রুতি রাখতে পারবেন না তা দেওয়া থেকে বিরত থাকুন

    “চিন্তা করবেন না। আমরা এক ঘণ্টার মধ্যেই আপনার জন্য এটি ঠিক করে দেব!”

    আপনি যদি এর চেয়ে বেশি সময় নেন, তবে আপনি এবং আপনার কোম্পানি উভয়ের সুনামই নষ্ট হবে।

    যদিও শুরুতে এটি আপনার গ্রাহকদের কাছে আকর্ষণীয় মনে হবে, তবে কথা রাখতে না পারলে তা আরও ক্ষতিকর প্রতিক্রিয়ার সৃষ্টি করতে পারে।

    আপনি যদি জানেন যে সমাধান দিতে আপনার ২৪ ঘণ্টা সময় লাগবে, তবে সৎ থাকুন এবং তাদের সেটাই বলুন। তাড়াহুড়ো করে দেওয়া একটি প্রায় অকেজো পণ্যের চেয়ে একটু সময় নিয়ে তৈরি পুরোপুরি কার্যকর পণ্য পেয়ে তারা বেশি খুশি হবেন।

    উপসংহার

    তাহলে ভালো কাস্টমার সাপোর্ট দেওয়ার গোপন রহস্য কী? এটিকে কখনোই অবমূল্যায়ন করবেন না।

    আপনার গ্রাহকরাই আপনার চালিকাশক্তি এবং তারা অত্যন্ত গুরুত্বপূর্ণ।

    তাদের সাথে সেভাবেই আচরণ করুন।

    এবং পরের বার যখন আপনি ভালো কাস্টমার সাপোর্টে বিনিয়োগ করার বিষয়ে অনীহা প্রকাশ করবেন, তখন নীল প্যাটেল-এর এই কথাগুলো মনে রাখবেন:

    “বুদ্ধিমান ব্যবসায়ী মালিকরা জানেন যে প্রতিযোগী বা অন্য যেকোনো কারণেই হোক না কেন, প্রতিটি গ্রাহক হারানোর ফলে প্রতি বছর তাদের গড়ে ২৮৯ ডলার ক্ষতি হয়।

    আর আপনি যদি ভেবে থাকেন যে নতুন গ্রাহক দিয়ে এই ক্ষতির পূরণ করতে পারবেন, তবে আবার ভাবুন। দেখা গেছে যে, একজন বিদ্যমান গ্রাহককে ধরে রাখার চেয়ে একজন নতুন গ্রাহক অর্জন করতে ছয় থেকে সাত গুণ বেশি খরচ হয়।”

  • Frontly Builder: সচরাচর জিজ্ঞাসিত প্রশ্নাবলী

    A few months ago, we announced the launch Frontly Builder, a bigger, better front-end page builder with increased performance and awesome new stuff. Think of it as a new and improved version of Page Builder Sandwich.

    এটি এখনও প্রক্রিয়াধীন রয়েছে, তবে এটি খুব শীঘ্রই আসছে। ইতিমধ্যে, আমরা নিশ্চিত যে Frontly সম্পর্কে আপনাদের কিছু প্রশ্ন রয়েছে। তাই সবার জন্য এখানে একটি সংক্ষিপ্ত FAQ দেওয়া হলো!

    What will happen to my PBS-run site?/Will I lose everything I’ve built using PBS?/Will the Frontly update destroy my website?

    • No, definitely not! Everything you’ve made using Page Builder Sandwich will remain intact, and nothing will change.

    I purchased Page Builder Sandwich before the Frontly release. What do I do?

    • The only thing you have to do is… nothing. For current PBS users, Frontly will be released as an “update”. You’ll just be upgraded to a “better” version of PBS- Frontly.

    Will I have to repurchase Frontly?

    • No. If you’ve purchased PBS before the Frontly release, you don’t need to purchase anything. As mentioned, everything will be released as an “update” for old users, so you won’t have to lift a finger or shell anything out- we’ve sorted everything out for you guys. ?

    আপাতত এটুকুই! আপনাদের যদি আরও প্রশ্ন থাকে, তবে নিচে আমাদের একটি মন্তব্য করে জানান যাতে আমরা এই FAQ-এর তালিকায় তা যুক্ত করতে পারি।

    আমরা আশা করি আমরা যেমন রোমাঞ্চিত, Frontly নিয়ে আপনারাও ততটাই রোমাঞ্চিত! দেখা হবে সেখানে। ?

    আপডেটগুলো সবার আগে পেতে আমাদের আপনার ইমেল দিন!

  • #PBSUpdate: ফুল পেজ, নিশ-ভিত্তিক টেমপ্লেট

    PBS Version 4.0 has been our biggest update yet, and with its release, we’ve included a new game-changing feature, the Full Page, Niche-Based Templates.

    The Full Page Templates are a set of 10 professionally designed, niche-based templates. They’re ready to use upon downloading PBS, and can be used as is, or may be tweaked to fit your taste.

    Use as a Starting Point for Your Page

    ওয়েবপেজ তৈরির অন্যতম সবচেয়ে কার্যকর উপায় হলো টেমপ্লেটের ব্যবহার। সাইটের ডিজাইন এবং লেআউট সম্পর্কিত সমস্যার দ্রুত সমাধান হিসেবে এগুলো সাধারণত অফার করা হয়, যা ব্যবহারকারীকে বেছে নেওয়ার জন্য বেশ কয়েকটি (সাধারণত বিভিন্ন থিমযুক্ত) বিকল্প প্রদান করে। সংস্করণ ৪.০ আপডেটের সাথে, Page Builder Sandwich অবশেষে তাদের নিজস্ব একটি সেট প্রকাশ করেছে।

    A screenshot of one of our templates, the PBS Farm Template

    The Benefits

    শুরু থেকে আপনার ওয়েবপেজ ডিজাইন করার ঝামেলা লাঘব করতে PBS-এর ফুল পেজ টেমপ্লেটগুলো বিশেষভাবে তৈরি করা হয়েছে। প্রতিটি টেমপ্লেট একটি নির্দিষ্ট বিষয়ের জন্য ডিজাইন করা হয়েছে, যার প্রতিটিতে একটি নির্দিষ্ট শিল্পের জন্য উপযুক্ত উপাদান রয়েছে। উদাহরণস্বরূপ, হোটেল টেমপ্লেটে গুগল ম্যাপ, যোগাযোগের ফর্ম এবং আপনার হোটেলের সুযোগ-সুবিধা তুলে ধরার জন্য তৈরি করা সেকশনগুলোর মতো বৈশিষ্ট্য অন্তর্ভুক্ত রয়েছে। অন্যদিকে, ফ্যাশন টেমপ্লেটে একটি ক্যারোজেল অন্তর্ভুক্ত রয়েছে যেখানে আপনি নিচে মূল্যসহ আপনার সাম্প্রতিক পণ্যগুলো প্রদর্শন করতে পারেন।

    Tweak, Tweak, Tweak

    যেহেতু টেমপ্লেটগুলো আগে থেকেই ডিজাইন করা, তাই এগুলো সময় এবং সম্পদ উভয়ই সাশ্রয় করে পেজ তৈরির প্রক্রিয়াকে সহজ করে তোলে। কিন্তু আপনার নির্বাচিত টেমপ্লেটে যদি এমন কোনো বৈশিষ্ট্য অন্তর্ভুক্ত না থাকে যা আপনি আপনার পেজে চাইতে পারেন (যেমন আপনি যদি ইন্ডাস্ট্রিয়াল টেমপ্লেটের জন্য একটি ভিডিও ব্যাকগ্রাউন্ড হিরো হেডার চান), তবে চিন্তার কোনো কারণ নেই। আপনি সরাসরি PBS থেকে উপাদানগুলোর প্রোপার্টি সামঞ্জস্য করে আপনার পছন্দ ও চাহিদা অনুযায়ী টেমপ্লেটের ডিজাইন সহজেই পরিবর্তন করে নিতে পারেন।

    A section of the PBS Farm Template with tweaked colors and different photo that may cater to a different niche

    The 10 templates we currently have available (we’ll be releasing more soon!) are themed according to the following common niches and industries:

    1. Hotel Template

    • For hotels, spas, or similar business.
    • Includes video background hero header, carousel testimonials, contact form, Google Map, and more.

    2. Law/Corporate Template

    • For law firms and other corporate businesses.
    • Includes about us section, carousel testimonials, meet the team section, and more.

    3. Fashion Template

    • Use for online clothing stores and other e-commerce sites. Includes featured products carousel, call–to–action buttons, latest blogpost previews, and more.
    • Includes featured products carousel, call–to–action buttons, latest blogpost previews, and more.

    4. Farm Template

    • Ideal for subscription e–commerce sites.
    • Includes promo header, call–to–action buttons, subscription plan sections, and more.

    5. Restaurant Template

    • Perfect for restaurants and other delivery service businesses.
    • Includes hero header with space for delivery numbers, menu section, business hours section, and more.

    6. Concert Template

    • Ideal for concerts and other big events or gatherings.
    • Includes countdown, video background, affiliates section, prices section, subscription button, and more.

    7. Forum Template

    • Use for communities, small organizations, and more.Includes call-to-action buttons, about section, count up, meet the team section, and more.
    • Includes call-to-action buttons, about section, count up, meet the team section, and more.

    8. Portfolio Template

    • For photography or art portfolios, and more.
    • Includes iconified skillset section, gallery, social media buttons, and more.

    9. Industrial Template

    • Use for industrial or manufacturing businesses, and more.
    • Includes hero header with video background, about us/featured product sections, carousel testimonials, and more.

    10. Wedding Template

    • Perfect for weddings and other small intimate events.
    • Includes hero header with video background, photo gallery, RSVP section, Google Map, and more.

    Some samples of PBS’ Full Page Templates: the Law, Forum, and Hotel Templates

    The Future of Full Page Templates

    এই মুহূর্তে আমাদের ১০টি টেমপ্লেট উপলব্ধ থাকলেও, আমরা বর্তমানে আরও তৈরি করার প্রক্রিয়ার মধ্যে রয়েছি। অবশ্যই, আমরা সমস্ত সাধারণ ক্ষেত্র এবং শিল্প অন্তর্ভুক্ত করতে চাই, তবে আপনার যদি কোনো পরামর্শ থাকে, তবে নির্দ্বিধায় আমাদের লিখে জানাতে পারেন।

    সাইট তৈরির শুভেচ্ছা!

  • প্যারালাক্স ইফেক্ট, ভিডিও ব্যাকগ্রাউন্ড এবং কেন বার্নস ইফেক্ট কীভাবে যুক্ত করবেন

    Page Builder Sandwich-এ এমন একটি ফিচার রয়েছে যা আমরা সম্মিলিতভাবে ফ্যান্সি ব্যাকগ্রাউন্ড ইফেক্টস (Fancy Background Effects) বলতে পছন্দ করি। এগুলোর মধ্যে তিনটি রয়েছে: প্যারালাক্স ইফেক্ট, ভিডিও ব্যাকগ্রাউন্ড এবং কেন বার্নস ইফেক্ট।

    What are the different Fancy Background Effects?

    PBS-এর ফ্যান্সি ব্যাকগ্রাউন্ড ইফেক্টস আপনার ওয়েবসাইটকে সেই গতি প্রদান করে যা সাইটের দর্শকদের আকর্ষণ করতে প্রয়োজন। মনোযোগ আকর্ষণ করার জন্য এগুলো একটি নিশ্চিত উপায়, এবং সঠিকভাবে প্রয়োগ করা হলে ওয়েবসাইটের ট্রাফিকের ক্ষেত্রে নজরকাড়া ফলাফল পাওয়া যেতে পারে।

    প্যারালাক্স ইফেক্ট

    আপনার পৃষ্ঠায় প্যারালাক্স ইফেক্ট প্রয়োগ করলে আপনার ব্যাকগ্রাউন্ডে একটি গভীরতার অনুভূতি তৈরি হয়, যা স্ক্রোল করার সময় আপনার সাইটের নির্দিষ্ট উপাদানগুলোকে “পপ আউট” করে তোলে। এখানে প্যারালাক্স ব্যাকগ্রাউন্ড প্রয়োগ করা একটি পৃষ্ঠা এবং এটি ছাড়া একটি পৃষ্ঠার উদাহরণ দেওয়া হলো।

    With Parallax Scrolling

    The background image scrolls at a different rate as the rest of the elements in the page.

    Without Parallax Scrolling

    The elements of the web page – the text, images, buttons, etc – all scroll at the same rate as the background.

    Video Backgrounds

    ভিডিও ব্যাকগ্রাউন্ডগুলো আপনাকে স্থির ছবির পরিবর্তে ব্যাকগ্রাউন্ডে লুপিং ভিডিও রাখার সুযোগ দেয়। PBS-এর ভিডিও ব্যাকগ্রাউন্ডের দারুণ দিকটি হলো নির্দেশিত হলে আপনি কেবল আপনার পছন্দসই YouTube বা Vimeo লিঙ্কটি পেস্ট করতে পারেন, এবং আমরা এটিকে আপনার জন্য একটি ভিডিও ব্যাকগ্রাউন্ডে রূপান্তর করব। এছাড়াও আপনি এর জন্য আপনার নিজস্ব ভিডিও আপলোড করতে পারেন।

    ভিডিও ব্যাকগ্রাউন্ডের কিছু নমুনা যা আপনি দেখতে পারেন:

    The Ken Burns Effect

    Ken Burns, who popularized the Ken Burns effect in film.

    In documentaries, do you ever notice when they show photos that slowly zoom into detail? That’s called the Ken Burns Effect. You can access these effects on Page Builder Sandwich, too.

    How do I add the Fancy Background Effects?

    আপনি নিচের ধাপগুলোর মাধ্যমে সমস্ত ফ্যান্সি ব্যাকগ্রাউন্ড ইফেক্ট খুঁজে পেতে পারেন:

    Step 1: Choose a row you’d like to add an effect on. Click on this row’s settings button (the gear icon on the left). This will open the Properties Inspector.

    Step 2: Once the Properties Inspector pops up, scroll down a bit until you find the option called “Fancy Background Effects”.

    Step 3: Once you’ve found it, you’ll see that you can click a dropdown button and select which background effect you’d like on your row.

    Step 4: Depending on which Fancy Background Effect you choose, you can adjust each effect’s settings. For example, for the Parallax effect, you can adjust its height and position.

    এবং আপনার কাজ শেষ! এর পরে, আপনি আপনার সাইটে আপনার ফ্যান্সি ব্যাকগ্রাউন্ড ইফেক্ট পুরোদমে দৃশ্যমান হতে দেখতে পাবেন।

    Have you used PBS’ Fancy Backgrounds yet?

    অন্য কোনো ব্যাকগ্রাউন্ড ইফেক্ট কি আছে যা আপনি আমাদের ফিচারে যোগ করার পরামর্শ দিতে চান? অথবা এই ইফেক্টগুলোর কোনো একটি সহ আপনার PBS দিয়ে তৈরি সাইটটি আমাদের দেখাতে চান? নিচের মন্তব্য বিভাগে আমাদের জানান!

  • প্যারালাক্স স্ক্রোলিং: এটি কী?

    The parallax scrolling effect is a design technique that’s relatively new in development and web design. Over the past few years since it’s hit the scene though, it’s grown pretty popular in its own right, and with good reason, too.

    প্যারালাক্স স্ক্রোলিংয়ের সংজ্ঞা

    Parallax scrolling is a technique wherein your web page’s background image scrolls at a slower rate compared to the foreground image. It gives the user a unique sense of depth and action while scrolling through a page when used on a website.

    Without Parallax Scrolling

    The elements of the web page – the text, images, buttons, etc – all scroll at the same rate as the background.

    With Parallax Scrolling

    The background image scrolls at a different rate as the rest of the elements in the page.

    ব্যবহারকারীর ওপর প্যারালাক্স স্ক্রোলিংয়ের প্রভাব

    তবে এই কৌশলটি পুরোপুরি নতুন নয়, এবং প্রকৃতপক্ষে ১৯২০-এর দশক থেকেই ঐতিহ্যবাহী অ্যানিমেশনে এটি ব্যবহৃত হয়ে আসছে। এটি সুপার মারিও ব্রাদার্সের মতো অনেক ক্লাসিক ভিডিও গেমেও ব্যবহৃত হয়েছে।

    তবে ওয়েব ডিজাইনের জগতে, নাইকিকে প্রায়শই ২০১১ সালে প্যারালাক্স স্ক্রোলিং ব্যবহারকারী প্রথমদের অন্যতম হিসেবে কৃতিত্ব দেওয়া হয়। তারপর থেকে, “প্যারালাক্স স্ক্রোলিং” (কখনও কখনও “প্যারালাক্স ব্যাকগ্রাউন্ড” বলা হয়) শব্দটি ডিজাইনার এবং ডেভেলপার উভয়ের মাঝেই একটি পরিচিত পরিভাষা হয়ে উঠেছে এবং এর জনপ্রিয়তা ক্রমশ বৃদ্ধি পাচ্ছে।

    Parallax scrolling as used in a version of Super Mario Brothers. Notice how the hills in the background move
    in slightly varying speeds, as compared to Mario and the other characters in the foreground.

    ব্যবহারকারীর জন্য এতে কী রয়েছে

    এই ইফেক্টটির দারুণ দিক হলো এটি ব্যবহারকারীদের আপনার ওয়েবসাইটের সাথে যুক্ত হতে উৎসাহিত করে, যা ব্যবহারকারীর মিথস্ক্রিয়া এবং আকর্ষণ উভয়ই বাড়িয়ে তোলে। এবং, যখন সঠিকভাবে করা হয়, প্যারালাক্স স্ক্রোলিং সবচেয়ে সাধারণ ওয়েবসাইটকেও প্রাণবন্ত করে তুলতে পারে। এটি এমনকি এমন অসাধারণ আখ্যান তৈরি করতে ব্যবহার করা যেতে পারে যা তাৎক্ষণিকভাবে সাইটের সকল দর্শককে আকৃষ্ট করে।

    আপনার কাজ আমাদের সাথে শেয়ার করুন!

    তাহলে আপনারা কী ভাবছেন? আপনারা কি এখনও PBS v4-এর নতুন প্যারালাক্স ব্যাকগ্রাউন্ড ফিচারটি ব্যবহার করেছেন? এটি কি আপনার উপকারে আসছে? নির্দ্বিধায় আপনার কাজের লিঙ্ক আমাদের সাথে শেয়ার করুন, অথবা নিচের মন্তব্য বিভাগে কিছু পরামর্শ দিন।

    সাইট তৈরির শুভেচ্ছা!

  • ২০১৮ সালে ওয়েবসাইট ডিজাইনের ৪টি ভুল যা আপনার এড়িয়ে চলা প্রয়োজন

    If there’s one thing you need to remember when building a website, it’s to never take good design for granted.

    As we’ve mentioned in a previous article, a site visitor’s first impression on your website can make or break you in just a matter of seconds.

    In other words, if they don’t like what they see within that timeframe, chances are they’re going to close their browser windows and direct their attention elsewhere.

    Fortunately, there are a lot of ways to prevent this from happening; one of them is to familiarize yourself with good web design practices. And the good news is you don’t need to be a professional web designer in order to do so.

    Because while it’s true that not everyone has a good eye for design, preventing bad design becomes easier once you know what to avoid.

    সেই কথা মাথায় রেখে, ওয়েব ডিজাইনের এই ৪টি সাধারণ ভুলের কথা অবশ্যই মনে রাখবেন। এইভাবে, যখন আপনি অবশেষে আপনার ওয়েবসাইট তৈরি করা শুরু করবেন, তখন আপনার একটি বিষয় নিয়ে চিন্তা কম থাকবে।

    ভুল #১: ৩টির বেশি ফন্ট ব্যবহার করা

    A rule of thumb when designing websites? Try not to have too much visual elements going on within your space. Having more than 3 fonts on your site design is a surefire way to break this one rule. It’ll also overwhelm your site visitors.

    আপনার ওয়েবসাইটের ফন্ট সর্বোচ্চ ৩টির মধ্যে সীমাবদ্ধ রাখা হলো পেশাদারদের দ্বারা অনুসৃত একটি সাধারণ ডিজাইন রীতি। উপরন্তু, এটি আপনার সাইটের পাঠযোগ্যতা এবং সামঞ্জস্যের মাত্রা বাড়ায়, যা আপনার সাইটের ট্রাফিকের সাফল্যের মূল চাবিকাঠি।

    DON’T DO THIS:

    Don’t use more than 3 fonts and try to avoid “fancy fonts” as much as possible. These tend to make your site look unprofessional and outdated.

    DO THIS:

    Use only 2 fonts, or a maximum of 3 if you have to. Notice how the page below looks clean and sleek, all while keeping readability and consistency all throughout the design.

    Try comparing the differences between this example and the previous one. The example below with only two fonts is a website that your visitors will likely take seriously.  This previous one above with the overwhelming amount of fonts isn’t.

    Mistake #2: Failing to Use White Space

    White space is one of the most important aspects of web design. But what is it?

    Put simply, white space is literally the empty space between elements in a composition.

    In other words, it’s negative space. This pertains to anything on your website that isn’t filled with text, photos, or other design elements.

    Now, the problem arises when website owners want to fill all of the white space in, which is an absolute no-no.

    White space matters because it gives your site visitors and readers some breathing space when going through your site. Just how it was mentioned in the first design mistake to avoid, overwhelming your website with too much design elements is more than enough reason for your site visitors to leave and for your traffic to decrease significantly. It also makes for poorly executed design.

    DON’T DO THIS:

    In the example below, take a look at how the text is nearing the edges of the purple section’s margin. Notice as well how all elements leave almost zero room for white space.

    DO THIS INSTEAD:

    Give your site readers some room to breathe. If adding in long paragraphs is unavoidable, just remember to always take the rules of spacing into account—they’re pretty easy to remember anyway ?.  It will leave your page looking cool, crisp, and professional.

    Mistake #3: Designing Websites With Zero Flow in Your Site’s Content

    It’s important to pay attention as to how  information on your website is presented. Moreover, site content should generally follow a logical flow, taking the site viewer’s intuition into consideration.

    আমরা কী বোঝাতে চেয়েছি তা দেখতে নীচের দুটি উদাহরণ দেখুন।

    DON’T DO THIS:

    Unless you’re a graphic designer by profession, it’s probably not a good idea to experiment with the standard flow of your website’s sections.

    Below, you can see that the site’s design lacks both visual and logical flow; everything is all over the place. You don’t want your audience having a hard time navigating through your site, either. This is another surefire way to do it.

    DO THIS INSTEAD:

    Notice how the sections of the website flow depending on what actions the visitor is most likely to take.

    ডিজাইনটি স্বজ্ঞাত এবং এর একটি যৌক্তিক প্রবাহ রয়েছে: প্রথমত, সংস্থাটি নিজের পরিচয় দেয় এবং দর্শকদের প্রাথমিক বিষয়গুলি সম্পর্কে জানায়; যেমন এটি কী সম্পর্কিত এবং এটি কী করে। দ্বিতীয়ত, এটি বিশ্বাসযোগ্যতা প্রতিষ্ঠার জন্য নির্ভরযোগ্য পরিসংখ্যান যোগ করে। পরিশেষে, ওয়েবসাইটটি দর্শকদের যোগাযোগের নম্বর এবং ইভেন্টগুলির একটি তালিকা প্রদান করে, যা তাদের পদক্ষেপ নিতে উৎসাহিত করে।

    Mistake #4: Trying to Fit in Every Bit of Information Onto Your Website

    যেখানে খালি জায়গা (হোয়াইট স্পেস) থাকা উচিত সেখানে অপ্রয়োজনীয় লেখার স্তূপ যোগ করলে তা আপনার দর্শকদের দূরে সরিয়ে দিতে পারে। মনে রাখবেন শুধুমাত্র গুরুত্বপূর্ণ বিবরণ রাখবেন।

    Studies find that readers only visit 20% of your webpage; everyone else outside that percentage will probably just scroll through your site.

    DON’T DO THIS.

    Don’t overwhelm your visitors with inconsistent, giant walls of text, especially if it means having to sacrifice your website design’s cohesiveness and structure.

    DO THIS INSTEAD:

    Keep your copy short and concise, and take out chunks of unecessary text if you can help it. Only keep vital information that your site visitors absolutely need to know.

    Conclusion

    Website design is important, and can be a huge deciding factor in whether or not you gain site traffic.

    মনে রাখবেন এটিকে সাধারণভাবে নেবেন না। সর্বদা গবেষণার জন্য সময় বরাদ্দ করুন, এবং এই পথে আপনাকে গাইড করার জন্য ডিজাইন বিষয়ক নিবন্ধগুলি দেখুন। আপনি কিছু বুঝে ওঠার আগেই দেখতে পাবেন আপনার সাইটের ট্রাফিক বৃদ্ধি পাচ্ছে। ? শুভকামনা!

    Design in less time!

    Check out how much faster Page Builder Sandwich let you design your web pages.

    Try Live Preview

    This week’s useful resource:

    CANVA has hundreds of resources that you can access on their website. Apart from useful and easy-to-follow design tips, they also have photo editing tools, graphs, and a wide range of useful resources you can use for your creative projects.

    আপনার পরবর্তী ডিজাইন উদ্যোগের জন্য Canva-এর এই দুর্দান্ত কালার গাইডটি দেখুন।

    Canva Design Wiki

    আপনার সৃজনশীলতাকে উন্মোচন করুন।

    ক্যানভা কালার গাইডটি দেখে নিন

  • যেভাবে আমরা আমাদের প্লাগইনের কর্মক্ষমতা ২০০% বৃদ্ধি করেছি

    গত ২ ফেব্রুয়ারি, ২০১৭ তারিখে অ্যান টেলর CodeInWP-তে 12 Things We Need to See From WordPress Page Builders in 2017 + Who Already Gets It Right শীর্ষক নিবন্ধটি লিখেছিলেন। আমরা এখন এক বছরেরও বেশি সময় ধরে পেজ বিল্ডার স্যান্ডউইচ ক্রমাগত উন্নত করে আসছি: আমরা গবেষণা করি, গ্রাহকদের মতামত শুনি, তাই আমরা ভেবেছিলাম পেজ বিল্ডার স্যান্ডউইচ CodeInWP-এর “হু গট ইট রাইট” নিবন্ধে জায়গা করে নেবে। তবে পারফরম্যান্সের সমস্যার কারণে আমরা জায়গা পাইনি। ?

    তাই আমরা অ্যানকে এই বিষয়ে জিজ্ঞাসা করেছিলাম এবং তিনি উত্তর দিয়েছিলেন:

    …আমি ফ্রি সংস্করণটি কিছুটা ব্যবহার করে দেখেছি। এটি অনেক সম্ভাবনাময়: প্রচুর মডিউল, বেশ স্বজ্ঞাত UI, দুর্দান্ত WYSIWYG অভিজ্ঞতা, সবকিছু সহজেই ড্র্যাগ করা যায়। তবে, যখন আমার পৃষ্ঠায় প্রায় ১০টি মডিউল ছিল, তখন কম এডিটিং স্পিডের কারণে এটির সাথে কাজ চালিয়ে যাওয়া কঠিন হয়ে পড়েছিল…

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

    পারফরম্যান্স পরীক্ষা করা

    PBS-এর পারফরম্যান্স যাচাই করার জন্য আমাদের একটি উপায় প্রয়োজন ছিল; যেহেতু PBS মূলত জাভাস্ক্রিপ্টের মাধ্যমে ব্রাউজারে চলে, তাই এই কাজের জন্য Chrome-এর Timeline profiler ছিল সঠিক টুল। টাইমলাইন প্রোফাইলার রানটাইম চলাকালীন একটি ওয়েবপেজে কোন কোন প্রক্রিয়া সম্পন্ন হচ্ছে তা শনাক্ত ও পরিমাপ করতে পারে, যা গতির বাধাগুলি (স্পিড বটলনেক) খুঁজে বের করার জন্য একদম উপযুক্ত।

    আমরা ভেবেছিলাম আমাদের প্রথমে সবচেয়ে সহজ ধাপটি পরীক্ষা করা উচিত – একাধিক এলিমেন্ট এবং রো-এর ওপর দিয়ে মাউস ঘোরানো। সহজ, তাই না? আমরা নিশ্চিত ছিলাম যে এত সহজ একটি বিষয়ে আমরা কোনো পারফরম্যান্স সমস্যায় পড়ব না। দুর্ভাগ্যবশত, আমরা ভুল ছিলাম।

    আমরা রেকর্ড বাটনে ক্লিক করার পর, স্ক্রিনের ওপর প্রায় ২ সেকেন্ড মাউস নাড়াচাড়া করে স্টপ বাটনে ক্লিক করলাম। প্রোফাইলার থেকে প্রাপ্ত টাইমলাইন এখানে দেওয়া হলো:

    দেখুন কাণ্ড! এটি পারফরম্যান্সের নানা ধরনের জটিলতায় একদম ঠাসা!

    গ্রাফটিতে অনেক কিছু ঘটছে, তবে সবচেয়ে স্পষ্ট সমস্যা হলো এতে প্রচুর বেগুনি অংশ রয়েছে (যা হওয়া উচিত নয়)। তার ওপর, এই বেগুনি অংশগুলি দৃশ্যত বেশ চওড়া এবং মনে হচ্ছে সবগুলোই গ্রাফের সর্বোচ্চ চূড়া ছুঁয়েছে। আপনি আরও লক্ষ্য করবেন যে গ্রাফটি সবসময় পূর্ণ রয়েছে এবং বেগুনি অংশগুলি প্রায় কখনোই শূন্যে নেমে আসে না। মনে হচ্ছে ব্রাউজার সবসময় কিছু না কিছু করতে ব্যস্ত এবং প্রায় কখনোই বিশ্রাম নিচ্ছে না।

    কিন্তু এই সমস্ত বেগুনি অংশের আসল অর্থ কী?

    প্রোফাইলারটি সদয়ভাবে আমাদের জানিয়েছিল যে এগুলিকে রিফ্লো (reflows) বলা হয়। গুগল ডেভেলপার সাইট:

    ডকুমেন্টে থাকা উপাদানগুলির অবস্থান এবং জ্যামিতি পুনরায় গণনা করার ওয়েব ব্রাউজার প্রক্রিয়ার নাম হলো রিফ্লো.. রিফ্লো হলো ব্রাউজারে একটি ইউজার-ব্লকিং অপারেশন।

    সুতরাং এর অর্থ হলো PBS-এ মাউস ঘোরালে বিপুল পরিমাণে রিফ্লো শুরু হয়। সবচেয়ে খারাপ বিষয় হলো প্রতিটি রিফ্লো ব্রাউজারকে ক্ষণিকের জন্য থামিয়ে দেয় যাতে এটি তার গণনা শেষ করতে পারে। যত বেশি রিফ্লো, তত বেশি ব্রাউজার পজ, এবং ব্যবহারকারীর অভিজ্ঞতা আরও বেশি ঝাঁকুনিপূর্ণ (janky) হয়ে ওঠে। সহজ কথায়, প্রচুর বেগুনি এলাকা = খারাপ।

    সুতরাং দেখা গেল অ্যান সঠিক ছিলেন: আমাদের সত্যিই একটি বিশাল পারফরম্যান্স সমস্যা রয়েছে, তাই আমাদের টিম অবিলম্বে এটি ঠিক করার কাজে নেমে পড়ল।

    আমাদের রিফ্লো / জ্যাঙ্ক সমস্যার সমাধান করা

    অন্য কিছুর আগে, ঠিক কী কারণে এই রিফ্লো ঘটে তা খুঁজে বের করার জন্য আমাদের কিছু গবেষণা করার প্রয়োজন ছিল। আমরা জানতে পেরেছি যে দৃশ্যত, জাভাস্ক্রিপ্টের অনেক সাধারণ বিষয় ব্রাউজারকে রিফ্লো ঘটাতে প্ররোচিত করতে পারে।

    একটি DOM উপাদানের প্রস্থ, উচ্চতা বা অবস্থান পাওয়ার জন্য আপনি ব্যবহার করতে পারেন এমন প্রায় যেকোনো ফাংশনই রিফ্লো ট্রিগার করতে পারে। পল আইরিশ জাভাস্ক্রিপ্টের এমন সমস্ত প্রপার্টি এবং ফাংশনের একটি বিস্তৃত তালিকা লিখেছেন যা এটি ঘটাতে পারে। খারাপ খবর হলো পেজ বিল্ডার স্যান্ডউইচ এই ধরনের অনেক প্রপার্টি এবং ফাংশন ব্যবহার করে, যার প্রতিটিই রিফ্লো ঘটায়:

    • elem.getBoundingClientRect()
    • window.getComputedStyle()
    • window.scrollY
    • এবং আরও অনেক কিছু…

    সমাধান #১: ব্যয়বহুল রিফ্লো প্রক্রিয়াগুলি ক্যাশ করা

    সবচেয়ে সুস্পষ্ট সমাধান হলো সেই প্রপার্টি এবং ফাংশনগুলি ব্যবহার না করা। তবে, PBS এগুলির ওপর ব্যাপকভাবে নির্ভরশীল এবং এগুলি ছাড়া আমরা কাজ চালাতে পারি না।

    আমাদের কাছে অবশিষ্ট সমাধান ছিল সেই ফাংশনগুলিতে কলের সংখ্যা যতটা সম্ভব কমিয়ে আনা। এখানে কঠিন বিষয় ছিল যে আমরা PBS-এর বিভিন্ন অংশে এই প্রপার্টি এবং ফাংশনগুলি বহুবার ব্যবহার করেছি এবং বেশিরভাগ সময়ই আমরা একই DOM উপাদানে একাধিকবার সেগুলি ব্যবহার করেছি। এটি সমাধান করার জন্য, আমরা প্রতিটি সমস্যাযুক্ত প্রপার্টি/ফাংশনের জন্য আমাদের নিজস্ব ক্যাশিং মেকানিজম তৈরি করেছি।

    উদাহরণস্বরূপ, getBoundingClientRect ফাংশনটি আমাদের একটি DOM উপাদানের বর্তমান top, left, width, height, right, এবং bottom পিক্সেল পরিমাপ প্রদান করে। PBS-এ এলিমেন্ট আউটলাইন কোথায় আঁকতে হবে তার অবস্থান গণনা করার জন্য আমরা এই ফাংশনটি প্রতিনিয়ত ব্যবহার করি। এর জন্য আমরা যে ক্যাশিং ফাংশনটি তৈরি করেছি তা এখানে দেওয়া হলো:

    // Cache: Our client rects are kept here, we can use this to clear them later.
    var elemsWithBoundingRects = [];
    
    window.pbsGetBoundingClientRect = function( element ) {
    
    	// Check if we already got the client rect before.
    	if ( ! element._boundingClientRect ) {
    
    		// If not, get it then store it for future use.
    		element._boundingClientRect = element.getBoundingClientRect();
    		elemsWithBoundingRects.push( element );
    	}
    	return element._boundingClientRect;
    };
    ​

    getBoundingClientRect কল করার পরিবর্তে, আমরা এখন pbsGetBoundingClientRect ব্যবহার করেছি। এখন প্রতিবার ক্লায়েন্ট রেক্ট কোয়েরি করা হলে, আমরা ভবিষ্যতের জন্য সেই মানটি সংরক্ষণ করে রাখি, যার ফলে রিফ্লো ট্রিগারের সংখ্যা সীমিত হয়।

    সংরক্ষিত ক্লায়েন্ট রেক্টগুলি যখন অকার্যকর (invalidated) হয়ে যায়, তখন ক্যাশ মুছে ফেলার জন্য আমাদের একটি উপায়ের প্রয়োজন ছিল। ব্যবহারকারী যখন পৃষ্ঠা স্ক্রোল করেন বা স্ক্রিনে উপাদান যোগ/পরিবর্তন/অপসারণ করেন, তখন সংরক্ষিত ক্লায়েন্ট রেক্টের মান পরিবর্তিত হয়। তাই আমরা একটি ক্যাশ ক্লিয়ারিং ফাংশন তৈরি করেছি যা নতুন ক্লায়েন্ট রেক্ট মানের প্রয়োজন হলেই আমরা কল করতে পারি:

    var clearClientRects = function() {
    	var i;
    	for ( i = 0; i < elemsWithBoundingRects.length; i++ ) {
    		if ( elemsWithBoundingRects[ i ] ) {
    			elemsWithBoundingRects[ i ]._boundingClientRect = null;
    		}
    	}
    	elemsWithBoundingRects = [];
    };​

    আমরা সাধারণত যে অন্যান্য ব্যয়বহুল ফাংশন কলগুলি ব্যবহার করি, সেগুলির জন্যও আমরা একই ক্যাশিং মেকানিজম প্রয়োগ করেছি।

    সমাধান #২: FastDom ব্যবহার করে রিড এবং রাইটগুলি একসাথে গ্রুপ করা

    সমাধান #১ বাস্তবায়নের ফলে PBS-এর পারফরম্যান্স বৃদ্ধি পেয়েছিল, তবে তা যথেষ্ট ছিল না।

    আরও কিছুটা গুগল করে, আমরা ‘লেআউট থ্র্যাশিং’ প্রতিরোধ করার বিষয়ে উইলসন পেজের একটি নিবন্ধ দেখতে পেলাম। উইলসন বলেছেন:

    লেআউট থ্র্যাশিং (রিফ্লো) তখনই ঘটে যখন জাভাস্ক্রিপ্ট তীব্রভাবে DOM-এ একাধিকবার রাইট করে, তারপর রিড করে, যার ফলে ডকুমেন্ট রিফ্লো ঘটে।

    দৃশ্যত, নির্দিষ্ট রিফ্লো-ট্রিগারিং প্রপার্টি এবং ফাংশনগুলিতে আপনার কল সীমিত করাই যথেষ্ট নয়। আপনি যখন DOM-এ একাধিক ধারাবাহিক “reads” এবং “writes” সম্পাদন করেন, তখন এটিও একটি ব্রাউজার রিফ্লো ট্রিগার করে। উইলসনের সাইট থেকে সরাসরি একটি সাধারণ দৃশ্যপট এখানে দেওয়া হলো:

    // Read
    var h1 = element1.clientHeight;
    
    // Write (invalidates layout)
    element1.style.height = (h1 * 2) + 'px';
    
    // Read (triggers reflow)
    var h2 = element2.clientHeight;
    
    // Write (invalidates layout)
    element2.style.height = (h2 * 2) + 'px';
    
    // Read (triggers reflow)
    var h3 = element3.clientHeight;
    
    // Write (invalidates layout)
    element3.style.height = (h3 * 2) + 'px';
    
    // Document reflows at end of frame​

    উপরের উদাহরণটি ৩টি রিফ্লো ট্রিগার করে কারণ একটি রাইটের পর পুরো পৃষ্ঠার মাত্রা (dimensions) বাতিল হয়ে যায়। এর জন্য প্রস্তাবিত সমাধান হলো কোডটিকে পুনর্বিন্যাস করে সমস্ত রিড এবং রাইট একসাথে গুচ্ছবদ্ধ করা যাতে পুরো বিষয়টি কেবল ১টি ব্রাউজার রিফ্লো ট্রিগার করে:

    // Read
    var h1 = element1.clientHeight;
    var h2 = element2.clientHeight;
    var h3 = element3.clientHeight;
    
    // Write (invalidates layout)
    element1.style.height = (h1 * 2) + 'px';
    element2.style.height = (h2 * 2) + 'px';
    element3.style.height = (h3 * 2) + 'px';
    
    // Document reflows at end of frame​

    উপরের স্নিপেটটি দেখে সমস্যা সমাধান করা সহজ মনে হতে পারে। তবে বাস্তবে, PBS-এর লাইফ-সাইকেল চলাকালীন অনেক ভিন্ন ভিন্ন সময়ে এবং অনেক ভিন্ন ভিন্ন জায়গায় রিফ্লো-ট্রিগারিং বিষয়গুলি রিড ও রাইট করা হয়। হাজার হাজার লাইনের জাভাস্ক্রিপ্ট কোড পুনর্গঠন করা সম্ভব নয়।

    আমাদের সৌভাগ্যবশত, উইলসন তার নিবন্ধে একটি সমাধানও প্রদান করেছিলেন। তিনি সেই রিড এবং রাইটগুলি একসাথে গুচ্ছবদ্ধ করতে সাহায্য করার জন্য FastDom নামে একটি ছোট ইউটিলিটি স্ক্রিপ্ট তৈরি করেছিলেন।

    পেজ বিল্ডার স্যান্ডউইচের কিছু কোড এখানে দেওয়া হলো যা FastDom ব্যবহার করে এবং আমাদের ওপরের সমাধান #১-ও অন্তর্ভুক্ত করে:

    // Bunch together the reads from other threads.
    fastdom.measure( function() {
    
    	// Use our cached client rect.
    	var rect = window.pbsGetBoundingClientRect( elem );
    
    	// Bunch together the writes from other threads.
    	fastdom.mutate( function() {
    		elem.style.top = ( rect.top + window.pbsScrollY() ) + 'px';
    		elem.style.height = rect.height + 'px';
    		elem.style.left = rect.left + 'px';
    		elem.style.width = rect.width + 'px';
    	}.bind( this ) );
    }.bind( this ) );​

    FastDom যা করে তা হলো এটি সমস্ত fastdom.measure কল এবং সমস্ত fastdom.mutate কলকে একসাথে গ্রুপ করে এবং সেগুলিকে অ্যাসিঙ্ক্রোনাসভাবে এক্সিকিউট করে, কার্যকরভাবে ব্রাউজারে রিফ্লোর পরিমাণ কমাতে সমস্ত রিড এবং রাইটকে একত্রিত করে।

    সমাধান #৩: স্টাইল অবজেক্ট অ্যাক্সেস করা ব্যয়বহুল

    আমরা jsPerf-এর সাহায্যে আরও দেখতে পেয়েছি যে কিছু স্টাইল-গেটিং ফাংশন অন্যদের তুলনায় দ্রুততর ছিল।

    PBS-এ, আমাদের সাধারণত একটি উপাদানের একটি নির্দিষ্ট স্টাইলের বর্তমান মান পাওয়ার প্রয়োজন হয়। উদাহরণস্বরূপ, টপ মার্জিন পাওয়ার জন্য আমরা সাধারণত এটি ব্যবহার করি:

    var styles = window.getComputedStyle( elem );
    var marginTop = styles.marginTop;​

    কিন্তু, আমরা দেখতে পেয়েছি যে এটি করা অনেক বেশি দ্রুত:

    var marginTop = elem.style.marginTop;​

    তবে, elem.style.marginTop এবং getComputedStyle সম্পূর্ণ আলাদা। প্রথমটি কেবল আমাদের উপাদানটির ইনলাইন স্টাইলিং দেয় এবং কোনো স্টাইলশিট বিবেচনায় নেয় না; এবং দ্বিতীয়টি ইনলাইন স্টাইল ও স্টাইলশিট উভয়কেই বিবেচনায় নেয়।

    আরও বিষয় হলো, এমনকি getComputedStyle-এর ফলাফল ক্যাশ করা হলেও, এটি তখনও বেশ ধীরগতির ছিল। দেখা গেল, স্টাইল অবজেক্টটি অ্যাক্সেস করাই মূলত ধীরগতির প্রক্রিয়া।

    আমাদের সৌভাগ্যবশত, PBS উপাদানগুলিতে ইনলাইন স্টাইল যুক্ত করে, এবং যেহেতু ইনলাইন স্টাইলগুলি স্টাইলশিটের চেয়ে বেশি অগ্রাধিকার পায় (বেশিরভাগ সময়), তাই এমন কিছু ক্ষেত্র থাকবে যেখানে ইনলাইন স্টাইলের মান পাওয়াই যথেষ্ট হবে। সুতরাং আমরা যদি উপরের দুটি পদ্ধতি একত্রিত করি, তবে আমরা অনেক দ্রুত কার্যকর হওয়া কোড তৈরি করতে পারি:

    var marginTop = elem.style.marginTop;
    if ( ! marginTop ) {
    	var styles = window.getComputedStyle( elem );
    	marginTop = styles.marginTop;
    }​

    কোড উন্নতির ফলাফল

    আমাদের উপরের ৩টি সমাধানের জন্য প্রচুর গবেষণা, পরীক্ষা এবং বাস্তব বাস্তবায়নের প্রয়োজন হয়েছিল (এবং আমাদের ফন্টস ফিচারটি প্রকাশে বিলম্ব ঘটিয়েছিল), তবে শেষ পর্যন্ত এটি সার্থক ছিল।

    স্ক্রিন জুড়ে ২ সেকেন্ডের জন্য মাউস নাড়াচাড়া করার আমাদের প্রাথমিক পরীক্ষায় ফিরে যাই। এখানে পুরানো অসুন্দর/ঝাঁকুনিপূর্ণ টাইমলাইন দেওয়া হলো:

    এবং পারফরম্যান্সের উন্নতির পর আমাদের নতুন টাইমলাইন দেখতে কেমন তা এখানে দেওয়া হলো:

    যেমনটি আপনি দেখতে পাচ্ছেন, গ্রাফটিতে বেগুনি রঙের উপাদান কম রয়েছে। এবং ব্রাউজার কর্তৃক সম্পাদিত প্রক্রিয়ার পরিমাণে লক্ষণীয় পার্থক্য রয়েছে। নীচের আয়তক্ষেত্রাকার অংশগুলিও আগের চেয়ে পাতলা, যার অর্থ প্রক্রিয়াগুলি আগের চেয়ে দ্রুত সম্পন্ন হচ্ছে।

    আপনি যদি পুরানো এবং নতুন গ্রাফের লম্বা/প্রশস্ত বেগুনি এলাকার পরিমাণের তুলনা করেন, তবে আমরা দেখতে পাবো এক বিশাল ২০০% পারফরম্যান্স বৃদ্ধি! আমরা সামগ্রিকভাবেও পারফরম্যান্সের উন্নতি দেখতে পাচ্ছি। মোটেও মন্দ নয়!

    মূল শিক্ষণীয় বিষয়সমূহ

    সত্যি বলতে, অ্যান বিষয়টি উল্লেখ করার আগে আমরা ভাবিনি যে PBS-এর পারফরম্যান্স সমস্যা রয়েছে। মূলত কারণ আমরা ডেভেলপমেন্ট-কেন্দ্রিক কম্পিউটার ব্যবহার করছিলাম এবং পারফরম্যান্সের বাধাগুলি ততটা স্পষ্ট ছিল না। পেছনের দিকে তাকালে মনে হয়, পারফরম্যান্স যাচাই করা শীর্ষ অগ্রাধিকারগুলির মধ্যে একটি হওয়া উচিত ছিল। তবে অন্তত এখন, সংস্করণ ৪.৩ অনুযায়ী এটির সমাধান করা হয়েছে। ?

    যারা তাদের নিজস্ব ওয়ার্ডপ্রেস প্লাগইনের পারফরম্যান্স উন্নত করতে চান, বিশেষ করে যদি আপনিও ভারী জাভাস্ক্রিপ্ট ব্যবহার করেন, তাদের জন্য এই অভিজ্ঞতা থেকে আমার মূল শিক্ষণীয় বিষয়গুলি নিচে দেওয়া হলো:

    1. রিফ্লো ট্রিগার করে এমন প্রপার্টি/ফাংশনে আপনার কল সীমিত/ক্যাশ করুন। গাইড হিসেবে এটি ব্যবহার করুন: What forces layout/reflow. The comprehensive list.
    2. DOM স্টাইলে “reads” এবং “writes” একসাথে গ্রুপ করুন। আপনার হয়ে এটি করার জন্য FastDom ব্যবহার করুন।
    3. Chrome-এর Timeline profiler ব্যবহার করুন, এবং নিশ্চিত করুন যে আপনার যথাসম্ভব কম রিফ্লো (বেগুনি উপাদান) রয়েছে।