SEARCH KEYWORD -- Code standard
What is encryption? Its role in the modern age
“Messages and calls are end-to-end encrypted.” If you are a WhatsApp user, you must have read this statement at the top of chats you open. Now, what does it mean? The statement signifies that all the messages or voice notes shared between users are encrypted, and no one can read or listen in on them. As mostly all of us use messaging apps and emails, information security has become a major concern. Moreover, we don’t know how many digital footprints we leave on the web can be t...
DATA SECURITY,VPN 2021-01-21 08:04:16
The Pitfall of WebSocket Disconnections Caused by Browser Power-Saving Mechanisms
Preface Recently, while using WebSocket (WS) connections, we encountered frequent disconnection issues, occurring hundreds of times per day for a single user. Although using the auto-reconnect feature of socket.io allowed us to quickly restore connections after disconnections, it did not guarantee that every reconnection would successfully receive WS messages. Therefore, we conducted several investigations and tests. Ultimately, we identified the root cause of the issue: the browser's power-savi...
WEBSOCKET,JAVASCRIPT,POWER SAVING,TROUBLESHOOTING 2024-06-23 01:19:39
A strange behavior of printing struct with nested struct in GoLang
Normally when trying to print a struct , we would use %v to show all data of the struct. It will print the default format for each field in the struct. %v the value in a default format when printing structs, the plus flag (%+v) adds field names But recently we observed a strange behavior when printing a struct with nested struct which has a String() string implemented, the %v format prints an 'unexpected' output per our understanding. Let's see the example snippet first. pa...
PROGRAMMING,GOLANG 2018-10-29 09:59:49
malloc/free and new/delete in C++
malloc and free are C++/C language standard library functions, while new/delete are operator of C++. They can be used to allocate dynamic memory and free memory in C++ programs malloc/free can not meet the requirements of dynamic objects creation. Object needs to call the constructor to initialize the object when creating, the object needs to call the destructor before it is destroyed Since malloc() and free() are library functions rather than operators, the compiler has no control permiss...
GitHub launches a separate training page
Code hosting community Github has much proud data: 55 employees, Andreessen Horowitz promised a $100 million investment, $750 million valuation, a place developers stay longest since its launch in 2008 ... Github announced the official launch of a separate teaching page, to teach developers collaborative programming through various forms. Github announces the detail about the training program on its official blog, the entire training project has two modes : free and paid. The content of their t...
GitHub,Training,Open source 2012-10-07 05:45:47
Coming back, Nokia?
Nokia officially unveiled an Windows Phone 8 phone model Lumia 920T in cooperation with China Mobile in yesterday's Global Developer Conference of China Mobile. This is the first to support China Mobile's TD-SCDMA 3G mobile phone network standard in the Windows Phone ecosystem, it that Windows Phone is available in TD camp. Meanwhile, as China Mobile's official custom models, Lumia 920T will be sold using China Mobile's sales channel, this may further promote the sales of Nokia Windows Phone dev...
Nokia, China Mobile, Lumia 920T,TD-SCDMA 2012-12-06 13:17:24
Run code with multiple files in the same main package in GoLang
To run a GoLang program, there needs to be a main() function defined. In some cases when developing some demo program which has multiple files and just wanna put them in the same main package and this folder is not in GOPATH, how to run the program? Let's say we have following folder structure where the main() function is defined in main.go. If you just run below command, it would fail to start to run the program and gives some error if some struct is defined in other files and being used. PS D...
EXECUTABLE,GOLANG,MAIN PACKAGE,MULTIPLE FILE 2021-05-15 10:20:10
Error handling in GoLang
Error handling is one of the must talked topics for any programming language. The program would be more reliable and stable if errors are handled properly and timely. Each programming language has its own way to handle error, this applies to GoLang as well. This post will discuss more about GoLang's error handling mechanism. Error handling Before talking more about GoLang's error handling, we can see how different programming languages are handling errors. C's error check The most direct way of ...
GOLANG,ERROR HANDLING,FLUENT INTERFACE 2021-03-06 21:36:08
About browser event
First look at following codes: var $ = KISSY.all; $(‘a’).on(‘click’,function(e){ doSomeThing();//This function seems very famous e.halt(); }); The above codes seem complete the work we want them. The browser will not redirect us to the link in href, but is there some issue with the codes above? Before explaining what's wrong with the above codes, we first need to understand some concepts. Browser default behavior When we click a link, the browser will redirect us to anoth...
JavaScript event,Event bubbling,event capturing 2012-11-15 11:15:41
What to put on whiteboard during an interview
As a programmer, you may go through different kinds of programming tests while interviewing for jobs. The most famous and difficult one may be the whiteboard test for lots of people. Usually the interviewer will give the candidate an algorithm problem or case study and ask the candidate to implement the algorithm with his/her favorite programming language. The code to be written is not too much but it requires the candidate to thoroughly consider different edge cases. So wha...
TIPS,INTERVIEW,WHITEBOARD TEST 2014-08-29 20:34:52
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>>