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

বইটি এখন ঢাকা ও ঢাকার বাইরে বিভিন্ন বইয়ের দোকানে পাওয়া যাবে। আর অনলাইনে http://rokomari.com/book/46996 থেকেও এটি অর্ডার করতে পারেন, তাহলে বই চলে যাবে আপনার ঠিকানায়।

বইটিতে নিচের বিষয়গুলি শিখবেন:

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

বইয়ের সাথের সিডিতে পাবেন বইয়ে ব‍্যবহৃত কোড ও বিভিন্ন টুলস।

কোনো নোডের মধ‍্যকার কনটেন্ট বদলাতে চাইলে জেকোয়েরিতে আপনি দুটি মেথড ব‍্যবহার করতে পারেন: text()html()text() মেথডের মাধ‍্যমে কেবল টেক্সট যোগ করতে পারবেন কোনো মার্কআপ ছাড়া, আর html() এর মাধ‍্যমে তাতে মার্কআপ যোগ করতে পারবেন। নিচের উদাহরণটি লক্ষ‍্য করুন:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>jQuery Shohojpath</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script>
        $(document).ready(function(){
            $("#cont1").text("This is some text inserted by <code>text()</code> method.");
            $("#cont2").html("This text is inserted by <strong>jQuery</strong> using <code>html()</code> method.");
        });
    </script>

</head>

<body>
    <h1>Inserting text in nodes</h1>
    <p id="cont1"></p>
    <p id="cont2"></p>

</body>
</html>

এখানে প্রথমে text() মেথড ব‍্যবহার করে কিছু টেক্সট যোগ করতে বলা হয়েছে যার মধ‍্যে একটি মার্কআপ <code>text()</code> রয়েছে। এরপর html() মেথড ব‍্যবহার করে সেখানেও কিছু HTML যোগ করতে বলা হয়েছে। তার মধ‍্যে strong ও code উপাদান ব‍্যবহার করা হয়েছে। এখন এই ডকুমেন্টটি যদি ওয়েব ব্রাউজারে দেখেন তাহলে নিচের চিত্রের মতো দেখতে পাবেন।

Slecting Contents of a DOM node

লক্ষ‍্য করুন, text() মেথডের মাধ‍্যমে আমরা যে টেক্সট যোগ করেছি তাতে HTML মার্কআপ থাকলেও তা মার্কআপ হিসেবে দেখাচ্ছে না, দেখাচ্ছে টেক্সট হিসেবে। এর পরেই html() মেথড ব‍্যবহার করে মার্কআপসহ যে টেক্সট যোগ করা হচ্ছে তাতে মার্কআপ ঠিকমতোই দেখাচ্ছে। তাই কোনো টেক্সটের মধ‍্যে মার্কআপ থাকলে এবং সেই মার্কআপ কার্যকরভাবে দেখাতে চাইলে টেক্সট যোগ করার সময় html() মেথড ব‍্যবহার করতে হবে।

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

যাই হোক অবশেষ কাজটি শেষ হয়েছে – গত মাসে। বই প্রকাশককে দিয়েছি। তারপর অপেক্ষা ছাপা হয়ে বের হওয়ার। আজ ছাপা বই হাতে পেলাম। আগের চেয়ে ছাপার মান ভাল হয়েছে। বইয়ে খুব বেশি পরিবর্তন নেই, তবে পিএইচপি’র নূতন ভার্সনের সাথে সামঞ্জস‍্যপূর্ণ করা হয়েছে।

Apache-MySQL-PHP Shohojpath

এবার বইয়ের সাথে সিডি দেব না ভেবেছিলাম। কারণ আগের সংস্করণের সাথের সিডি নিয়ে বেশ ঝামেলা গেছে – প্রায়ই শুনতাম সিডি কাজ করে না। তাই এবার বইয়ের সব কোড https://github.com/suhreed/PHPBook লোকেশনে রেখেছি। বইয়ের মধ‍্যে তা উল্লেখও করেছি। কিন্তু প্রকাশক জানালেন বইয়ের সাথে সিডি দিতে হবে – কারণ বই কিনতে এসে পাঠক সিডি চাচ্ছেন। এই বইয়ে সিডি নেই দেখে সিডিওয়ালা বই কিনে নিয়ে যাচ্ছেন। সুতরাং কোড ও আরো কিছু টুলস দিয়ে সিডি বানিয়ে দিলাম। আশা করি এবার সেসব পাঠক খুশি হবেন।

joomal2.5

