SEARCH KEYWORD -- Trap
Create temp file in Bash using mktemp and trap
When working on Linux Bash, sometimes there is need to create temporary file. A common way of creating temp file on Linux is creating some file in /tmp directory. However there is security risk when creating temp file in /tmp directory. This post will show how to securely create temp file in Linux Bash. When creating file in /tmp directory, there are some security risks. This directory can be accessed by any user on the system, any user can write data into this directory as well. The files creat...
A trap in PDOStatement::bindParam
First, let's check out below codes: <?php $dbh = new PDO('mysql:host=localhost;dbname=test', "test"); $query = <<prepare($query); $bind_params = array(':username' => "laruence", ':password' => "weibo"); foreach( $bind_params as $key => $value ){ $statement->bindParam($key, $value); } $statement->execute(); What is the SQL executed finally? Is there any problem with above codes? Many people may think the query executed is : INSERT INTO `user` (`username`, `password...
Be careful about printing error as string in GoLang
In GoLang, we can format and produce string using fmt.Printf(), just like C, GoLang also supports format verbs like %s, %d which can be placeholder for different types of values. But please pay attention when printing error as string so that you will not fall into some trap. Let's first take an example code snippet and see what trap we are talking about. package main import "fmt" type A string func (a A) Error() string { return fmt.Sprintf("%s is an error", a) } func main() { a := A("hello...
STACKOVERFLOW,GOLANG,FMT 2019-01-23 09:17:15
A Python assignment trap
Python has no assignment, it only has reference. Assume, we have following code snippet: >>> values = [0, 1, 2] >>> values[1] = values >>> values [0, [...], 2] Why the result is not [0, [0, 1, 2], 2], instead it goes into an infinite loop? To understand this, we need to understand some basics about Python. Python has no variables, it only has labels. When we run: values = [0, 1, 2] Python will first create a list object [0,1,2], then it labels it as values. If we later...
Python,Assignment,Trap,Shallow copy 2013-07-19 22:08:36
Do designers need code?
So many problems in software occur because programmers and designers don't communicate well all the time. Why don't more designers learn to code themselves or have engineers build abstractions better suited to them? People's minds work in different ways, they can process thoughts differently, solve problems in completely different but equally valid ways. It's a mistake to assume everyone should possess the same skill set. Also not everyone should be a full stack engineer although full stac...
How to maintain a software project?
For a software engineer, at least from my own experience, maintaining an existing software project would take up a considerable amount of time: adding new features, fixing tricky bugs, and so on. In this post, I will share some some tips about how to become a veteran from a novice quickly when facing a new project. (1) Get familiar with the background knowledge of the project. Every software has its own purposes and users: a device driver serves the specified hardware, whilst a SMS gateway helps...
Let 's write some front end codes
I've seen a lot of arguments that there is no much technical value writing web portal, I think that the vast majority of good programmers will try many different things. The low level development and machine learning are not the only technologies which are full of wisdom and challenges, I wrote web site for a few years, it is difficult to say that this is my initial interest, although I touched on other technologies as well, I still feel building website is challenging. Front end developme...
Front end development, JavaScript,CSS 2013-01-22 04:00:24
A trap about PHP random number
The method to get random number in PHP is very simple, we only need to use rand() function. int rand ( int $min , int $max ) One function call can return the random number in a specified range. But in fact, the random number in computer is actually pseudorandomness, generally to increase the randomness, we may set a random seed before calling rand(). void srand ([ int $seed ] ) According to other language features, we should pass a time value as a parameter to the srand() function, generally...
Understanding Cursor and WindSurf's Code Indexing Logic
Background: The Importance of Context in AI Programming If the “intelligence” of large models, such as Claude 3.5 Sonnet, is the key factor driving a stepwise leap in AI programming capabilities, the other critical factor is the context length. Currently, Claude 3.5 Sonnet offers a maximum context length of 200k tokens. While this is more than sufficient for conversational models—capable of handling a 50,000 or even 100,000-word book with ease—it still falls far short for...
COMPARISON,CURSOR,WINDSURF,INDEXING 2024-12-21 20:23:54
How to increase the productivity of your IT team
As a manager, when your team isn’t completing as much work as they should be and you’re feeling the pressure from those higher up, it can be difficult to know what to do. The whole team is stressed and productivity is taking a huge drop. When this happens it’s time to take a step back and assess where the issue lies. Here’s how to increase the productivity of your IT team. Have clear goals and roles At the start of every project have a meeting with everyone...
PRODUCTIVITY,IT TEAM, BUSISNESS 2018-04-17 06:19:26
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>>