29 April 2026

movie: project hail mary

https://cdn.kobo.com/book-images/a66b2390-7605-4765-9cc9-b990d651e545/1200/1200/False/project-hail-mary-1.jpg 

<!-- may contain spoilers -->

movie PALING best saya tengok setakat ni! 

cerita ni tentang seorang guru sains bernama ryland grace yang diambil menjadi saintis untuk buat kajian tentang organisma asing dari angkasa lepas yang dikatakan punca matahari jadi semakin malap. disebabkan organisma tu boleh hidup di kawasan yang suhunya sangat panas, mereka ni berpendapat yang mungkin organisma ni tak diperbuat daripada air. grace pula pernah tulis thesis yang menyangkal dakwaan bahawa semua organisma ni memerlukan air menyebabkan dia dibuang daripada dunia academia sebab saintis yang lain anggap benda tu tak masuk akal (dan ada juga sebab lain) jadi, stratt yang scout grace ni suruh dia ambil ni sebagai peluang untuk buktikan dia betul supaya dapat tebus diri dia balik. grace pun setuju untuk jalankan kajian terhadap organisma tu.

nak dipendekkan cerita, grace bukan setakat kena jalankan kajian tapi juga kena ikut sertai misi ke angkasa lepas, tapi bukan atas kerelaan dia. dia dihantar ke angkasa, hilang ingatan, bangun seorang diri, crewmates pulak dah mati.

bayangkan kau sorang, jauh dari bumi, dalam kapal yang kau sendiri tak tahu nak kendalikan. 

bila grace ni perlahan-lahan dapat balik ingatan dia, dia terjumpa dengan makhluk asing. sebenarnya, bukanlah dia yang jumpa. tapi makhluk asing tu sendiri yang jumpa dia. seperti seorang saintis yang mempunyai tahap ingin tahu yang tinggi, dia beranikan diri untuk pergi siasat makhluk asing tu. tengok-tengok jadi kawan! comel sangat persahabatan dorang. dia namakan makhluk asing tu rocky. 

dari persahabatan dia dengan rocky ni, kita dapat lihat perbezaan ketara antara makhluk asing dengan manusia. manusia bangga dengan kemanusiaan, tapi dalam cerita ni, makhluk asing yang lebih ‘manusia’ dari kita. ayat rocky yang paling melekat dalam ingatan ialah: "Rocky watch whole crew die. Could not fix. Grace say Grace will die. Rocky fix." betapa sanggupnya suatu mahkluk asing korbankan dia punya bahan api hanya semata-mata nak tolong seorang insan manusia bernama ryland grace untuk balik ke bumi? tanpa agenda. tanpa kira untung rugi. hanya semata-mata sebab dia dah taknak ada orang lain terkorban. kita yang manusia ni pun belum tentu sanggup, tambah dengan sekarang ada krisis minyak.

dan dekat sini juga kita dapat lihat perbezaan pilihan yang diberikan kepada grace. setelah stratt jelaskan kepada grace yang dia perlu sertai misi ke angkasa lepas, grace tanya boleh tak kalau dia fikir dulu. tapi stratt cuma bagi jawapan pendek iaitu dia hanya ada tiga jam untuk buat keputusan. tapi, rocky tak. rocky suruh dia fikir lama lagi ada lah.

“think about it long time.” rocky kata dekat grace.

satu bagi tekanan, satu bagi ruang. 

tapi, saya rasa watak stratt ni menarik juga. apa yang dia buat dekat grace tu, bagi saya adalah satu keputusan yang tepat. walaupun kejam, tapi kalau dia tak buat keputusan tu misi ni mungkin tak akan dapat selesai. di mata orang lain mungkin dia nampak jahat. tapi bagi saya, dia jenis orang yang tahu apa yang lebih penting dan apa yang penting bagi dia ialah keselamatan umat manusia.

pada penghujung cerita, saya menarik nafas lega. lega sebab rocky tak jatuh di tangan manusia. dengan sifat yang sesetengah manusia ada, tak hairan kalau rocky dijadikan bahan uji kaji. jadi, ending cerita ni bagi saya, paling sempurna.  

