<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Study on Ben&#39;s Blog</title>
    <link>https://jinpeng.cv/en/tags/study/</link>
    <description>Recent content in Study on Ben&#39;s Blog</description>
    <generator>Hugo -- 0.154.0</generator>
    <language>en</language>
    <copyright>©️ 2025 Ben</copyright>
    <lastBuildDate>Mon, 09 Mar 2026 22:26:59 -0600</lastBuildDate>
    <atom:link href="https://jinpeng.cv/en/tags/study/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>2026-01-14</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-14/</link>
      <pubDate>Wed, 14 Jan 2026 23:33:59 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-14/</guid>
      <description>&lt;p&gt;I didn&amp;rsquo;t sleep very well last night, so I felt quite &lt;strong&gt;groggy&lt;/strong&gt; when I woke up today.&lt;/p&gt;
&lt;p&gt;Despite the tiredness, it was a very &lt;strong&gt;fulfilling day&lt;/strong&gt; of study. I spent the entire day reading literature and recorded my thoughts and to-do items in my &lt;strong&gt;weekly log&lt;/strong&gt; (&lt;a href=&#34;../weekly/2026-W03.md&#34;&gt;2026-W03&lt;/a&gt;). I also managed to submit my assignments. In the morning, I grabbed a coffee with Dr. Zhao. During lunch with Luis, Amir, and Dr. Zhao, we ran into Zheng, and I introduced everyone. Without realizing it, I’ve once again become the &lt;strong&gt;central hub&lt;/strong&gt; and a &lt;strong&gt;bridge&lt;/strong&gt; for connecting different people in the group.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I didn&rsquo;t sleep very well last night, so I felt quite <strong>groggy</strong> when I woke up today.</p>
<p>Despite the tiredness, it was a very <strong>fulfilling day</strong> of study. I spent the entire day reading literature and recorded my thoughts and to-do items in my <strong>weekly log</strong> (<a href="../weekly/2026-W03.md">2026-W03</a>). I also managed to submit my assignments. In the morning, I grabbed a coffee with Dr. Zhao. During lunch with Luis, Amir, and Dr. Zhao, we ran into Zheng, and I introduced everyone. Without realizing it, I’ve once again become the <strong>central hub</strong> and a <strong>bridge</strong> for connecting different people in the group.</p>
<p>For dinner, I made some vegetables in a <strong>sour broth</strong> (Suantang), which was delicious. Afterward, I started working on some code to implement an <strong>all-in-one workflow</strong> for my assignments using <strong>Quarto</strong>.</p>
<p>On a side note, I found a discarded chair near the garbage station this morning and decided to <strong>salvage</strong> it. Also, after seeing that my roommate had left the bathroom messy again, I finally hit my limit and <strong>sent him a message</strong> to address the issue.</p>
<div class="encrypted-content" data-cipher="pio552h5b6X5LiN5piv54m55Yir5aW977yM5LuK5aSp6LW35bqK5Zuw5Zuw55qE44CCPC9wPgo8cD7ku4rlpKnlrabkuaDmr5TovoPlhYXlrp7vvIznnIvkuobkuIDmlbTlpKnnmoTmlofnjK4s5YaZ5LqG5LiA5Lqb5oOz5rOV5ZKM5Luj5Yqe5ZyoIDxhIGhyZWY9Ii9lbi9kaWFyeS8yMDI2L2phbnVhcnkvLi4vd2Vla2x5LzIwMjYtVzAzIj4yMDI2LVcwMzwvYT7vvIznhLblkI7miorkvZzkuJrmj5DkuqTkuobjgILml6nkuIrlkowgRHIgWmhhbyDljrvkubDkuobmna/lkpbllaHjgILkuK3ljYjlkowgTHVpcyBBbWlyLCBaaGFvIOS4gOi1t&#43;WQg&#43;mlre&#43;8jOeisOWIsOaUv&#43;&#43;8jOS7i&#43;e7jeS6huS7luS7rOS4gOi1t&#43;iupOivhuOAguS4jeefpeS4jeinie&#43;8jOaIkeWPiOWPmOaIkOS6huWkp&#43;WutueahOS4reW/g&#43;WSjOiupOivhuWFtuS7luS6uueahOahpeaigeOAgjwvcD4KPHA&#43;5pma5LiK5Zue5a626YW45rGk54Wu5LqG6JSs6I&#43;c77yM6Z2e5bi45aW95ZCD44CC54S25ZCO5byA5aeL5YaZ5Luj56CB5a6e546w5L2c5Lia5ZyoIHF1YXJ0byDph4zpnaLnmoTkuIDnq5nlvI/lrozmiJDjgII8L3A&#43;CjxwPuWvueS6hu&#43;8jOaXqeS4iuWHuumXqOWcqOWeg&#43;WcvuermeaXgei&#43;ueaNoeS6huS4quakheWtkOOAguaZmuS4iueci&#43;WIsOWupOWPi&#43;WPiOaKiuWNq&#43;eUn&#43;mXtOW8hOiEj&#43;S6hu&#43;8jOe7iOS6juW/jeS4jeS9j&#43;WSjOS7luWPkea2iOaBr&#43;ivtOS6huOAgjwvcD4KPHA&#43;55pma" data-hint="Content Here is Encrypted" data-error="Password Error">
  <div class="locked-state">
    <p>🔒 Content Here is Encrypted</p>
    <div class="password-prompt">
      <div class="password-input-wrapper">
        <input type="password" class="password-input"
               placeholder="Please input password"
               id="pwd-input-0"
               aria-label="加密内容密码">
        <button type="button"
                class="toggle-visibility-btn"
                aria-pressed="false"
                aria-label="显示或隐藏密码"
                onclick="toggleVisibility(this, 'pwd-input-0')">
          <svg class="icon icon-eye-open" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M12 5C6 5 2 12 2 12s4 7 10 7 10-7 10-7-4-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-6a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z"/>
          </svg>
          <svg class="icon icon-eye-closed" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M3.5 4.5 2 6l3.2 3.2A13 13 0 0 0 2 12s4 7 10 7a9.7 9.7 0 0 0 4.7-1.2L18 19l2.5 2.5 1.5-1.5-18-18Zm8.5 12c-5.1 0-8-4-8-4a11 11 0 0 1 2.6-2.9l1.6 1.6a4 4 0 0 0 5.2 5.2l1.6 1.6A7.7 7.7 0 0 1 12 16.5Zm8-4.5a12.5 12.5 0 0 0-4.2-3.6l1.6-1.6A13.6 13.6 0 0 1 22 12s-1.1 2-3 4.1l-1.4-1.4A11.2 11.2 0 0 0 20 12Z"/>
          </svg>
        </button>
      </div>
      <button class="decrypt-btn" onclick="decryptContent(event, 'pwd-input-0')">
        Unlock
      </button>
    </div>
    <div class="status-message"></div>
  </div>
  <div class="decrypted-content markdown-body" hidden></div>
</div>



<style>
.encrypted-content {
  border: 1px solid #878787;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  transition: all 0.3s ease;
}

.encrypted-content.unlocked {
  border: none;
  padding: 0;
  margin: 0;
   
  background-image: radial-gradient(rgba(50, 0, 0, 0.1) 1px, transparent 0) !important;
  background-size: 10px 10px;
   
}

.password-prompt {
  display: flex;
  gap: 0.75rem;
  margin: 1rem 0;
}

.password-input-wrapper {
  position: relative;
  flex: 3;
}

.password-input {
  width: 100%;
  min-width: 150px;
  padding: 0.75rem;
  padding-right: 2.5rem;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}

.password-input.error {
  border-color: #dc3545;
}

.toggle-visibility-btn {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  line-height: 0;
  padding: 0;
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toggle-visibility-btn .icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}

.toggle-visibility-btn .icon-eye-closed {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-open {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-closed {
  display: block;
}

.decrypt-btn {
   
  background-color: var(--primary, #1e90ff);
  color: var(--theme, #fff);
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: opacity 0.3s;
  font-weight: 500;
  flex: 1;
}

.decrypt-btn:hover {
  opacity: 0.9;
}


.status-message {
  color: #6c757d;
  font-size: 0.9em;
  min-height: 1.2em;
}

.status-message.error {
  color: #dc3545;
}
</style>

<script>
  function toggleVisibility(btn, inputId) {
    const input = document.getElementById(inputId);
    const isPwd = input.type === 'password';
    input.type = isPwd ? 'text' : 'password';
    btn.setAttribute('aria-pressed', String(isPwd));
    btn.classList.toggle('is-visible', isPwd);
  }

  function decryptContent(event, inputId) {
    event.preventDefault();
    const input = document.getElementById(inputId);
    const container = input.closest('.encrypted-content');
    const statusEl = container.querySelector('.status-message');
    const decryptedContent = container.querySelector('.decrypted-content');
  
    statusEl.textContent = '';
    statusEl.classList.remove('error');
    input.classList.remove('error');
  
    
    const today = new Date();
    const mmdd = String(today.getUTCMonth() + 1).padStart(2, '0') + String(today.getUTCDate()).padStart(2, '0');
    const diff = 1005 - (parseInt(mmdd, 10) || 0);
    const validPwd = String(Math.abs(diff)).padStart(4, '0');
  
    if (input.value !== validPwd) {
      input.classList.add('error');
      statusEl.textContent = container.dataset.error || '';
      statusEl.classList.add('error');
      input.focus();
      return;
    }
  
    try {
      let cipherText = container.dataset.cipher.replace(/\s+/g, '');
  
      
      
      
      
      
      
      
      
      
      if (cipherText.length > 12) {
        const part1 = cipherText.slice(0, 3);               
        const part2 = cipherText.slice(3, -9);              
        const part3 = cipherText.slice(-9, -4);             
        const part4 = cipherText.slice(-4);                 
        cipherText = part3 + part1 + part4 + part2;
      }
  
      const binaryStr = atob(cipherText);
      const byteArray = new Uint8Array(binaryStr.length);
      for (let i = 0; i < binaryStr.length; i++) {
        byteArray[i] = binaryStr.charCodeAt(i);
      }
  
      const decoded = new TextDecoder("utf-8").decode(byteArray);
      const fragment = document.createRange().createContextualFragment(decoded);
  
      decryptedContent.innerHTML = '';
      decryptedContent.appendChild(fragment);
  
      container.querySelector('.locked-state').hidden = true;
      decryptedContent.hidden = false;
      container.classList.add('unlocked');
  
    } catch (e) {
      console.error(e);
      statusEl.textContent = 'Decode Failed: ' + e.message;
      statusEl.classList.add('error');
    }
  }
  
  document.addEventListener('DOMContentLoaded', () => {
    document.querySelectorAll('.password-input').forEach(input => {
      input.addEventListener('keypress', e => {
        if (e.key === 'Enter') {
          decryptContent(e, input.id);
        }
      });
    });
  });
  
</script>

]]></content:encoded>
    </item>
    <item>
      <title>2026-01-05</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-05/</link>
      <pubDate>Mon, 05 Jan 2026 21:39:11 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-05/</guid>
      <description>&lt;p&gt;Today marked the start of the winter semester, and with it, the return to a tense and busy academic life.&lt;/p&gt;
&lt;p&gt;We had a small group meeting at noon with Dr. Liu serving as today&amp;rsquo;s chair. We shared stories about our holidays and discussed our resolutions for the new year.&lt;/p&gt;
&lt;p&gt;I shared my four main goals for the year:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;To continue improving my English and become a more confident speaker.&lt;/li&gt;
&lt;li&gt;To learn the ropes of academic research and strive to complete one or two first drafts by the end of the year.&lt;/li&gt;
&lt;li&gt;To travel to another Canadian province.&lt;/li&gt;
&lt;li&gt;To save up enough money to buy a new laptop.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In the afternoon, Dr. Zhao invited me to his office to discuss my future plans. He suggested two research directions: RFID technology and concrete energy storage. Both sound fascinating to me. I need to start carving out time to read the literature and learn as much as possible from the senior students (my &lt;em&gt;shixiong&lt;/em&gt;) while they are still here.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Today marked the start of the winter semester, and with it, the return to a tense and busy academic life.</p>
<p>We had a small group meeting at noon with Dr. Liu serving as today&rsquo;s chair. We shared stories about our holidays and discussed our resolutions for the new year.</p>
<p>I shared my four main goals for the year:</p>
<ol>
<li>To continue improving my English and become a more confident speaker.</li>
<li>To learn the ropes of academic research and strive to complete one or two first drafts by the end of the year.</li>
<li>To travel to another Canadian province.</li>
<li>To save up enough money to buy a new laptop.</li>
</ol>
<p>In the afternoon, Dr. Zhao invited me to his office to discuss my future plans. He suggested two research directions: RFID technology and concrete energy storage. Both sound fascinating to me. I need to start carving out time to read the literature and learn as much as possible from the senior students (my <em>shixiong</em>) while they are still here.</p>
<p>Later, Amir and I attended the orientation for new winter intake students. We were pleasantly surprised to find that they provided a complimentary meal!</p>
<p>However, I realized once again that I truly dislike social settings where you have to sit and chat with strangers—even with other Chinese students. It might just be my personality; I simply don&rsquo;t have much desire to dive into other people&rsquo;s lives.</p>
<div class="encrypted-content" data-cipher="LuK5Yas5a2j5a2m5pyf5byA5aeL5LqG77yM5Y&#43;I6KaB5byA5aeL57Sn5byg5b&#43;Z56KM55qE5a2m5Lmg55Sf5rS75LqG44CCPC9wPgo8cD7kuK3ljYjlvIDkvJrkurrkuI3lpJrvvIxEci4gTGl1IOS9nOS4uuS7iuWkqeeahOS4u&#43;W4reOAguWIhuS6q&#43;S6huWQhOiHqueahOWBh&#43;aXpe&#43;8jOS7peWPiuWvueS7iuW5tOeahOiuoeWIkuOAgjwvcD4KPHA&#43;5oiR5YiG5Lqr5LqG5oiR55qE5Zub5Liq6K6h5YiS77yaPC9wPgo8b2w&#43;CjxsaT7nu6fnu63lrabkuaDoi7Hor63vvIzmm7TliqDoh6rkv6HnmoTor7Toi7Hor608L2xpPgo8bGk&#43;5a2m5Lmg5LqG6Kej5aaC5L2V5YGa56eR56CU77yM5LqJ5Y&#43;W5bm05bqV5YaZ5Ye6IDEg6Iez5Lik56&#43;H5Yid56i/PC9saT4KPGxpPuWOu&#43;WIsOWKoOaLv&#43;Wkp&#43;WPpuWkluS4gOS4quW3nuaXheihjDwvbGk&#43;CjxsaT7mlJLpkrHkubDkuIDlj7DnrJTorrDmnKznlLXohJE8L2xpPgo8L29sPgo8cD7kuIvljYjnmoTml7blgJnvvIxEci4gWmhhbyDlj6vmiJHljrvku5bnmoTlip7lhazlrqTosIjkuobosIjmiJHmnKrmnaXnmoTmiZPnrpfjgILnu5nmiJHlu7rorq7kuobkuKTkuKrmlrnlkJHvvIzkuIDkuKogUkZJRCDlkozmt7flh53lnJ/lgqjog73jgILmiJHop4nlvpfpg73pnZ7luLjlpb3vvIzmiJHkuZ/opoHlvIDlp4vmir3ml7bpl7TlvIDlp4vpmIXor7vmlofnjK7kuobjgILotoHnnYDluIjlhYTku5bku6zov5jlnKjotbbntKflpJrlkJHku5bku6zlrabkuaDjgII8L3A&#43;CjxwPuWbnuadpeWQjuWSjCBBbWlyIOS4gOi1t&#43;WOu&#43;S6huWGrOWto&#43;WFpeWtpuaWsOeUn&#43;eahCBvcmllbnRhdGlvbu&#43;8jOWQjumdouaJjeWPkeeOsOacieaPkOS&#43;m&#43;mkkOmjn&#43;OAgjwvcD4KPHA&#43;5oiR55yf5piv5omT5b&#43;D55y86YeM5LiN5Zac5qyi6L&#43;Z56eN5ZKM6ZmM55Sf55qE5Lq65Z2Q5LiA6LW36IGK5aSp55qE5Zy65ZCI77yM6YKj5oCV5ZKM5Lit5Zu95Lq65Lmf5LiN5oS/5oSP44CC6L&#43;Z5oiW6K645piv5oiR55qE5oCn5qC85L2/54S277yM5oiR5LiN5oOz5LqG6Kej5Yir5Lq644CCPC9wPgo=PHA&#43;55aSp" data-hint="解锁中文版本" data-error="Password Error">
  <div class="locked-state">
    <p>🔒 解锁中文版本</p>
    <div class="password-prompt">
      <div class="password-input-wrapper">
        <input type="password" class="password-input"
               placeholder="Please input password"
               id="pwd-input-0"
               aria-label="加密内容密码">
        <button type="button"
                class="toggle-visibility-btn"
                aria-pressed="false"
                aria-label="显示或隐藏密码"
                onclick="toggleVisibility(this, 'pwd-input-0')">
          <svg class="icon icon-eye-open" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M12 5C6 5 2 12 2 12s4 7 10 7 10-7 10-7-4-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-6a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z"/>
          </svg>
          <svg class="icon icon-eye-closed" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M3.5 4.5 2 6l3.2 3.2A13 13 0 0 0 2 12s4 7 10 7a9.7 9.7 0 0 0 4.7-1.2L18 19l2.5 2.5 1.5-1.5-18-18Zm8.5 12c-5.1 0-8-4-8-4a11 11 0 0 1 2.6-2.9l1.6 1.6a4 4 0 0 0 5.2 5.2l1.6 1.6A7.7 7.7 0 0 1 12 16.5Zm8-4.5a12.5 12.5 0 0 0-4.2-3.6l1.6-1.6A13.6 13.6 0 0 1 22 12s-1.1 2-3 4.1l-1.4-1.4A11.2 11.2 0 0 0 20 12Z"/>
          </svg>
        </button>
      </div>
      <button class="decrypt-btn" onclick="decryptContent(event, 'pwd-input-0')">
        Unlock
      </button>
    </div>
    <div class="status-message"></div>
  </div>
  <div class="decrypted-content markdown-body" hidden></div>
</div>



<style>
.encrypted-content {
  border: 1px solid #878787;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  transition: all 0.3s ease;
}

.encrypted-content.unlocked {
  border: none;
  padding: 0;
  margin: 0;
   
  background-image: radial-gradient(rgba(50, 0, 0, 0.1) 1px, transparent 0) !important;
  background-size: 10px 10px;
   
}

.password-prompt {
  display: flex;
  gap: 0.75rem;
  margin: 1rem 0;
}

.password-input-wrapper {
  position: relative;
  flex: 3;
}

.password-input {
  width: 100%;
  min-width: 150px;
  padding: 0.75rem;
  padding-right: 2.5rem;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}

.password-input.error {
  border-color: #dc3545;
}

.toggle-visibility-btn {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  line-height: 0;
  padding: 0;
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toggle-visibility-btn .icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}

.toggle-visibility-btn .icon-eye-closed {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-open {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-closed {
  display: block;
}

.decrypt-btn {
   
  background-color: var(--primary, #1e90ff);
  color: var(--theme, #fff);
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: opacity 0.3s;
  font-weight: 500;
  flex: 1;
}

.decrypt-btn:hover {
  opacity: 0.9;
}


.status-message {
  color: #6c757d;
  font-size: 0.9em;
  min-height: 1.2em;
}

.status-message.error {
  color: #dc3545;
}
</style>

<script>
  function toggleVisibility(btn, inputId) {
    const input = document.getElementById(inputId);
    const isPwd = input.type === 'password';
    input.type = isPwd ? 'text' : 'password';
    btn.setAttribute('aria-pressed', String(isPwd));
    btn.classList.toggle('is-visible', isPwd);
  }

  function decryptContent(event, inputId) {
    event.preventDefault();
    const input = document.getElementById(inputId);
    const container = input.closest('.encrypted-content');
    const statusEl = container.querySelector('.status-message');
    const decryptedContent = container.querySelector('.decrypted-content');
  
    statusEl.textContent = '';
    statusEl.classList.remove('error');
    input.classList.remove('error');
  
    
    const today = new Date();
    const mmdd = String(today.getUTCMonth() + 1).padStart(2, '0') + String(today.getUTCDate()).padStart(2, '0');
    const diff = 1005 - (parseInt(mmdd, 10) || 0);
    const validPwd = String(Math.abs(diff)).padStart(4, '0');
  
    if (input.value !== validPwd) {
      input.classList.add('error');
      statusEl.textContent = container.dataset.error || '';
      statusEl.classList.add('error');
      input.focus();
      return;
    }
  
    try {
      let cipherText = container.dataset.cipher.replace(/\s+/g, '');
  
      
      
      
      
      
      
      
      
      
      if (cipherText.length > 12) {
        const part1 = cipherText.slice(0, 3);               
        const part2 = cipherText.slice(3, -9);              
        const part3 = cipherText.slice(-9, -4);             
        const part4 = cipherText.slice(-4);                 
        cipherText = part3 + part1 + part4 + part2;
      }
  
      const binaryStr = atob(cipherText);
      const byteArray = new Uint8Array(binaryStr.length);
      for (let i = 0; i < binaryStr.length; i++) {
        byteArray[i] = binaryStr.charCodeAt(i);
      }
  
      const decoded = new TextDecoder("utf-8").decode(byteArray);
      const fragment = document.createRange().createContextualFragment(decoded);
  
      decryptedContent.innerHTML = '';
      decryptedContent.appendChild(fragment);
  
      container.querySelector('.locked-state').hidden = true;
      decryptedContent.hidden = false;
      container.classList.add('unlocked');
  
    } catch (e) {
      console.error(e);
      statusEl.textContent = 'Decode Failed: ' + e.message;
      statusEl.classList.add('error');
    }
  }
  
  document.addEventListener('DOMContentLoaded', () => {
    document.querySelectorAll('.password-input').forEach(input => {
      input.addEventListener('keypress', e => {
        if (e.key === 'Enter') {
          decryptContent(e, input.id);
        }
      });
    });
  });
  
</script>

]]></content:encoded>
    </item>
    <item>
      <title>2026-01-03</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-03/</link>
      <pubDate>Sat, 03 Jan 2026 23:08:47 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-03/</guid>
      <description>&lt;p&gt;I slept in again this morning.&lt;/p&gt;
&lt;p&gt;Fortunately, I studied two chapters of &lt;a href=&#34;../../../posts/note/note_202601021615.md&#34;&gt;Writing Academic English&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Because my bed and desk are not suitable, my shoulders get sore when I sit in front of them for a long time.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I slept in again this morning.</p>
<p>Fortunately, I studied two chapters of <a href="../../../posts/note/note_202601021615.md">Writing Academic English</a>.</p>
<p>Because my bed and desk are not suitable, my shoulders get sore when I sit in front of them for a long time.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2026-01-02</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-02/</link>
      <pubDate>Fri, 02 Jan 2026 22:49:34 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-02/</guid>
      <description>&lt;p&gt;I slept in this morning again.&lt;/p&gt;
&lt;p&gt;I went to school for studying After I finished my lunch.&lt;/p&gt;
&lt;p&gt;I made a eggplant with pork for dinner, and called my family this evening. After that, I teach Huan to use Mastodon.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I slept in this morning again.</p>
<p>I went to school for studying After I finished my lunch.</p>
<p>I made a eggplant with pork for dinner, and called my family this evening. After that, I teach Huan to use Mastodon.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-12-29</title>
      <link>https://jinpeng.cv/en/diary/2025/december/2025-12-29/</link>
      <pubDate>Mon, 29 Dec 2025 23:31:35 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/december/2025-12-29/</guid>
      <description>&lt;p&gt;I didn&amp;rsquo;t do much today. I just read &lt;em&gt;Writing Academic English&lt;/em&gt; and &lt;em&gt;Grammar in Use&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve been gradually getting into the rhythm of studying at home.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I didn&rsquo;t do much today. I just read <em>Writing Academic English</em> and <em>Grammar in Use</em>.</p>
<p>I&rsquo;ve been gradually getting into the rhythm of studying at home.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-12-28</title>
      <link>https://jinpeng.cv/en/diary/2025/december/2025-12-28/</link>
      <pubDate>Sun, 28 Dec 2025 23:12:25 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/december/2025-12-28/</guid>
      <description>&lt;p&gt;I still got up pretty late today, but at least I studied more than I did yesterday.&lt;/p&gt;
&lt;p&gt;For lunch I had porridge and stir‑fried edamame with pork. For dinner I had instant noodles and some shredded pancake.&lt;/p&gt;
&lt;p&gt;I watched a video today. I’ve always agreed with its main message, but seeing it again still served as a reminder.&lt;/p&gt;
&lt;p&gt;Coming from a poor family, having the chance to study like this isn’t easy. I should cherish it, work hard, and not waste the opportunity.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I still got up pretty late today, but at least I studied more than I did yesterday.</p>
<p>For lunch I had porridge and stir‑fried edamame with pork. For dinner I had instant noodles and some shredded pancake.</p>
<p>I watched a video today. I’ve always agreed with its main message, but seeing it again still served as a reminder.</p>
<p>Coming from a poor family, having the chance to study like this isn’t easy. I should cherish it, work hard, and not waste the opportunity.</p>
<p>My roommate came back today.</p>
<div class="encrypted-content" data-cipher="XkgbW1hdGUgaW5mb3JtZWQgbWUgdG8gY29tcHV0ZSBEZWNlbWJlciBhbmQgSmFudWFyeSBiaWxsLiBJIHNhaWQgb2ssIGFuZCB0aGVuIGhlIHVzZWQgaGlzIHBob25lIHRvIHNlbmQgbWUgdGhlIHNjcmVlbnNob3Qgb2YgcmVzdWx0LiBJIHRob3VnaHQgaGUgc2FpZCBoZSB3b3VsZCBnbyB0byBoaXMgY2xhc3NtYXRlJnJzcXVvO3Mgcm9vbSBmb3IgY2FyaW5nIGEgY2F0LCBzbyBoZSBzaG91bGRuJnJzcXVvO3QgcGF5IHRoZSBlbGVjdHJvbmljIGZlZSB0aGlzIG1vbnRoLiBUaGVyZWZvcmUsIEkgYXNrZWQgaGltIHRvIGdldCB0aGUgYmlsbHMuPC9wPgo8cD5JIGZvdW5kIGhlIGNvbXB1dGUgU2VwdGVtYmVyIHR3aWNlIGFuZCBwb2ludGVkIHRoaXMsIGJ1dCBoZSBkaWRuJnJzcXVvO3QgYXBvbG9naXplIHRvIG1lLiBJIHRoaW5rIGhlIHNob3VsZCBkbyB0aGF0LCBpZiBJIHdlcmUgaGltLjwvcD4KPHA&#43;Tcm9v" data-hint="Content Here is Encrypted" data-error="Password Error">
  <div class="locked-state">
    <p>🔒 Content Here is Encrypted</p>
    <div class="password-prompt">
      <div class="password-input-wrapper">
        <input type="password" class="password-input"
               placeholder="Please input password"
               id="pwd-input-0"
               aria-label="加密内容密码">
        <button type="button"
                class="toggle-visibility-btn"
                aria-pressed="false"
                aria-label="显示或隐藏密码"
                onclick="toggleVisibility(this, 'pwd-input-0')">
          <svg class="icon icon-eye-open" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M12 5C6 5 2 12 2 12s4 7 10 7 10-7 10-7-4-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-6a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z"/>
          </svg>
          <svg class="icon icon-eye-closed" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M3.5 4.5 2 6l3.2 3.2A13 13 0 0 0 2 12s4 7 10 7a9.7 9.7 0 0 0 4.7-1.2L18 19l2.5 2.5 1.5-1.5-18-18Zm8.5 12c-5.1 0-8-4-8-4a11 11 0 0 1 2.6-2.9l1.6 1.6a4 4 0 0 0 5.2 5.2l1.6 1.6A7.7 7.7 0 0 1 12 16.5Zm8-4.5a12.5 12.5 0 0 0-4.2-3.6l1.6-1.6A13.6 13.6 0 0 1 22 12s-1.1 2-3 4.1l-1.4-1.4A11.2 11.2 0 0 0 20 12Z"/>
          </svg>
        </button>
      </div>
      <button class="decrypt-btn" onclick="decryptContent(event, 'pwd-input-0')">
        Unlock
      </button>
    </div>
    <div class="status-message"></div>
  </div>
  <div class="decrypted-content markdown-body" hidden></div>
</div>



<style>
.encrypted-content {
  border: 1px solid #878787;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  transition: all 0.3s ease;
}

.encrypted-content.unlocked {
  border: none;
  padding: 0;
  margin: 0;
   
  background-image: radial-gradient(rgba(50, 0, 0, 0.1) 1px, transparent 0) !important;
  background-size: 10px 10px;
   
}

.password-prompt {
  display: flex;
  gap: 0.75rem;
  margin: 1rem 0;
}

.password-input-wrapper {
  position: relative;
  flex: 3;
}

.password-input {
  width: 100%;
  min-width: 150px;
  padding: 0.75rem;
  padding-right: 2.5rem;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}

.password-input.error {
  border-color: #dc3545;
}

.toggle-visibility-btn {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  line-height: 0;
  padding: 0;
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toggle-visibility-btn .icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}

.toggle-visibility-btn .icon-eye-closed {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-open {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-closed {
  display: block;
}

.decrypt-btn {
   
  background-color: var(--primary, #1e90ff);
  color: var(--theme, #fff);
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: opacity 0.3s;
  font-weight: 500;
  flex: 1;
}

.decrypt-btn:hover {
  opacity: 0.9;
}


.status-message {
  color: #6c757d;
  font-size: 0.9em;
  min-height: 1.2em;
}

.status-message.error {
  color: #dc3545;
}
</style>

<script>
  function toggleVisibility(btn, inputId) {
    const input = document.getElementById(inputId);
    const isPwd = input.type === 'password';
    input.type = isPwd ? 'text' : 'password';
    btn.setAttribute('aria-pressed', String(isPwd));
    btn.classList.toggle('is-visible', isPwd);
  }

  function decryptContent(event, inputId) {
    event.preventDefault();
    const input = document.getElementById(inputId);
    const container = input.closest('.encrypted-content');
    const statusEl = container.querySelector('.status-message');
    const decryptedContent = container.querySelector('.decrypted-content');
  
    statusEl.textContent = '';
    statusEl.classList.remove('error');
    input.classList.remove('error');
  
    
    const today = new Date();
    const mmdd = String(today.getUTCMonth() + 1).padStart(2, '0') + String(today.getUTCDate()).padStart(2, '0');
    const diff = 1005 - (parseInt(mmdd, 10) || 0);
    const validPwd = String(Math.abs(diff)).padStart(4, '0');
  
    if (input.value !== validPwd) {
      input.classList.add('error');
      statusEl.textContent = container.dataset.error || '';
      statusEl.classList.add('error');
      input.focus();
      return;
    }
  
    try {
      let cipherText = container.dataset.cipher.replace(/\s+/g, '');
  
      
      
      
      
      
      
      
      
      
      if (cipherText.length > 12) {
        const part1 = cipherText.slice(0, 3);               
        const part2 = cipherText.slice(3, -9);              
        const part3 = cipherText.slice(-9, -4);             
        const part4 = cipherText.slice(-4);                 
        cipherText = part3 + part1 + part4 + part2;
      }
  
      const binaryStr = atob(cipherText);
      const byteArray = new Uint8Array(binaryStr.length);
      for (let i = 0; i < binaryStr.length; i++) {
        byteArray[i] = binaryStr.charCodeAt(i);
      }
  
      const decoded = new TextDecoder("utf-8").decode(byteArray);
      const fragment = document.createRange().createContextualFragment(decoded);
  
      decryptedContent.innerHTML = '';
      decryptedContent.appendChild(fragment);
  
      container.querySelector('.locked-state').hidden = true;
      decryptedContent.hidden = false;
      container.classList.add('unlocked');
  
    } catch (e) {
      console.error(e);
      statusEl.textContent = 'Decode Failed: ' + e.message;
      statusEl.classList.add('error');
    }
  }
  
  document.addEventListener('DOMContentLoaded', () => {
    document.querySelectorAll('.password-input').forEach(input => {
      input.addEventListener('keypress', e => {
        if (e.key === 'Enter') {
          decryptContent(e, input.id);
        }
      });
    });
  });
  
</script>

]]></content:encoded>
    </item>
    <item>
      <title>2025-11-03</title>
      <link>https://jinpeng.cv/en/diary/2025/november/2025-11-03/</link>
      <pubDate>Mon, 03 Nov 2025 16:34:32 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/november/2025-11-03/</guid>
      <description>&lt;h3 id=&#34;0907-arrive-at-the-office&#34;&gt;09:07 Arrive at the Office&lt;/h3&gt;
&lt;h3 id=&#34;1544-go-out-for-haircutting&#34;&gt;15:44 Go out for haircutting&lt;/h3&gt;
&lt;p&gt;An old lady cut my hair, she was really dedicated but really bad at haircutting.&lt;/p&gt;
&lt;p&gt;I haircut again by myself after going home.&lt;/p&gt;
&lt;p&gt;Received the parcel from Huan. It&amp;rsquo;s very happy.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="0907-arrive-at-the-office">09:07 Arrive at the Office</h3>
<h3 id="1544-go-out-for-haircutting">15:44 Go out for haircutting</h3>
<p>An old lady cut my hair, she was really dedicated but really bad at haircutting.</p>
<p>I haircut again by myself after going home.</p>
<p>Received the parcel from Huan. It&rsquo;s very happy.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-10-27</title>
      <link>https://jinpeng.cv/en/diary/2025/october/2025-10-27/</link>
      <pubDate>Mon, 27 Oct 2025 15:58:11 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/october/2025-10-27/</guid>
      <description>&lt;h3 id=&#34;0958-arrive-at-the-office&#34;&gt;09:58 Arrive at the Office&lt;/h3&gt;
&lt;h3 id=&#34;1859-go-home&#34;&gt;18:59 Go home&lt;/h3&gt;
&lt;p&gt;I finally finished the project on sensing and submitted it. Felt a little release.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Today&amp;rsquo;s group meeting, Shiva pointed me out as the chairman. Unbelievable!&lt;/p&gt;
&lt;p&gt;Prof. Liu said Don&amp;rsquo;t work too much. We should focus on our mental health.&lt;/p&gt;
&lt;h3 id=&#34;2305-study-the-ethics-and-academic-citizenship&#34;&gt;23:05 Study the Ethics and Academic Citizenship&lt;/h3&gt;</description>
      <content:encoded><![CDATA[<h3 id="0958-arrive-at-the-office">09:58 Arrive at the Office</h3>
<h3 id="1859-go-home">18:59 Go home</h3>
<p>I finally finished the project on sensing and submitted it. Felt a little release.</p>
<hr>
<p>Today&rsquo;s group meeting, Shiva pointed me out as the chairman. Unbelievable!</p>
<p>Prof. Liu said Don&rsquo;t work too much. We should focus on our mental health.</p>
<h3 id="2305-study-the-ethics-and-academic-citizenship">23:05 Study the Ethics and Academic Citizenship</h3>
]]></content:encoded>
    </item>
    <item>
      <title>2025-09-10</title>
      <link>https://jinpeng.cv/en/diary/2025/september/2025-09-10/</link>
      <pubDate>Wed, 10 Sep 2025 09:48:49 -0600</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/september/2025-09-10/</guid>
      <description>&lt;h3 id=&#34;0947-learned-a-new-git-command-stash&#34;&gt;09:47 Learned a new git command: stash&lt;/h3&gt;
&lt;p&gt;This command is very useful when syncing files between different devices.&lt;/p&gt;
&lt;h3 id=&#34;1508-prepare-to-go-home&#34;&gt;15:08 Prepare to go home&lt;/h3&gt;
&lt;p&gt;In the morning, I went out to practice my English speaking on the lawn. Learning a language by speaking is a useful method. I think I should insist on this way.&lt;/p&gt;
&lt;p&gt;At noon, I submitted the Mine 610 assignment to Canvas and sent the concrete assignment to the teacher&amp;rsquo;s email. I felt a little bit nervous, because I want to get an excellent score, and this is my first assignment in English.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="0947-learned-a-new-git-command-stash">09:47 Learned a new git command: stash</h3>
<p>This command is very useful when syncing files between different devices.</p>
<h3 id="1508-prepare-to-go-home">15:08 Prepare to go home</h3>
<p>In the morning, I went out to practice my English speaking on the lawn. Learning a language by speaking is a useful method. I think I should insist on this way.</p>
<p>At noon, I submitted the Mine 610 assignment to Canvas and sent the concrete assignment to the teacher&rsquo;s email. I felt a little bit nervous, because I want to get an excellent score, and this is my first assignment in English.</p>
<p>The time in the afternoon is always tiring and boring, so I want to go outside to enjoy the nice weather and the beautiful nature.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-09-07</title>
      <link>https://jinpeng.cv/en/diary/2025/september/2025-09-07/</link>
      <pubDate>Sun, 07 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/september/2025-09-07/</guid>
      <description>&lt;p&gt;Got up lazily in the morning, already forgot what I did.&lt;/p&gt;
&lt;p&gt;Near noon, I cooked some pasta, added my twice-cooked pork ,and brought it to school to study for a while. Reviewed the class PPT again, tried to guess the teacher&amp;rsquo;s intentions for the assignment questions, and wrote a rough outline.&lt;/p&gt;
&lt;p&gt;In the afternoon, I came back and made beef fried rice. It was really delicious. Then I took a shower and washed my dirty socks and clothes.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Got up lazily in the morning, already forgot what I did.</p>
<p>Near noon, I cooked some pasta, added my twice-cooked pork ,and brought it to school to study for a while. Reviewed the class PPT again, tried to guess the teacher&rsquo;s intentions for the assignment questions, and wrote a rough outline.</p>
<p>In the afternoon, I came back and made beef fried rice. It was really delicious. Then I took a shower and washed my dirty socks and clothes.</p>
<p>I thought about going to the gym to have a look. I kind of wanted to go swimming, but I didn&rsquo;t have the gear. While chat with Huan, it turned out she was just about to buy it for me.</p>
<p>That&rsquo;s great!</p>
]]></content:encoded>
    </item>
    <item>
      <title>March 12, 2025</title>
      <link>https://jinpeng.cv/en/diary/2025/march/2025-03-12/</link>
      <pubDate>Wed, 12 Mar 2025 14:36:10 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/march/2025-03-12/</guid>
      <description>&lt;p&gt;I got up and boiled two ears of corn for breakfast. They weren&amp;rsquo;t very sweet, probably the price to pay for being cheap.&lt;/p&gt;
&lt;p&gt;In the morning, I did a set of essay questions for the civil service exam and only scored 57. The questions were quite challenging. After checking the answers, I felt anxious, worrying about this and that.&lt;/p&gt;
&lt;p&gt;With a troubled heart, I took a nap. After waking up, I did a 10-minute meditation, which made me feel much better. It was quite effective. By the time I got up to review the morning&amp;rsquo;s answers, it was already past 3 PM. Feeling a bit stifled in the rental room, I packed my backpack with two sets of essay papers and headed to the library. I almost finished both sets, though I haven&amp;rsquo;t checked the answers for the second one yet.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I got up and boiled two ears of corn for breakfast. They weren&rsquo;t very sweet, probably the price to pay for being cheap.</p>
<p>In the morning, I did a set of essay questions for the civil service exam and only scored 57. The questions were quite challenging. After checking the answers, I felt anxious, worrying about this and that.</p>
<p>With a troubled heart, I took a nap. After waking up, I did a 10-minute meditation, which made me feel much better. It was quite effective. By the time I got up to review the morning&rsquo;s answers, it was already past 3 PM. Feeling a bit stifled in the rental room, I packed my backpack with two sets of essay papers and headed to the library. I almost finished both sets, though I haven&rsquo;t checked the answers for the second one yet.</p>
<p>In the evening, I did another set of &ldquo;Administrative Aptitude Test&rdquo; and scored 71, which is a significant improvement. However, I still haven&rsquo;t found the knack for the common sense judgment section.</p>
<p>Tonight, I had a discussion with Huanhuan about praying and making wishes to deities. We explored the following questions:</p>
<ol>
<li>What do people overlook when they make wishes to deities?</li>
<li>Do deities fulfill everyone&rsquo;s wishes equally? Are there any costs or conditions?</li>
<li>Should we seek the help of deities, assuming they have the power?</li>
<li>How do we distinguish between ancestors and deities?</li>
<li>The image and abilities of deities.</li>
<li>The randomness and uncertainty of the world, and the role of human agency.</li>
<li>What attitude should we adopt towards deities? If it cannot be falsified, then its existence cannot be denied. To live with peace and ease, we naturally should minimize our exposure to things beyond our control.</li>
</ol>
]]></content:encoded>
    </item>
    <item>
      <title>2025-02-18</title>
      <link>https://jinpeng.cv/en/diary/2025/february/2025-02-18/</link>
      <pubDate>Tue, 18 Feb 2025 08:52:28 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/february/2025-02-18/</guid>
      <description>&lt;h3 id=&#34;0852-上班路上捡到一部手机&#34;&gt;08:52 上班路上捡到一部手机&lt;/h3&gt;
&lt;p&gt;走了一段路后失主联系我，还说她在哪儿哪儿。我说我要忙着赶路，我在卖糯米饭这里等你，你跑快点，这条路有一家很出名的卖水城特色的糯米饭。&lt;br&gt;
然后就收获了一连串的谢谢。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="0852-上班路上捡到一部手机">08:52 上班路上捡到一部手机</h3>
<p>走了一段路后失主联系我，还说她在哪儿哪儿。我说我要忙着赶路，我在卖糯米饭这里等你，你跑快点，这条路有一家很出名的卖水城特色的糯米饭。<br>
然后就收获了一连串的谢谢。</p>
<h3 id="1635-筛选了一波省事业单位的岗位">16:35 筛选了一波省事业单位的岗位</h3>
<table>
  <thead>
      <tr>
          <th>职位名称</th>
          <th>工作单位</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>综合岗（管理岗）</td>
          <td>昆明市留置管理中心</td>
      </tr>
      <tr>
          <td>党务工作人员</td>
          <td>云南开放大学</td>
      </tr>
      <tr>
          <td>组织人事岗</td>
          <td>贵州省社会科学院</td>
      </tr>
      <tr>
          <td>党校讲师</td>
          <td>中共盘州市委员会党校</td>
      </tr>
      <tr>
          <td><strong>科研管理岗</strong></td>
          <td><strong>贵州省社会科学院</strong></td>
      </tr>
      <tr>
          <td>工作人员</td>
          <td>贵州省应急技术中心</td>
      </tr>
      <tr>
          <td>拟报省社科院的科研管理岗。想着盘州党校讲师也还不错，找粪瓢问了问，基层党校还是有基层的通病。</td>
          <td></td>
      </tr>
  </tbody>
</table>
<p>害，错过了云南省考还挺可惜的。</p>
<h3 id="2050-看了半个小时抖音">20:50 看了半个小时抖音</h3>
<p>看短视频很容易看超时，看完总是脑袋空空，眼睛难受。</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-02-12</title>
      <link>https://jinpeng.cv/en/diary/2025/february/2025-02-12/</link>
      <pubDate>Wed, 12 Feb 2025 08:41:12 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/february/2025-02-12/</guid>
      <description>&lt;h3 id=&#34;0841-吃完早餐&#34;&gt;08:41 吃完早餐&lt;/h3&gt;
&lt;p&gt;吃完早餐到办公室，新来的见习生就来了。给他办了各种手续，不知不觉，一上午就过去了。&lt;/p&gt;
&lt;h3 id=&#34;1137-忙完一堆杂事准备吃饭去了&#34;&gt;11:37 忙完一堆杂事，准备吃饭去了&lt;/h3&gt;
&lt;p&gt;今天上午就做了3个题目。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="0841-吃完早餐">08:41 吃完早餐</h3>
<p>吃完早餐到办公室，新来的见习生就来了。给他办了各种手续，不知不觉，一上午就过去了。</p>
<h3 id="1137-忙完一堆杂事准备吃饭去了">11:37 忙完一堆杂事，准备吃饭去了</h3>
<p>今天上午就做了3个题目。</p>
<p>联系了省教育厅国际处，给的答复是申请基金必须得有社保，否则单位推荐这一步过不去，道阻且艰。</p>
<h3 id="2125-炼制猪油ing">21:25 炼制猪油ing</h3>
<p>今天十五了，哥哥也不用加班。下班后去超市买了些菜，又继续做我最拿手的番茄肥牛吃了。</p>
<p>哈哈，应该还是挺好吃的。哥哥吃了两碗饭，甚至还喝了两小杯酒。</p>
<p>刚刚才把脏的碗筷洗了，今天又买了两斤肥肉，正在炼油中。</p>
]]></content:encoded>
    </item>
    <item>
      <title>2025-02-11</title>
      <link>https://jinpeng.cv/en/diary/2025/february/2025-02-11/</link>
      <pubDate>Tue, 11 Feb 2025 10:12:25 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/february/2025-02-11/</guid>
      <description>&lt;h3 id=&#34;1017-写完了一支笔&#34;&gt;10:17 写完了一支笔&lt;/h3&gt;
&lt;p&gt;今天天气很好！好久没在水城见到这么大的太阳了。&lt;/p&gt;
&lt;p&gt;人的奇妙的正反馈或者说成就感，有时候总是来源于一些莫名其妙的东西。比如刚刚我写完了一只笔，我会突然觉得有种快乐和幸福。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="1017-写完了一支笔">10:17 写完了一支笔</h3>
<p>今天天气很好！好久没在水城见到这么大的太阳了。</p>
<p>人的奇妙的正反馈或者说成就感，有时候总是来源于一些莫名其妙的东西。比如刚刚我写完了一只笔，我会突然觉得有种快乐和幸福。</p>
<h3 id="1513-跑腿送材料回来">15:13 跑腿送材料回来</h3>
<p><img loading="lazy" src="../../../../../static/images/diary/V2EX-84%E5%B2%81%E8%82%BA%E7%99%8C.png"><br>
上图是我看到的一个帖子和讨论，如何面对死亡和亲人的死亡是一个课题。能够预知自己的死亡也是一件好事，能够让我们放弃幻想，认清形势！</p>
<h3 id="1703-做题做累了">17:03 做题做累了</h3>
<blockquote>
<p>人的精力是有限的。</p>
</blockquote>
<p>这句话里面提到的精力应该是可以分为两部分——注意力和身体状态。进化而来的注意力总是会集中在新鲜事务或者突然出现的事务中，长时间连续面对同一个事务就必定会导致注意力涣散。但注意力涣散是一件相当重要的事情，唯有注意力涣散时精神才能放松。</p>
<p>而另一部分身体状态则很容易理解，身体长时间地在非舒适状态保持静止或者运动，会引起机体疲劳甚至受损。</p>
<p>于是一些不起眼就显得格外重要，尤其是对于一些工作狂或者运动狂热爱好者来说。比如喝水、拉屎、打盹、远眺、伸懒腰之类的事情。</p>
<h3 id="2141-吃完很好吃的炒饭">21:41 吃完很好吃的炒饭</h3>
<p>下班回来把之前剩下的米给煮了，然后把Navi页面的显示逻辑bug给修复了。刚刚吃完香喷喷的炒饭，简单亦是幸福。今天中午还和欢欢说，我最喜欢吃食堂了。主要有两个原因，一是不用去做吃啥的决定；二是还能省钱。</p>
<p>折腾代码可费时间了，要减少自己的强迫症。不过有一点好处就是，讲Obsidian作为Hugo的编辑器，而且能够很方便同步之后，创作的欲望就变得很强，什么东西都想记录下来。</p>
<p>欢欢今晚健身回来，没吃晚饭，不好。准备刷题学习了</p>
<h3 id="2323-和小欢欢刷完牙">23:23 和小欢欢刷完牙</h3>
<p>Push、关机、准备睡觉！</p>
<h3 id="今日待办">今日待办</h3>
<ul>
<li><input checked="" disabled="" type="checkbox"> 修复移动端默认展开，整合代码</li>
<li><input disabled="" type="checkbox"> 给刘老师发邮件，请求相关资源</li>
</ul>
]]></content:encoded>
    </item>
  </channel>
</rss>
