SEARCH KEYWORD -- Memory model
Go channel explained
In Go, a channel is a type of concurrent data structure that allows two or more goroutines (Go's term for lightweight threads) to communicate with each other. Channels provide a way for goroutines to send and receive values, and they are an essential part of Go's concurrency model. Here's a simple example that demonstrates how to use channels in Go: package main import ( "fmt" ) func main() { // Create a new channel with the `make` function ch := make(chan int) // Start a new ...
Embrace open source
In past few days, there are many tech news which are related to open source. For example, Microsoft enables Linux on its Windows Azure cloud, Facebook open sourced its C++ library Folly and Samsung joined Linux foundation. Now more and more big companies realize the power of open source and are willing to contribute to the open source community. It will benefit not only developers but also these big companies as well.By providing some open source libraries or projects, developer may reduce their...
Open source,Microsoft,Samsung,Facebook,Linux 2012-06-06 05:37:59
What Separates Good Designers from Great Ones
Most of the design books you read, including my own, are about how to be a good, competent designer. They are about how to make strong, reasoned design decisions and about design methods and tools. But what they won’t—can’t—teach you is how to become a great designer. The only way to be a great designer is to produce great products. Everything else is…well, everything else. I’m convinced that the people who are great designers, while assure...
Designer,Feature,Great designer,Good designer,Comparison 2011-12-06 02:25:17
Taking C Seriously
Dennis Ritchie, a co-creator of Unix and C, passed away a few weeks ago, and was honored with many online tributes this weekend for a Dennis Ritchie Day advocated by Tim O’Reilly.It should hardly be necessary to state the importance of Ritchie’s work. C is the #2 language in use today according to the TIOBE rankings (which, while criticized in some quarters, are at least the best system we currently have for gauging such things). In fact, TIOBE’s pre...
C,Efficiency,Memorization,Dennis Ritchie 2011-11-03 13:42:14
When to use STDERR instead of STDOUT
Every process is initialized with three open file descriptors, stdin, stdout, and stderr. stdin is an abstraction for accepting input (from the keyboard or from pipes) and stdout is an abstraction for giving output (to a file, to a pipe, to a console). That's a very simplified explanation but true nonetheless. Those three file descriptors are collectively called 'The Standard Streams'. Where does stderr come from? It's fairly straightforward to understand why stdin and stdout exist, however ...
UNIX,STDERR,STDOUT,Difference 2012-01-14 12:07:43
How To Make The Most of Your Least Productive Time
Everybody talks about mastering the art of staying productive. Not many people willingly accept that such efforts are futile. It’s impossible to stay productive 100% of the time, and this will never change. Something that I believe to be just as important, if not more so, is what we make of our least productive time. We all have the capacity to be extremely productive for some part of the day. Even the world’s grandest underachievers. But I believe that to be successful runni...
Productive time,Limit time,Effort 2012-02-06 07:49:47
Why do C++ folks make things so complicated?
This morning Miroslav Bajtoš asked “Why do C++ folks make things so complicated?†in response to my article on regular expressions in C++. Other people asked similar questions yesterday. My response has two parts: Why I believe C++ libraries are often complicated.Why I don’t think it has to be that way. Why would someone be using C++ in the first place? Most likely because they need performance or fine-grained control that they cannot get somewhere else. A Ruby programmer...
C++,Complicated,C++ PRogrammer,Design pattern 2011-12-31 15:45:39
Transparency in Cloud Services
37signals recently launched public “Uptime Reports†for their applications (announcement). The reaction on Hacker News was rather tepid, but I think it’s a positive development, and I applaud 37signals for stepping forward. Reliability of cloud applications is a real concern, and there’s not nearly enough hard data out there. Not all products are equally reliable; even within 37signals, the new reports show a 3:1 variation in downtime across apps. That said, ...
Cloud,Transapency,37signals,Announcement 2012-01-10 07:24:02
Signs that you're a bad programmer
1. Inability to reason about codeReasoning about code means being able to follow the execution path ("running the program in your head") while knowing what the goal of the code is.SymptomsThe presence of "voodoo code", or code that has no effect on the goal of the program but is diligently maintained anyway (such as initializing variables that are never used, calling functions that are irrelevant to the goal, producing output that is not used, etc.)Executing idempotent functions multiple times (...
Sign,Programmer,Characteristics,Knowledge,Skill 2011-10-20 08:56:16
20 Database Design Best Practices
Use well defined and consistent names for tables and columns (e.g. School, StudentCourse, CourseID ...).Use singular for table names (i.e. use StudentCourse instead of StudentCourses). Table represents a collection of entities, there is no need for plural names.Don’t use spaces for table names. Otherwise you will have to use ‘{‘, ‘[‘, ‘“’ etc. characters to define tables (i.e. for accesing table Student Course you'll write “Student Cour...
Database design,20 tips,Well defined name,Design pattern 2012-02-07 12:10:48
RECENT
- Private LLM Integration with RAGFlow: A Step-by-Step Guide
- First Touch on OpenAI API
- Special ARP Uses: Gratuitous ARP, ARP Probe, and ARP Announce
- SIEM Big Data Visualization [04] : Data Transmission Latency SIEM Log Analysis Dashboard
- How to make select in WinSock exceed the 64-socket limit
- EtsiosApp Release Date: All You Need to Know
- SIEM Big Data Visualization [03]:Graph-Based SIEM Log Analysis Dashboard
- How AI is Changing Web Development: A New Era of Digital Innovation
- SIEM Big Data Visualization [02]: National Cyber Threats Dashboard
- Exploring the Impact of a Loan Origination System on Financial Institutions
- more>>