memandangkan movie ni berdasarkan buku novel yang ditulis oleh andy weir, maka ada banyak la perkara yang dah disunting dan tak dimasukkan dalam movie. antaranya, penyebab utama kenapa grace dipilih untuk pergi ke angkasa lepas tu. jadi saya pun beli bukunya untuk dapatkan perincian cerita ni.

untuk project hail mary, saya bagi 5/5!! 

28 April 2026

movie: noktah merah perkahwinan

 https://m.media-amazon.com/images/M/MV5BMWRiNzJjMDYtNjZiOC00MWY2LWJlZjQtOWVjM2QyMmZkZTI2XkEyXkFqcGc@._V1_.jpg

semalam tengok noktah merah perkahwinan. at first, saya tengok sebab ada sheila dara. lepas tengok sore: istri dari masa depan, jadi minat dengan dia. memandangkan memang dah lama nak tengok noktah merah perkahwinan ni, saya pun terus jadi taknak tangguh dah. rasa menyesal tak tengok awal-awal. 

cerita ni mengisahkan pasangan suami isteri, ambar dan gilang, yang tengah ada masalah dalam perkahwinan. permasalahan mereka bukanlah tentang orang ketiga pun, tapi lebih kepada penat secara emosi dan tiada komunikasi yang berkesan.  

yang buatkan saya suka dengan cerita ni ialah dia tak berat sebelah. dua-dua ada salah. ambar, dia nak selesaikan masalah secepat mungkin. gilang pula suka melengahkan takpun lari daripada membahaskan tentang masalah mereka. sampai satu tahap, jadi meletup. lepas dah meletup, tak ada closure langsung dari kedua-dua pihak. akhirnya, jadi lelah. kiranya, komunikasi antara pasangan suami isteri ni tak begitu baik. itu yang menjadi punca tiadanya penyelasaian dalam masalah. lama-lama, makan hati. tapi boleh nampak apa sebab gilang macam tu. barangkali dia jadi fed up yang apa saja dia buat tu mesti salah. dia minta maaf pun ambar masih tak puas hati. tapi di posisi ambar pula, siapa je tak penat kalau benda basic macam empati pun kau kena minta kan?

ada satu babak ni. gilang terlupa sapu ubat dekat bagas, anak dia yang ada masalah kulit. nampak macam hal remeh. tapi bagi ambar, dia macam “kalau benda ni penting, kenapa boleh lupa?” gilang memang mengaku dia terlupa. nampak macam hal kecil kan? tapi sebenarnya impak dia sangat besar yang mana kita boleh tengok di babak yang ke belakang nanti iaitu babak di mana mak mertua dia (ibu gilang) ni perli dia, seolah-olah nak cakap dia tak pandai jaga anak. 

ibu gilang perli ambar
"mamamu malas ya olesin salep" kata ibu mertua ambar. sedangkan ambar dah kata dia dah sapu.
kiranya, kalau nak harapkan ambar sorang yang nak kena ingat untuk sapu ubat dekat anak dia tapi, tak ada usaha dari pihak suaminya juga, memang kesalahan tu nanti ambar sorang je yang kena pikul. you know what i mean? sedangkan bagas tu anak mereka bersama. tapi, kenapa dia seorang saja yang dipersalahkan?

juga, ada satu benda yang saya sangat suka pasal cerita ni iaitu, curang dan menyondol adalah satu pilihan. itu jugala sebab kenapa saya suka watak yuli ni. dia menunjukkan yang manusia ni tiada yang sempurna dan perasaan tu satu fitrah. kita tak boleh nak kawal perasaan kita. kalau hati dah kata suka, nak kata apa lagi kan? tapi yang mendefinisikan diri kita tu ialah tindakan kita. apa yang boleh kita lakukan? kita tahu dia dah berkahwin dah berkeluarga. maka, wajarkah kita untuk mengikut perasaan dan hati? hanya moral, pendirian dan ajaran agama saja yang boleh bantu dan itu yang akan menjadi jawapan kepada definisi tadi.