মড‍্যুলের জন‍্য এভাবে আমরা প‍্যারামিটার নির্ধারণ করে দিতে পারি XML ম‍্যানিফেস্ট ফাইলে। এরপর ব‍্যাকএন্ডে সেই মড‍্যুলের প্রোপার্টিজ থেকে এসব প‍্যারামিটারের মান নির্ধারণ করে দিতে পারেন। কিন্তু তারপর কী? সেসব প‍্যারামিটারকে ব‍্যবহার করবেন কীভাবে? আমাদের মড‍্যুলে আমরা প‍্যারামিটার হিসেবে যেসব মান কনফিগার করবে সেগুলির মান মড‍্যুলের আউটপুটে দেখাতে চাই। সেজন‍্য আমরা মড‍্যুল ফাইল mod-about.php এ নিচের মতো কোড যোগ করব: Continue reading “মড‍্যুলে প‍্যারামিটারের মান দেখানো” »

মড‍্যুলের জন‍্য বিভন্ন অপশন নির্ধারণ করে দেয়া যায় যদি সেই মড‍্যুলের জন‍্য আমরা প‍্যারামিটার নির্ধারণ করে দিতে পারি। আপনি কোনো মড‍্যুল, যেমন Login Form, দেখলে সেখানে নিচের চিত্রের মতো বেশ কিছু প‍্যারামিটার কনফিগার করার অপশন দেখতে পাবেন।

Joomla module development

যেকোনো মড‍্যুল তৈরির সময় আপনি এরকম প‍্যারামিটার নির্ধারণ করে দিতে পারেন। এরকম প‍্যারামিটার নির্ধারণ করা হয় XML ম‍্যানিফেস্ট ফাইলের মাধ‍্যমে। আমরা আগেই এই ফাইল তৈরি করেছি। সেখানে নিচের মতো কর <config> … </config> ব্লক যোগ করুন। Continue reading “জুমলা মড‍্যুলে প‍্যারামিটার যোগ করা” »

joomla_logo

আগের পর্বে আমরা মড‍্যুলটির xml ম‍্যানিফেস্ট ফাইল তৈরি করেছি। এই ম‍্যানিফেস্টা ফাইলের মধ‍্যে মড‍্যুলটির জন‍্য প্রয়োজনীয় ফাইলের তালিকা ও অন‍্যান‍্য তথ‍্য রয়েছে। মড‍্যুল ইনস্টল করার জন‍্য এটি দরকার হবে। কিন্তু মড‍্যুলের মূল কাজ করবে যে ফাইল সেটি আমরা এখনও তৈরি করিনি। মূল ফাইল তৈরি করা শিখব এই পর্বে।

আসুন mod_about.php নামের ফাইলটি তৈরি করা যাক। mod_about ফোল্ডারের মধ‍্যে আমরা mod_about.php নামে এই ফাইলটি তৈরি করব যাতে নিচের মতো কোড থাকবে: Continue reading “জুমলা মড‍্যুল ডেভেলপমেন্ট – মড‍্যুল ফাইল তৈরি” »

joomla_logo

আগের পর্বে আমরা জুমলা মড‍্যুলের গঠন কেমন হয় – তাতে কোন কোন ফাইল ও ফোল্ডার থাকে সে সম্পর্কে ধারণা পেয়েছি। তা জানার পর এখন আমরা জুমলা মড‍্যুল তৈরির কাজে হাত দেব। এই পর্বে আমরা একটি xml ম‍্যানিফেস্ট ফাইল তৈরি করব।

জুমলার যেকোনো এক্সটেনশন তৈরির জন‍্য আগে সেটির জন‍্য একটি ম‍্যানিফেস্ট ফাইল তৈরি করতে হবে। এই ম‍্যানিফেস্ট ফাইল আসলে একটি XML ফাইল। এই ফাইলে সেই এক্সটেনশন সম্পর্কিত কিছু তথ‍্য থাকে, এবং তাতে এক্সটেনশনের জন‍্য বিভিন্ন প‍্যারামিটার নির্ধারণ করে দেয়া হয়। আসুন, আমরা প্রথমে এমন একটি মড‍্যুল তৈরি করব যার কোনো ব‍্যক্তির নাম, ঠিকানা, মোবাইল নম্বর ও ছবি নেবে এবং সাইটে প্রকাশ করবে। এই মড‍্যুলটি বিভিন্ন কারণেই সাইটে ব‍্যবহারের দরকার হতে পারে। যেমন সাইটের মালিক তার সম্পর্কে কিছু তথ‍্য এতে প্রকাশ করতে পারে। ধরা যাক, আমরা এই মড‍্যুলের নাম দিচ্ছি, About। Continue reading “জুমলা মড‍্যুল ডেভেলপমেন্ট পর্ব ২: ম‍্যানিফেস্ট ফাইল তৈরি” »

Joomla_logo

জুমলা এক্সটেনশন নিয়ে লেখার জন‍্য অনুরোধ অনেকেই করে আসছেন। তাই এবার শুরু করে দিলাম।

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

