শব্দার্থবিদ্যা এবং সহায়ক প্রযুক্তির পরিচিতি
আপনি দেখেছেন যে কীভাবে একটি সাইটকে ব্যবহারকারীদের কাছে অ্যাক্সেসযোগ্য করে তুলতে হয় যারা মাউস বা পয়েন্টিং ডিভাইস ব্যবহার করতে পারে না — শারীরিক প্রতিবন্ধকতা, প্রযুক্তিগত সমস্যা বা ব্যক্তিগত পছন্দের কারণে — শুধুমাত্র কীবোর্ড ব্যবহারের মাধ্যমে। যদিও এটির জন্য কিছু যত্ন এবং চিন্তার প্রয়োজন, আপনি যদি এটি শুরু থেকে পরিকল্পনা করেন তবে এটি একটি বিশাল পরিমাণ কাজ নয়। একবার সেই মৌলিক কাজটি সম্পন্ন হয়ে গেলে, আপনি একটি সম্পূর্ণ অ্যাক্সেসযোগ্য এবং আরও মসৃণ সাইটের পথে অনেক দূর এগিয়ে গেছেন৷
এই পাঠে, আমরা সেই কাজটি তৈরি করব এবং আপনাকে অন্যান্য অ্যাক্সেসিবিলিটি ফ্যাক্টরগুলি সম্পর্কে চিন্তা করতে সাহায্য করব, যেমন ভিক্টর সারানের মতো ব্যবহারকারীদের সমর্থন করার জন্য ওয়েবসাইটগুলি কীভাবে তৈরি করা যায়, যারা স্ক্রীন দেখতে পায় না৷
প্রথমত, আমরা সহায়ক প্রযুক্তির কিছু পটভূমি পাব, স্ক্রিন রিডারের মতো টুলগুলির জন্য সাধারণ শব্দ যা প্রতিবন্ধী ব্যবহারকারীদের সাহায্য করে যা তাদের তথ্য অ্যাক্সেস করা থেকে বিরত রাখতে পারে।
এর পরে, আমরা কিছু সাধারণ ব্যবহারকারীর অভিজ্ঞতার ধারণাগুলি দেখব এবং সহায়ক প্রযুক্তির ব্যবহারকারীদের অভিজ্ঞতার মধ্যে গভীরভাবে ডুব দেওয়ার জন্য সেগুলিকে তৈরি করব৷
অবশেষে, আমরা এই ব্যবহারকারীদের জন্য একটি ভাল অভিজ্ঞতা তৈরি করতে কীভাবে কার্যকরভাবে HTML ব্যবহার করতে হয় এবং আমরা আগে যেভাবে ফোকাসকে সম্বোধন করেছি তার সাথে কীভাবে এটি বেশ কিছুটা ওভারল্যাপ হয় তা আমরা দেখব।
সহকারী প্রযুক্তি
সহায়ক প্রযুক্তি হল ডিভাইস, সফ্টওয়্যার এবং সরঞ্জামগুলির জন্য একটি ছাতা শব্দ যা প্রতিবন্ধী ব্যক্তিকে একটি কাজ সম্পূর্ণ করতে সহায়তা করে। বিস্তৃত অর্থে এটি হতে পারে নিম্ন-প্রযুক্তির কিছু যেমন হাঁটার জন্য ক্রাচ বা পড়ার জন্য একটি ম্যাগনিফাইং গ্লাস, বা স্মার্টফোনে একটি রোবটিক আর্ম বা চিত্র শনাক্তকরণ সফ্টওয়্যারের মতো উচ্চ প্রযুক্তির কিছু।
সহায়ক প্রযুক্তিতে ব্রাউজার জুমের মতো সাধারণ বা কাস্টম-ডিজাইন করা গেম কন্ট্রোলারের মতো নির্দিষ্ট কিছু অন্তর্ভুক্ত থাকতে পারে। এটি একটি ব্রেইল ডিসপ্লের মতো একটি পৃথক শারীরিক ডিভাইস হতে পারে বা ভয়েস নিয়ন্ত্রণের মতো সফ্টওয়্যারে সম্পূর্ণরূপে প্রয়োগ করা যেতে পারে৷ এটি কিছু স্ক্রিন রিডারের মতো অপারেটিং সিস্টেমে অন্তর্নির্মিত হতে পারে বা এটি একটি Chrome এক্সটেনশনের মতো একটি অ্যাড-অন হতে পারে৷
সাধারণভাবে সহায়ক প্রযুক্তি এবং প্রযুক্তির মধ্যে লাইনটি অস্পষ্ট; সর্বোপরি, সমস্ত প্রযুক্তির উদ্দেশ্য হল কোন না কোন কাজে লোকেদের সহায়তা করা। এবং প্রযুক্তিগুলি প্রায়শই "সহায়ক" বিভাগের মধ্যে এবং বাইরে যেতে পারে।
উদাহরণস্বরূপ, প্রথম দিকের বাণিজ্যিক বক্তৃতা সংশ্লেষণ পণ্যগুলির মধ্যে একটি ছিল অন্ধদের জন্য একটি কথা বলার ক্যালকুলেটর। এখন বক্তৃতা সংশ্লেষণ সব জায়গায়, ড্রাইভিং দিকনির্দেশ থেকে ভার্চুয়াল সহকারী পর্যন্ত। বিপরীতভাবে, প্রযুক্তি যা মূলত সাধারণ-উদ্দেশ্য ছিল প্রায়ই একটি সহায়ক ব্যবহার খুঁজে পায়। উদাহরণস্বরূপ, স্বল্প দৃষ্টিসম্পন্ন ব্যক্তিরা তাদের স্মার্টফোনের ক্যামেরা জুম ব্যবহার করে বাস্তব জগতে ছোট কিছুকে আরও ভালোভাবে দেখতে পারেন।
ওয়েব ডেভেলপমেন্টের প্রেক্ষাপটে, আমাদের অবশ্যই বিভিন্ন ধরণের প্রযুক্তি বিবেচনা করতে হবে। লোকেরা স্ক্রিন রিডার বা ব্রেইল ডিসপ্লে ব্যবহার করে, স্ক্রিন ম্যাগনিফায়ার দিয়ে, ভয়েস কন্ট্রোলের মাধ্যমে, একটি সুইচ ডিভাইস ব্যবহার করে বা অন্য কোনো ধরনের সহায়ক প্রযুক্তির সাহায্যে আপনার ওয়েবসাইটের সাথে যোগাযোগ করতে পারে যা পৃষ্ঠার ডিফল্ট ইন্টারফেসকে আরও নির্দিষ্ট ইন্টারফেস তৈরি করতে অভিযোজিত করে। ব্যবহার করতে পারেন.
এই সহায়ক প্রযুক্তিগুলির মধ্যে অনেকগুলি একটি অ্যাক্সেসযোগ্য ব্যবহারকারীর অভিজ্ঞতা তৈরি করতে প্রোগ্রাম্যাটিকভাবে প্রকাশিত শব্দার্থবিদ্যার উপর নির্ভর করে এবং এই পাঠের বেশিরভাগই এটি সম্পর্কে। কিন্তু আমরা প্রোগ্রাম্যাটিকভাবে প্রকাশ করা শব্দার্থ ব্যাখ্যা করার আগে, আমাদের সামর্থ্য সম্পর্কে একটু কথা বলতে হবে।
সামর্থ্য
যখন আমরা একটি মনুষ্য-নির্মিত সরঞ্জাম বা যন্ত্র ব্যবহার করি, তখন আমরা সাধারণত এর ফর্ম এবং ডিজাইনের দিকে তাকাই যাতে এটি কী করে এবং এটি কীভাবে কাজ করে তার একটি ধারণা দেয়। একটি সামর্থ্য হল এমন কোন বস্তু যা তার ব্যবহারকারীকে একটি ক্রিয়া সম্পাদন করার সুযোগ দেয় বা প্রদান করে। সামর্থ্য যত ভাল ডিজাইন করা হয়, তার ব্যবহার তত বেশি স্পষ্ট বা স্বজ্ঞাত।
একটি ক্লাসিক উদাহরণ হল একটি কেটলি বা চাপানি। আপনি সহজেই চিনতে পারেন যে আপনার এটিকে হাতল দিয়ে তোলা উচিত, থুতু নয়, এমনকি যদি আপনি আগে কখনো চা-পাতা দেখেননি।
এর কারণ এই যে সামর্থ্য আপনি অন্য অনেক বস্তুতে দেখেছেন তার মতোই -- জল দেওয়ার পাত্র, পানীয়ের কলস, কফির মগ ইত্যাদি৷ আপনি সম্ভবত থোকায় থোকায় পাত্রটি তুলে নিতে পারেন , কিন্তু অনুরূপ সামর্থ্যের সাথে আপনার অভিজ্ঞতা আপনাকে বলে যে হ্যান্ডেলটি আরও ভাল বিকল্প।
গ্রাফিকাল ইউজার ইন্টারফেসে, সামর্থ্যগুলি আমরা যে পদক্ষেপ নিতে পারি তার প্রতিনিধিত্ব করে, তবে সেগুলি অস্পষ্ট হতে পারে কারণ ইন্টারঅ্যাক্ট করার মতো কোনও শারীরিক বস্তু নেই। এইভাবে GUI সুবিধাগুলি বিশেষভাবে দ্ব্যর্থহীন হওয়ার জন্য ডিজাইন করা হয়েছে: বোতাম, চেক বক্স এবং স্ক্রল বারগুলি যতটা সম্ভব কম প্রশিক্ষণের মাধ্যমে তাদের ব্যবহার বোঝানোর জন্য।
উদাহরণ স্বরূপ, আপনি কিছু সাধারণ ফর্ম উপাদান (অ্যাফোরডেন্স) এর ব্যবহারকে এভাবে ব্যাখ্যা করতে পারেন:
- রেডিও বোতাম - "আমি এই বিকল্পগুলির মধ্যে একটি বেছে নিতে পারি।"
- চেক বক্স — "আমি এই বিকল্পে 'হ্যাঁ' বা 'না' বেছে নিতে পারি।"
- পাঠ্য ক্ষেত্র - "আমি এই এলাকায় কিছু টাইপ করতে পারি।"
- ড্রপডাউন - "আমি আমার বিকল্পগুলি প্রদর্শন করতে এই উপাদানটি খুলতে পারি।"
আপনি এই উপাদানগুলি সম্পর্কে উপসংহার টানতে সক্ষম হন কারণ আপনি সেগুলি দেখতে পাচ্ছেন । স্বাভাবিকভাবেই, যে কেউ একটি উপাদান দ্বারা প্রদত্ত ভিজ্যুয়াল ক্লুগুলি দেখতে পায় না সে এর অর্থ বুঝতে পারে না বা স্বজ্ঞাতভাবে সামর্থ্যের মূল্য উপলব্ধি করতে পারে না। তাই আমাদের অবশ্যই নিশ্চিত করতে হবে যে তথ্যটি নমনীয়ভাবে প্রকাশ করা হয়েছে যাতে সহায়ক প্রযুক্তির দ্বারা অ্যাক্সেস করা যায় যা ব্যবহারকারীর প্রয়োজন অনুসারে একটি বিকল্প ইন্টারফেস তৈরি করতে পারে।
সামর্থ্যের ব্যবহারের এই অ-ভিজ্যুয়াল এক্সপোজারকে এর শব্দার্থবিদ্যা বলা হয়।
স্ক্রিন রিডার
একটি জনপ্রিয় ধরনের সহায়ক প্রযুক্তি হল স্ক্রিন রিডার , এমন একটি প্রোগ্রাম যা দৃষ্টিপ্রতিবন্ধীদের কম্পিউটার ব্যবহার করতে সক্ষম করে স্ক্রীন টেক্সট উচ্চস্বরে জেনারেট করা ভয়েসের মাধ্যমে। ব্যবহারকারী কীবোর্ডের সাথে একটি প্রাসঙ্গিক এলাকায় কার্সার সরানোর মাধ্যমে যা পড়া হয় তা নিয়ন্ত্রণ করতে পারে।
আমরা ভিক্টর সারানকে ব্যাখ্যা করতে বলেছিলাম যে, কীভাবে একজন অন্ধ ব্যক্তি হিসেবে তিনি OS X-এ একটি অন্তর্নির্মিত স্ক্রিন রিডার ব্যবহার করে ওয়েব অ্যাক্সেস করেন, যার নাম ভয়েসওভার। ভয়েসওভার ব্যবহার করে ভিক্টরের এই ভিডিওটি দেখুন।
এখন, স্ক্রিন রিডার ব্যবহার করার চেষ্টা করার পালা। এখানে ChromeVox Lite সহ একটি পৃষ্ঠা রয়েছে, যা জাভাস্ক্রিপ্টে লেখা একটি ন্যূনতম কিন্তু কার্যকরী স্ক্রিন রিডার৷ স্বল্প-দৃষ্টির অভিজ্ঞতা অনুকরণ করতে এবং ব্যবহারকারীকে একটি স্ক্রিন রিডার দিয়ে কাজটি সম্পূর্ণ করতে বাধ্য করতে স্ক্রীনটি উদ্দেশ্যমূলকভাবে ঝাপসা করা হয়েছে। অবশ্যই, এই অনুশীলনের জন্য আপনাকে Chrome ব্রাউজার ব্যবহার করতে হবে।
আপনি স্ক্রীন রিডার নিয়ন্ত্রণ করতে স্ক্রিনের নীচে কন্ট্রোল প্যানেল ব্যবহার করতে পারেন। এই স্ক্রিন রিডারটির খুব কম কার্যকারিতা রয়েছে, তবে আপনি Previous
এবং Next
বোতামগুলি ব্যবহার করে বিষয়বস্তুটি অন্বেষণ করতে পারেন এবং আপনি Click
বোতামটি ব্যবহার করে জিনিসগুলিতে ক্লিক করতে পারেন৷
স্ক্রিন রিডার ব্যবহারের অনুভূতি পেতে ChromeVox লাইট সক্ষম করে এই পৃষ্ঠাটি ব্যবহার করার চেষ্টা করুন। এই সত্যটি সম্পর্কে চিন্তা করুন যে একটি স্ক্রিন রিডার (বা অন্যান্য সহায়ক প্রযুক্তি) প্রকৃতপক্ষে প্রোগ্রামগতভাবে প্রকাশিত শব্দার্থবিদ্যার উপর ভিত্তি করে ব্যবহারকারীর জন্য একটি সম্পূর্ণ বিকল্প ব্যবহারকারীর অভিজ্ঞতা তৈরি করে। একটি ভিজ্যুয়াল ইন্টারফেসের পরিবর্তে, স্ক্রিন রিডার একটি শ্রবণযোগ্য ইন্টারফেস প্রদান করে।
লক্ষ্য করুন কিভাবে স্ক্রিন রিডার আপনাকে প্রতিটি ইন্টারফেস উপাদান সম্পর্কে কিছু তথ্য জানায়। আপনার আশা করা উচিত যে একজন সু-পরিকল্পিত পাঠক আপনাকে সমস্ত, বা অন্ততপক্ষে, নিম্নলিখিত উপাদানগুলির মধ্যে যে উপাদানগুলির মুখোমুখি হয় সে সম্পর্কে আপনাকে বলবে।
- উপাদানটির ভূমিকা বা প্রকার, যদি এটি নির্দিষ্ট করা থাকে (এটি হওয়া উচিত)।
- উপাদানটির নাম , যদি এটি একটি থাকে (এটি উচিত)।
- উপাদানটির মান , যদি এটি একটি থাকে (এটি হতে পারে বা নাও হতে পারে)।
- উপাদানটির অবস্থা , যেমন, এটি সক্ষম বা অক্ষম (যদি প্রযোজ্য হয়)।
স্ক্রিন রিডার এই বিকল্প UI তৈরি করতে সক্ষম কারণ নেটিভ উপাদানগুলিতে অন্তর্নির্মিত অ্যাক্সেসিবিলিটি মেটাডেটা থাকে৷ ঠিক যেমন রেন্ডারিং ইঞ্জিন একটি ভিজ্যুয়াল ইন্টারফেস তৈরি করতে নেটিভ কোড ব্যবহার করে, তেমনি স্ক্রিন রিডার একটি অ্যাক্সেসযোগ্য সংস্করণ তৈরি করতে DOM নোডের মেটাডেটা ব্যবহার করে, এরকম কিছু।