kalau nak tahu apa tindakan yuli dan apa yang terjadi selanjutnya kena lah tengok. 

cerita ni juga, buat saya mengalir air mata sebab menyentuh emosi. lakonan marsha timothy buatkan kita dapat rasa kelelahan seorang isteri. jalan cerita pun bagi saya sejajar dengan masalah yang mungkin kebanyakan pasangan sudah berkahwin alami dan melalui cerita ni buat kita sedar yang bahawa sesebuah hubungan tu boleh hancur bukan sebab dah tak cinta, tapi sebab tak tahu cara nak handle masalah. kadang-kadang, yang menghancurkan tu bukan benda besar pun. tapi benda kecil yang berulang, tak pernah selesai, dan tak pernah difahami.

apapun, saya rate 4.5/5 untuk cerita ni! 

 

 

25 April 2026

tutorial: buat chatbox sendiri

 

salam rakan-rakan bloggers sekalian! korang nampak tak chatbox dekat sidebar tepi ni? korang pernah tak rasa macam cbox korang boring sebab tak boleh customize? dulu, cbox boleh customize and dia punya design pun simple je. so, korang nak tak buat chatbox sendiri yang korang boleh customize mengikut kehendak korang sendiri? kalau nak, meh saya ajarkan!

korang kena set database untuk simpan mesej-mesej tersebut. kalau tak, nanti korang tak boleh baca mesej orang lain. this is a CRUCIAL step, okay? so, macam mana nak buat? 

pergi ke firebase dan buat account korang.

nanti, dekat firebase tu, korang scroll ke bawah sampai jumpa 'all firebase products'. korang pilih firestore.

 
then nanti, dia akan keluar macam cloud firestore apa tu. korang tekan je get started. then nanti akan keluar macam kat bawah ni
 
 
bila dah keluar macam kat atas, tekan 'create a new firebase project'. korang bagi la nama untuk project korang. also, keep in mind untuk turn off google analytics tu. 
 
dah siap nanti, akan keluar macam gambar di bawah. tekan 'create database'. 

 

now, untuk edition korang select standard. database ID & location tu korang tetapkan lah mana-mana korang nak. for me, promi pilih nam5 (US) yang dia dah pilih secara default. untuk configure, pilih test mode ya. then, create!
 
pastu, pergi ke project overview. dia akan keluar macam di page bawah. then, tekan add apps dan ambil 
</> (web).
 
 
 

register korang punya app tu. letak la nama apa pun. macam ni:
 
 

untuk add firebase sdk, pilih <script> tag. kalau korang perasan, bawah tu dia ada bagi code. copy code tu, simpan dalam notepad dulu. nanti nak guna. yang lain-lain tu, tekan je next sampai la continue to console.
 
code yang akan dapat kalau pilih <script> tag (yang di highlight tu yang penting):
<script type="module">
  // Import the functions you need from the SDKs you need
  import { initializeApp } from "https://www.gstatic.com/firebasejs/12.12.1/firebase-app.js";
  // TODO: Add SDKs for Firebase products that you want to use
  // https://firebase.google.com/docs/web/setup#available-libraries

  // Your web app's Firebase configuration
  const firebaseConfig = {
    apiKey: "UR API",
    authDomain: "UR AUTHDOMAIN",
    projectId: "UR ID",
    storageBucket: "UR STORAGEBUCKET",
    messagingSenderId: "UR SENDERID",
    appId: "UR APPID"
  };


  // Initialize Firebase
  const app = initializeApp(firebaseConfig);
</script> 
 
pergi ke blogger -> layout -> add widget -> html/javascript. copy and paste code di bawah dan isikan maklumat yang di highlight tu dengan maklumat yang korang simpan dari code firebase tadi. then, save.
 