এ টিউটোরিয়ালে কয়েক পর্বে যা জানবেন:

  • মড‍্যুলের স্ট্রাকচার কেমন?
  • মড‍্যুল ইনস্টলেশনের জন‍্য xml ম‍্যানিফেস্ট ফাইল কেমন হবে?
  • স্বাগত জানাবে এমন মড‍্যুল কীভাবে তৈরি করবেন?
  • কেবল টেক্সট ও ছবি দেখাবে এমন মড‍্যুল কীভাবে তৈরি করবেন?
  • ডাটাবেজ থেকে তথ‍্য নিয়ে মড‍্যুলে কীভাবে দেখাবেন?

এই টিউটোরিয়াল পুরোটি শেষ করে আপনি বিভিন্ন ধরনের জুমলা! মড‍্যুল তৈরি করতে সক্ষম হবেন। Continue reading “জুমলা মড‍্যুল ডেভেলপমেন্ট – শুরুর পর্ব” »

লেখালেখি নিয়ে কি কোনো বিড়ম্বনার শিকার হয়েছেন?

না, তেমন বিড়ম্বনার শিকার হইনি। তবে সময়মতো প্রকাশককে বই দিতে না পারায় অনেক সময়ই বিব্রত হয়েছি।

তবে সাম্প্রতিক এক বিড়ম্বনার সৃষ্টি হয়েছে। বদরু মো: খালেকুজ্জামান নামের এক ব্যক্তি সুহৃদ সরকার নামে লিখতে শুরু করেছে। বেশ কিছু বইও বের করেছে। তার সাথে কথা হয়েছিল। তিনি এই নামটা ব্যবহার করছেন কারণ এটি তার ‘পছন্দ’ । এই নামে লেখার ফলে তার ভক্ত সংখ্যাও বেড়ে গেছে – সেটাও হয়ত তার পছন্দ। তখন তিনি কথা দিয়েছিলেন এই নামে আর লিখবেন না। কিন্তু কথা রাখেন নি। এই নকল সুহৃদ সরকার নিয়ে বিপদে আছি। বাংলা ভাষায় আমার সকল বই (এক্সএমএল বাদে)জ্ঞানকোষ প্রকাশনী থেকে প্রকাশিত। অন্য যেসব বই আমার নামে দেখবেন তা সেই নকল সুহৃদ সরকারের সৃষ্টি।

প্রিয় টেক-এ প্রকাশিত ইন্টারভিউ

D-Link_DI-774_Rear

802.11a হলো ওয়্যারলেস লোকাল এরিয়া নেটওয়ার্ক বা WLAN এ কম্যুনিকেশন সংক্রান্ত স্ট্যান্ডার্ড। এটিকে আমরা ওয়্যারলেস ইথারনেট স্ট্যান্ডার্ড হিসেবেও গণ্য করতে পারি।

তাত্ত্বিকভাবে 802.11a ওয়্যারলেস নেটওয়ার্কে সর্বোচ্চ ৫৪ এমবিপিএস গতিতে ডাটা পরিবহন সম্ভব। 802.11b এর চেয়ে 802.11a এর সুবিধা হলো এই যে এতে পারফরম্যান্স ভাল পাওয়া যাবে। 802.11b এর ক্ষেত্রে সর্বোচ্চ গতি হতে পারে ১১ এমবিপিএস। তবে 802.11a এর ক্ষেত্রে একসেস পয়েন্ট এবং এডাপ্টারের মূল্য বিবেচনা করলে এর ব্যয় 802.11b এর তুলনায় অনেক বেশি হবে।

802.11a রেডিও সিগন্যাল ব্যবহার করে যার ফ্রিকোয়েন্সি হতে পারে ৫ গিগাহার্জ এর উপর। এই রেঞ্জে বলা হয় ‘নিয়ন্ত্রিত’ রেঞ্জ। এর মানে হলো অন্য কোনো বাণিজ্যিক ওয়্যারলেস পণ্য, যেমন তারবিহীন ফোন, এই ফ্রিকোয়েন্সি ব্যবহার করে না। অন্যদিকে 802.11b স্ট্যান্ডার্ডের যন্ত্রপাতি ২.৪ গিগাহার্জ রেঞ্জের ফ্রিকোয়েন্সি ব্যবহার করে, যা অন্যান্য ডিভাইসও ব্যবহার করতে পারে। এর ফলে আপনার নেটওয়ার্কে ট্রান্সমিশন ব্যাহত হতে পারে।

802.11a নেটওয়ার্কে পারফরম্যান্স ভাল এবং interference কম হলেও এটিতে আপনি ৫ গিগাহার্জের বেশি ফ্রিকোয়েন্সি ব্যবহার করতে পারবেন। আবার 802.11b একসেস পয়েন্টের তুলনায় 802.11a একসেস পয়েন্ট এক চতুর্থাংশের মতো জায়গায় ট্রান্সমিশন করতে পারে। 802.11a ট্রান্সমিশনের ক্ষেত্রে দেয়াল কিংবা এর মতো বাধাসমূহ বেশি বিঘ্ন ঘটায়। 802.11b এর ক্ষেত্রে তা কম সমস্যা তৈরি করে।