পুরানো ডেভেলপার এবং প্রকৌশলীরা LAMP স্ট্যাকটি মনে রাখতে পারেন💡 এবং যদিও এটি নতুনভাবে তৈরি করা হয়েছে , যদি আমরা যা খুঁজে পাই এবং যা প্রয়োজন তা হল:
একটি অপারেটিং সিস্টেম
একটি ওয়েব সার্ভার
একটি ডাটাবেস
একটি প্রোগ্রামিং ভাষা
আমি আজ আপনার সাথে যা কথা বলতে যাচ্ছি তা হল কিভাবে আমি একটি বিকল্প বিন্যাসে LAMP স্ট্যাকটিকে পুনরায় কল্পনা করেছি:
আজকাল, আমি প্রায়শই যা শুনি তা হল: "আমি একজন বিকাশকারী হতে চাই আমি কীভাবে শুরু করব?", "আমি একজন বিকাশকারী হতে চাই আমার কোন ল্যাপটপ দরকার?" অথবা "একজন বিকাশকারী হওয়ার জন্য আমাকে কি সর্বশেষ MacBook কিনতে হবে?" এবং সত্যি বলতে, এটা আমার কাছে আসতে শুরু করেছে।
না বাচ্চারা , ডেভেলপার হওয়ার জন্য আপনার অত্যাধুনিক অভিনব প্রযুক্তি বা রকেট🚀 দরকার নেই, আপনার যা দরকার তা হল একটি অপারেটিং সিস্টেম যা প্রোগ্রামিং প্যাকেজ ইনস্টল করতে সক্ষম এবং সেগুলি কম্পাইল করতে পারে; আপনি এমনকি আপনার ঠাকুরমার পুরানো ল্যাপটপ ব্যবহার করতে পারেন। এবং এখন আপনি জিজ্ঞাসা করুন: "এটি কিভাবে হতে পারে?!"
আসুন মেমরি লেনে একটি ছোট ট্রিপ নেওয়া যাক; প্রায় সাড়ে 3 বছর আগে, আমি একটি SBC- এর সাথে টিঙ্কারিং শুরু করেছিলাম - একক বোর্ড কম্পিউট r যা কেনার জন্য 50E এর নিচে শুরু হয় এবং এই মুহূর্তে আমার কাছে একটি ওয়েব সার্ভার, একটি ডাটাবেস আছে, প্রতি শত শত ওয়েব-স্ক্র্যাপ করছি ঘন্টা, এবং এর উপরে, আমি একটি API এন্ডপয়েন্ট ডেভেলপ করার জন্য কাজ করছি।
এই SBC এমনকি এর পরিসরে সর্বশেষ নয় এবং এতে রয়েছে:
8GB LPDDR4 ইন্টারনাল মেমরি
1.5GHz কোয়াড-কোর ARM Cortex-A72 CPU (2015 সালে চালু হয়েছে) - যা আপনি 2GHz এ সহজে এবং নিরাপদে ওভারক্লক করতে পারেন (+ফ্যান এক্সটেনশন এবং হিটসিঙ্ক)
এই চশমাগুলি সম্পর্কে GPT-এর যা বলার আছে তা এখানে: আপনি যে স্পেসিফিকেশনগুলি প্রদান করেছেন তা নির্দিষ্ট ধরণের কম্পিউটিং কাজের জন্য উপযুক্ত, তবে সেগুলি অন্যদের জন্য যথেষ্ট নাও হতে পারে৷ এখানে একটি মূল্যায়ন আছে:
ARM Cortex-A72 হল একটি সক্ষম প্রসেসর ডিজাইন যা সাধারণত স্মার্টফোন, ট্যাবলেট এবং অন্যান্য মোবাইল ডিভাইসে পাওয়া যায়।
একটি কোয়াড-কোর কনফিগারেশনের অর্থ হল এতে চারটি কোর রয়েছে, এটি একই সাথে একাধিক কাজ আরও দক্ষতার সাথে পরিচালনা করতে দেয়।
1.5GHz ঘড়ির গতি ওয়েব ব্রাউজিং, মিডিয়া খরচ এবং উত্পাদনশীলতা অ্যাপ্লিকেশন সহ সাধারণ-উদ্দেশ্য কম্পিউটিং কাজের জন্য উপযুক্ত।
যাইহোক, গেমিং, ভিডিও এডিটিং বা জটিল সফ্টওয়্যার চালানোর মতো আরও চাহিদাপূর্ণ কাজের জন্য, একটি উচ্চ ঘড়ির গতি এবং সম্ভবত আরও কোরগুলি আরও ভাল পারফরম্যান্স সরবরাহ করবে। সংক্ষেপে, এই বৈশিষ্ট্যগুলি হালকা থেকে মাঝারি কম্পিউটিং কাজের জন্য উপযুক্ত, যেমন দৈনন্দিন উত্পাদনশীলতা, ওয়েব ব্রাউজিং এবং মাল্টিমিডিয়া খরচ। যাইহোক, আরো চাহিদাপূর্ণ কাজ বা ভবিষ্যত-প্রুফিংয়ের জন্য, আপনি আরও RAM এবং একটি দ্রুত CPU সহ একটি সিস্টেমে আপগ্রেড করার কথা বিবেচনা করতে পারেন।
বিশ্বাস করুন, শুরুতে হালকা থেকে মাঝারি পর্যন্ত যথেষ্ট, তাই একটি Pi বোর্ডের সাহায্যে আপনি সহজেই একটি কার্যক্ষম ডেস্কটপ পরিবেশ পেতে পারেন যেখানে আপনি কীভাবে কোড করতে হয় তা শিখতে পারেন এবং শুধুমাত্র ফ্রন্টএন্ড নয়, এমনকি পাইথনের মতো ব্যাকএন্ড প্রোগ্রামিং ভাষাও। , c++ (যা আরও বেশি শক্তি সাশ্রয়ী), বা জাভাস্ক্রিপ্ট।
আমি কি ব্যবহার করব?
আমার রাস্পবেরি পাইতে, আমি এর সাথে কোড তৈরি করছি:
উবুন্টু ডেস্কটপ -ডেস্কটপিফাই এর সৌজন্যে:
ফায়ারওয়াল
অ্যান্টিভাইরাস
অনুপ্রবেশ প্রতিরোধ সফ্টওয়্যার আইপিএস
নেটওয়ার্কিং
শক্তিশালী পাসওয়ার্ড ব্যবস্থাপনা
VSCode দূরবর্তীভাবে সার্ভারের সাথে সংযুক্ত হচ্ছে
Python3 স্ক্রিপ্ট যা ওয়েব স্ক্র্যাপ করে এবং CSS দ্বারা মূর্ত HTML ওয়েবপেজ তৈরি করে
অনুরোধ
সেলেনিয়াম
পান্ডা
সমান্তরাল প্রক্রিয়াকরণ - concurrent.futures
জাভাস্ক্রিপ্ট এখানে এবং সেখানে পিএইচপি সঙ্গে মিলিত.
Python3 স্ক্রিপ্ট যা স্বয়ংক্রিয়ভাবে আমার Sqlite3 ডাটাবেসে JSON ফর্ম্যাটে লিখতে পারে।
ফ্লাস্ক অ্যাপ, একটি ছোট এবং লাইটওয়েট পাইথন ওয়েব ফ্রেমওয়ার্ক যা দরকারী টুল এবং বৈশিষ্ট্য প্রদান করে যা পাইথনে ওয়েব অ্যাপ্লিকেশন তৈরি করে।
এবং সবশেষে, কোডের একটি জাভাস্ক্রিপ্ট টুকরা যা ফ্লাস্ক এন্ডপয়েন্টকে কল করে - একটি RESTful API এন্ডপয়েন্ট
প্রায় 4 বছরের জন্য 120E এবং <4E প্রতি মাসে বিদ্যুতের পরিমার্জিত খরচে🔌।
সবকিছুর সংক্ষিপ্তসারের জন্য, এখানে BerryNews সিস্টেম আর্কিটেকচার রয়েছে:
এখানে মূল বিষয়গুলি হল দক্ষ সম্পদ ব্যবহার + সম্পদ ব্যবহারের সীমাবদ্ধতা ।
কেন আপনি দক্ষ কোড লিখতে পারেন যখন splurge?
আমরা যদি সব কিছুর যোগফল দেই, তাহলে 100-ডলারের কম্পিউটারে আমরা একটি টেবিল দিয়ে শেষ করব:
শ্রেণী | কীওয়ার্ড |
---|---|
প্রোগ্রামিং ভাষা | Python3, Javascript, PHP, CSS, HTML, SQL |
ডেটা ফরম্যাট | JSON |
ফ্রেমওয়ার্ক | ফ্লাস্ক, সেলেনিয়াম, concurrent.futures |
ডাটাবেস | sqlite3 |
নেটওয়ার্কিং | রাউটার কনফিগারেশন, ডিএনএস |
সাইবার নিরাপত্তা | UFW ( ফায়ারওয়াল ), ClamAV ( অ্যান্টিভাইরাস ), Fail2ban ( IPS ), পাসওয়ার্ড ম্যানেজমেন্ট, SSH কী, লেটস এনক্রিপ্ট ( SSL সার্টিফিকেট ) |
লিনাক্স | রাস্পবেরি পাই, উবুন্টু ডেস্কটপ, ভিএসসিকোড |
তাহলে, আমাকে বলুন, আপনি কি এখনও মনে করেন যে একজন ডেভেলপার হওয়ার জন্য আপনার ল্যাপটপের লেটেস্ট স্পেসিফিকেশন দরকার?