<div class="chatbox">

  <!-- FORM -->
  <div class="chat-form">

    <div class="form-row top">
      <input type="text" id="name" placeholder="name" required />
      <input type="text" id="website" placeholder="link (optional)" />
    </div>

    <div class="form-row bottom">
      <textarea id="message" placeholder="message" required></textarea>
      <button onclick="addMessage()">send</button>
    </div>

  </div>

  <!-- MESSAGES -->
  <div id="messages" class="messages"></div>

</div>

<script type="module">
  import { initializeApp } from "https://www.gstatic.com/firebasejs/10.12.0/firebase-app.js";
  import { 
    getFirestore, collection, addDoc, query, orderBy, onSnapshot, serverTimestamp 
  } from "https://www.gstatic.com/firebasejs/10.12.0/firebase-firestore.js";

  const firebaseConfig = {
    apiKey: "UR API",
    authDomain: "UR AUTHDOMAIN",
    projectId: "UR ID",
    storageBucket: "UR STORAGEBUCKET",
    messagingSenderId: "UR SENDERID",
    appId: "UR APPID"
  };


  const app = initializeApp(firebaseConfig);
  const db = getFirestore(app);

  const messagesDiv = document.getElementById("messages");

  // REAL-TIME LISTENER
  const q = query(collection(db, "messages"), orderBy("time"));

  onSnapshot(q, (snapshot) => {
    messagesDiv.innerHTML = "";

    snapshot.forEach(doc => {
  const data = doc.data();

  const name = data.name || "anon";
  const text = data.text || "";
  const website = data.website || "";

  let time = "";

if (data.time && data.time.toDate) {
  const date = data.time.toDate();

  const datePart = date.toLocaleDateString();
  const timePart = date.toLocaleTimeString([], {
    hour: "2-digit",
    minute: "2-digit",
    hour12: false
  });

  time = `${datePart} ${timePart}`;
}

  messagesDiv.innerHTML += `
    <div class="message">
      <div class="message-name">
        ${website ? `<a href="${website}" target="_blank">${name}</a>` : name}
      </div>

      <div class="message-text">${text}</div>

      <div class="message-time">${time}</div>
    </div>
  `;
});


    messagesDiv.scrollTop = messagesDiv.scrollHeight;
  });

  // SEND MESSAGE
  window.addMessage = async function () {
    const name = document.getElementById("name").value.trim();
    const website = document.getElementById("website").value.trim();
    const message = document.getElementById("message").value.trim();

    if (!name || !message) return;

    await addDoc(collection(db, "messages"), {
      name,
      website,
      text: message,
      time: serverTimestamp()
    });

    document.getElementById("message").value = "";
  };
</script> 


 pergi ke firebase -> firestore -> rules.

 

 

nanti keluar macam dekat bawah ni. 

 

 

delete code tu dan replace dengan code di bawah:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /messages/{doc} {
      allow read, write: if true;
    }
  }
}

 pastu, pergi ke customize template, add css. copy and paste code di bawah dan adjust ikut korang suka.

.chatbox {
  border: 2px double #5f7a2f;
  padding: 8px;
  font-family: 'RainyHearts';
  font-size: 12px;
  width: 84%;
  height: 100px; /* FIXED HEIGHT */
  display: flex;
  flex-direction: column;
}

.chat-form {
  flex-shrink: 0;
  order: 2;
}

.chat-form input,
.chat-form textarea {
  padding: 2px;
  border: 1px solid #5f7a2f;
  font-family: 'RainyHearts';
  font-size: 12px;
  background: transparent;
}

.chat-form textarea {
  height: 20px;
  resize: none;
}

.chat-form button {
  padding: 5px 5px;
  border: 1px solid #5f7a2f;
  background: transparent;
  cursor: pointer;
font-size: 8px;
}

/* message box */
.messages {
  margin-top: 2px;
  flex-grow: 1;
  overflow-y: auto;
  padding-top: 2px;
  order: 1;
height: auto;

}

/* each message */
.message {
  margin-bottom: 5px;
  border-bottom: 1px dotted #5f7a2f;
  padding-bottom: 2px;
}

.message-name {
  font-weight: bold;
}

