গ্নু
রিচার্ড স্টলম্যান গ্নু অপারেটিং সিস্টেমের এই পরিকল্পনার কথা net.unix-wizards এবং net.usoft নিউজগ্রুপে জানান ২৭ সেপ্টেম্বর ১৯৮৩ সালে। সফটওয়্যার ডেভলপমেন্টের কাজ শুরু হয় ৫ জানুয়ারি ১৯৮৪ সালে। এর আগে তিনি এমআইটির আর্টিফিশিয়াল ইন্টেলিজেন্স ল্যাব থেকে অবসর গ্রহণ করেন। কারণ এই প্রতিষ্ঠানের সাথে যুক্ত থাকার কারণে গ্নু সফটওয়্যারের ডেভলপমেন্ট বা বিনামূল্যে বিতরণের ক্ষেত্রে সমস্যা হতে পারে অথবা প্রতিষ্ঠানের পক্ষ থেকে সফটওয়্যারগুলোর মালিকানার দাবি উত্থাপন হতে পারে। রিচার্ড স্টলম্যান গ্নু নামটি নির্বাচন করেছেন বিভিন্ন শব্দের খেলা এবং "দ্য গঞ্জ" নামের একটি গান থেকে।
এ প্রকল্পের মূল লক্ষ্য ছিল সম্পূর্ণরূপে ফ্রি সফটওয়্যারের সমন্বয়ে একটি অপারেটিং সিস্টেম তৈরী করা। স্টলম্যান চেয়েছিলেন কম্পিউটার ব্যবহারকারীরা যেন "স্বাধীন" থাকতে পারেন, যেমনটা ছিলেন ১৯৬০ এবং ১৯৭০ এর দশকে। সে সময় সফটওয়্যার ব্যবহারকারীরা তাদের ব্যবহৃত সফটওয়্যারের সোর্স কোড নিয়ে স্টাডি, অন্য যে কারও সাথে শেয়ার করা, সফটওয়্যারে যে কোনো ধরনের পরিবর্তন করার স্বাধীনতা পেতেন। এমনকি পরিবর্তীত সফটওয়্যারসমূহ পুনরায় প্রকাশ করার ব্যাপারেও কোনো বাধা ছিল না ব্যবহারকারীদের। গ্নু ইশতেহারে মার্চ ১৯৮৫ সালে এই দর্শনটি উল্লেখ করা হয়েছিল।
জাভা (প্রোগ্রামিং ভাষা)
James Gosling, Mike Sheridan, এবং Patrick Naughton ১৯৯১ সালের জুনে জাভা ল্যাঙ্গুয়েজ প্রোজেক্ট শুরু করেন। প্রাথমিকদিকে জাভা ল্যাঙ্গুয়েজকে "ওক(Oak)" বলা হত। জেমস গসলিং এর অফিসের বাহিরের ওক গাছের সাথে মিল রেখে এই নাম রাখা হয়। এরপর এর নাম রাখা হয় "গ্রীন" এবং অবশেষে জাভা কফির সাথে মিল রেখে "জাভা"তে পরিবর্তন করা হয়। 
১৯৯৫ সালে সান মাইক্রোসিস্টেমস জাভা-১.০ প্রকাশ করেন। তাদের মূলনীতি ছিল "একবার লিখুন, যে কোনো জায়গায় চালান (Write Once, Run Anywhere or WORA)"।
জাভার উল্লেখযোগ্য সংস্করণের মধ্যে অন্যতম হল -java=== বহনযোগ্যতা (portability) ===
জাভা'র পূর্বতন প্রোগ্রামিং ভাষাগুলিতে সাধারণত এক অপারেটিং সিস্টেমের জন্য লেখা প্রোগ্রাম অন্য অপারেটিং সিস্টেম এ চালানো যেত না। জাভায় লেখা প্রোগ্রাম যেকোন অপারেটিং সিস্টেমে চালানো যায় শুধু যদি সেই অপারেটিং সিস্টেমের জন্য একটি জাভা রানটাইম এনভায়রনমেন্ট(জাভা ভার্চুয়াল মেশিন)থেকে থাকে। এই সুবিধা জাভাকে একটি অনন্য প্ল্যাটফর্মে পরিণত করে। বিশেষ করে ইন্টারনেটে, যেখানে অসংখ্য কম্পিউটার যুক্ত থাকে এবং কম্পিউটারগুলো বিভিন্ন অপারেটিং সিস্টেম ব্যবহার করে থাকে সেখানে জাভায় লেখা অ্যাপলেট গুলো সকল কম্পিউটারে চলতে পারে এবং এর জন্য কোন বিশেষ ব্যবস্থা নিতে হয় না। জাভা'র এই সুবিধাকে বলা হয় বহনযোগ্যতা।