HeyBinyang

Moments

Everyday thoughts, discoveries, and passing notes, kept in their unpolished flow.

September 2026

Enterprise/individual business entity: usually requires a WeChat certification fee of300 yuan/year (including annual review each year). Each independent Mini Program under each enterprise or individual business must pay this certification fee separately and cannot be shared among multiple.

Summary: For a company's WeChat Mini Programs, one costs300 yuan per year. It's really not as good as getting a development annual fee, which allows listing multiple Mini Programs.

August 2026

Because I didn't want to endure the waiting time of building images every time with Nextjs, I refactored this website using the Ruby on Rails tech stack.

Google's Web performance score also easily broke through90; previously when using Nextjs, it was only around40.

The website theme was also redesigned, using two columns, increasing content width and content display.

Using spare time, it took about1 week, doing it piecemeal.

Now the website directly uses Rails to render pages, reducing the use of JS in frontend pages and unprofitable execution.

The process in between was not so easy, especially since the current content and features are already quite a lot. Without AI assistance, it would have required more mental and physical energy.

After this round of practice and struggle, it proved that Nextjs is not suitable for content publishing websites.

July 2026

After enabling the system proxy in the VPN, local test domain names (such as *.test) suddenly can't be accessed?

Wrong move: Add a DIRECT (direct connection) rule in the proxy software.

This is useless! Because once traffic enters the proxy software, it will use public DNS to look up this local domain name. If it can't find the IP, it will immediately report an error and block it.

Correct approach: In the operating system's "Network Settings -> Proxy Bypass List (Bypass)", add *.test (or configure the Bypass bypass list in the proxy software).


Core principle:

Traffic is first received by the operating system.

Bypass (bypass): Traffic never enters the proxy software; the operating system handles it itself and uses local DNS to access directly.

DIRECT (direct connection): Traffic has already entered the proxy software; the proxy software attempts a direct connection, but usually fails at DNS resolution.

I've encountered this problem before and have always been able to solve it, but today is the first time I've fully understood it.

“It feels great to manually participate in coding, to not let AI write code for me.”

I just tried the new global Cursor rules. Thinking about functionality myself, focusing on code organization and quality, the feeling of full engagement is back.

In order to be able to participate in the process of code organization and writing, I added a few global rules to cursor:

1. Help me set up the global cursor rules, add one: just provide the plan, steps, or implementation code for each step, do not write the code for me.

2. Do not include Co-authored-by in commit messages.

3. Another rule: write commit msg for changes, do not commit. i will commit manually.

June 2026

Today I added this site to bing and yandex.

Next, we can observe and familiarize ourselves with the features and characteristics of these search platforms.

As the website content increases, the Nextjs SSG build time also gets longer.

The previous consideration was: pre-render pages, use less SSR, to make pages load faster. Recently when deploying, I found that the waiting time has become longer, mainly stuck at the Nextjs build step.

I asked the AI, and based on the problem and website scenario, the AI helped me analyze it. After seeing the AI's response and thoughts, I removed SSG and only use SSR. This goes back to the traditional service routes like PHP, Rails, etc. Server-side rendering + caching feels much cleaner. The speed of deployment and page access is fine.

Through practice, I can feel: technology application should be used as problems arise and are solved; there is no standard answer.

The development experience of React Native is quite good.

Although many people are now using AI for vibe coding, after a period of intensive practice, my view is actually the opposite: as engineers, we still need to maintain technical learning, understanding, and mastery.

When I'm not too busy, I quietly read technical books. In the process, I feel my comprehension increase. Areas I hadn't noticed or wasn't solid on get supplemented.

Step-by-step tutorials make it easy to focus and immerse yourself. Writing tutorials also requires a strong ability to break down and organize knowledge.

function Echo() {
  const params = useParams();
  const [searchParams] = useSearchParams();
  return <h1>{params.msg || searchParams.get("msg")}</h1>;
}
const param = "From Param";
const query = new URLSearchParams({ msg: "From Query" });

export default function App() {
  return (
    <section>
      <p>
      </p>
      <Link to={'echo/${param}'}>Echo param</Link>
       <p>
       </p>
    </section>
    <Link to={'echo?${query.toString()}'}>Echo query</Link>
  );
}