.message-time {
  font-size: 10px;
  opacity: 0.7;
}
.form-row {
  display: flex;
  gap: 4px;
margin-bottom: 2px;
}

/* name + link */
.form-row.top input {
  width: 45%;
}

/* message + button */
.form-row.bottom textarea {
  flex-grow: 1;
  height: 20px;
width: 10px
}

.form-row.bottom button {
  width: 30px;
  font-size: 8px;

 ctrl+f dekat kotak code korang then cari </head>. copy and paste code di bawah atas </head>:

   <script>
function addMessage() {
  const name = document.getElementById(&quot;name&quot;).value.trim();
  const website = document.getElementById(&quot;website&quot;).value.trim();
  const message = document.getElementById(&quot;message&quot;).value.trim();

  if (!name || !message) {
    alert(&quot;name and message required&quot;);
    return;
  }

  const time = new Date().toLocaleString();

  const newMsg = { name, website, message, time };

  let messages = JSON.parse(localStorage.getItem(&quot;chatMessages&quot;)) || [];
  messages.unshift(newMsg); // newest on top
  localStorage.setItem(&quot;chatMessages&quot;, JSON.stringify(messages));

  displayMessages();

  document.getElementById(&quot;name&quot;).value = &quot;&quot;;
  document.getElementById(&quot;website&quot;).value = &quot;&quot;;
  document.getElementById(&quot;message&quot;).value = &quot;&quot;;
}

window.onload = displayMessages;
</script> 

and voila. siap!
 

 

24 April 2026

segmen pencarian bloglist Aynorablogs.com tahun 2026

 

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpG-5Jq_T5keG-t_deaW9nt3qr0AZwr1fPOeu5LhdpYO5QIANuLU2Xu6Xwusuh5vq2Hnw9BKjpbLm65Djhj4ohxuILsdmTVfgNHTU697hJycXwrT0f0tM9IZvvlXVQrW6ue6P4sDaOCXcEc7Id2Ua7ud5gQ78jo7kwbiw-K1yvIhuWLRyoJmNKvo-3JF8/w640-h360/1373.png

dah lama sangat tak join mana-mana segmen. setelah bertahun lamanya, akhirnya terdetik hati nak join. ini pun sebab kebetulan tengah blogwalking blog rakan blogger yang lain lepastu terjumpa post pasal segmen ni. apa lagi? terus lah terjah blog kak Aynora. hehe. 

kalau nak join, boleh tekan banner di atas. di bawah juga ada cara penyertaan yang ditulis oleh kak Aynora untuk segmen ni.

cara penyertaan: 

  1. Salin banner di bawah dan letakkan dalam entry anda. Kemudian backlink kan ke blog kak Aynora. 
  2. Ceritakan sedikit apakah korang pernah blogwalking kat blog kak Aynora? 
  3. Senarai blogger yang join akan disediakan dan anda yang rajin blogwalking bolehlah terjah blog yang berkenaan.
  4. Tempoh segmen berlangsung dari 1 Mei - 31 Disember 2026. 

 

selamat berjaya! 

 

 

want to pursue biotechnology after spm?

dear adik-adik lepasan spm semua.

are you interested in pursuing biotechnology but you don’t know if it’s worth it? let me spill the beans to help you guys think about it!

so, what is biotechnology, you may ask (or you may not because you already know it). the short answer is: the use of living things or biological systems to develop products and technologies that improve human life. but in other words, you use living organisms OR their biological processes to improve how we live. improve is the keyword that i want to emphasize. and when i say “use living things”, it’s not just about randomly modifying everything like in movies. it can be using bacteria, yeast, enzymes, or even cells, and applying controlled biological processes like fermentation, genetic engineering, or diagnostics to produce useful stuff.

the simple example i can give is yogurt and cheese. these products involve bacteria (and sometimes enzymes too in cheese-making). in yogurt, bacteria ferment lactose into lactic acid, which gives that sour taste and texture. through controlled processes like this, we get yogurt and cheese, which we then use in food, flavouring, etc. but of course biotechnology is not all about food.

we can also do cloning, make vaccines, develop medicines, work on diagnostics, or even create technologies using biological systems. biotechnologists can go into numerous sectors. the main ones would be agricultural, environmental, industrial, and medical/healthcare.

you can choose which path you like the most.

if you are interested in improving agricultural output like paddy to increase food security, you can go for agriculture. this is where you work on things like crop improvement, disease resistance, or yield enhancement.

if your main concern is the environment, then you’ll probably enjoy environmental biotech more. this is where you look into things like biodegradable plastics, waste treatment, or reducing pollution using biological methods.

if you’re more into industry, then you’ll likely end up in manufacturing-related roles, quality control, or quality assurance. here, your job is basically making sure products follow strict guidelines and regulations (both local and international). you might also get involved in research and development or industrial lab operations.

lastly is medicine / healthcare.

i think most of you who take biotechnology imagine working in a lab. and yes, this is one of the paths. but it’s not only “lab all day every day” like people think. you can become a microbiologist, lab technologist, lab assistant, or even go into clinical research or pharmaceutical-related roles. in hospital labs, you may handle patient samples like blood or tissues, and analyse them to detect abnormalities. from there, findings contribute to diagnosis and treatment decisions. you can also go into vaccine development, drug research, or genetic work involving genetically modified organisms (GMOs), like improving crops or studying traits for better yield or quality. there’s actually a lot more, but i’ll leave it at that.

so, now you’ve got the gist of it. you may wonder: what about the job market? is it high demand? easy to get a job?

well, based on my current situation, i am struggling to find a job related to my field. yikes.

but to be fair, it’s not just about the degree. unless you are really strong academically, consistently performing, or you have solid hands-on skills (like PCR, cell culture, lab techniques, GMP knowledge, etc.), it can be competitive. a lot of graduates are competing for similar entry-level roles. so, make sure you are actually interested in it and not only because you imagine yourself wearing a lab coat and looking cool in a lab, yeah.

also, i must let you guys know that if you want to work in a lab, don’t expect perfect work-life balance all the time. lab work involves protocols, precision, waiting time, and sometimes experiments that take hours or days to show results. some cells are very sensitive, so conditions like temperature, timing, and contamination control matter a lot. you have to be disciplined, precise, and very attentive to details. and even then, results don’t always go your way. you’ll repeat methods, troubleshoot, fail, adjust, and try again. that’s just how it is. but of course, you also learn from it. you note what works, what doesn’t, and improve your methods over time.

so in conclusion, make sure you’re truly keen. the job market in malaysia is competitive in this field. you can aim for companies like b. braun, boston scientific, fisher, and others, but you’ll also be competing with other strong candidates.

you can always opt for working overseas, but of course, sometimes you just want to stay close to your loved ones. in the end, it’s all up to you.

that’s all! all the best for your endeavours.

 

i can't sleep

i'm so happy with the new look of my blog. these past few days, i've been in front of my laptop, revamping my blog just to kill time. i wanted to enjoy my unemployment era as much as i can. it's fun, but the moment i realize there's no money in my bank account, the pressure starts to take over my mind and i begin to feel stressed.

i feel like venting out, especially about how i feel like a burden to my parents. but i think what i feel is a bit too personal to overshare here. all i can say is that i've tried my best applying for jobs. i can only think positively so as not to let it bother me too much to the point it can drives me insane. but, even though i try, i can't help but to think about it so much. particularly about how in two years, i will be twenty-five. time is going fast, and everyone is moving on. it's linear though our experience in life is not. no matter in what dire situation you're in, if you don't get up fast enough, you're left behind. that's exactly how i feel nowadays.

a lot of people may have felt the same way i do and have been in the same place at one point in their life, so that thought brings me some kind of relief knowing that i am not alone. the difference now is, they eventually got through it and are now at a different stage in life. this leaves me wondering, when i will reach that point, how long will it take, and will i be strong enough to wait and persevere?

 and so, i thought, it's best to leave everything to Allah. the Almighty and the Most Merciful.