SEARCH KEYWORD -- Must read
An experience of fixing a memory-corruption bug
During the last 4 months, I was disturbed by a memory-corruption bug, and this bug will cause program crash. Until last Monday, I found the root cause and fixed it. This debug process is a difficult but memorable experience, so I will share it in this article. My program works as a SMS Hub. When it receives a SMS, it will allocate a structure in heap memory like this: typedef struct { ...... int *a[8]; ...... } info; After processing the SMS, the program will free the m...
c, debug, unix, solaris, multi-thread 2014-05-04 03:52:43
Announcing New Feed Service
We’re thrilled to announce that Feed is now live! Feed brings you the hottest tech stories daily, covering trending topics like AI, LLMs, Rust, Python, and more. What is Feed? Feed is your personalized tech news curator. It uses AI to gather and filter the most relevant stories from around the world, ensuring you stay informed without being overwhelmed. Whether it’s a breakthrough in AI or a new feature in Rust, Feed delivers just the right amount of information. How Does It Work? F...
Some laws of interactive design
The well known quote from Alan Cooper is Conforming to the standard unless there is a better choice. There are some best practices in interaction design. How many do you know? 1. Fitts' Law The time from one start point to target point is determined by two parameters: The distance to the target and the size of the target. )D and W in above picture), the formula is : T=a+blog2(D/W+1). It was first proposed by Paul Fitts, it is mathematical model used to predict the time from any poin...
interaction design, laws, Fitts' law 2012-11-16 11:25:24
Everyone Can Write Tech Blogs
As a programmer, you’ve probably been told that writing tech blogs can offer a range of benefits. There's no shortage of articles encouraging you to start writing, and this post, this post adds to that chorus. But while the advice is solid, what’s often missing is how to begin the journey of writing tech blogs. Based on my 10+ years of experience, I’d like to share some thoughts to help you get started. From what I've seen, the reason many programmers don’t write tech blo...
Understand diff in Unix
diff is an important tool program in Unix. It is used to compare differences of two files, it is the foundation for code version control. If you type : $ diff <file_before_change> <file_after_change> diff will tell you what's the difference between these two files. The result may not be so easy to understand, so now I will show you how to understand diff. 1. 3 formats of diff diff has 3 formats due to historic reasons. normal diff context diff unified diff 2. Demo files For easy d...
diff,Unix,version control,git 2012-09-03 10:49:36
Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
When working with large language models like Claude from Anthropic, understanding how many tokens your input consumes is essential for managing costs and optimizing performance. In this blog, we’ll explore how to calculate token counts for a given input using Go. We’ll use Anthropic’s count_tokens API endpoint, which provides a straightforward way to determine token usage. Prerequisites Before diving in, ensure you have: A working Go environment (installation guide). An Anthro...
CLAUDE,GO,GOLANG,TOKEN CALCULATION,GUIDE,EXAMPLE 2024-12-23 22:25:29
Redis Cluster and Common Partition Techniques in Distributed Cache
In this post, I will discuss a few common partition techniques in distributed cache. Especially, I will elaborate on my understanding on the use of Redis Cluster. Please understand that at the time of writing, the latest version of Redis is 4.0.10. Many articles on the same topic have a different idea from this post. This is mainly because, those articles are probably outdated. In particular, they may refer to the Redis Cluster implementation in Redis 3. Redis Cluster has been improved...
REDIS,DISTRIBUTED CACHE,CLOUD COMPUTING 2019-01-17 08:10:37
Reasons to use blue in design
Blue color is used in many product designs and logo designs such as Facebook, Microsoft, Twitter and our site. Why do companies choose blue color in their design? It's not a coincidence for them to choose blue. One saying is the color blue is associated with trust, efficiency, clarity and simplicity. Beside this reason, are there other reasons? From an interface design standpoint, blue is an incredibly useful color. Among the dark colors designers have in their toolbox, red, orange and green al...
China has blocked Wikipedia again
Recently lots of Chinese found they experienced problems while trying to access Wikipedia, the world's largest and most well-known free encyclopedia. It turns out that the notorious Chinese GFW(Great Firewall) is playing the critical role here. It blocks the Chinese version of Wikipedia. The reason why the Chinese version of Wikipedia is blocked is said to be that Wikipedia has changed its default protocol from HTTP to HTTPS. This change made it difficult for the GFW to filter some sensiti...
What does session_destroy() do in PHP?
In PHP manual, the description for session_destroy() function is : session_destroy() destroys all of the data associated with the current session. It does not unset any of the global variables associated with the session, or unset the session cookie. To use the session variables again, session_start() has to be called. I am confused about this description. If this function destroys all session data, then why the global variables associated with the session are not unset? Why can we u...
session_destroy,session_start 2013-08-31 09:59:05
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>