SEARCH KEYWORD -- REL NOREFERRER
Error handling style in C
Following are three error handling styles in C.Which one you like the most? Or you don't like any one?1. /* Problem : Not enough. Easy to be wrong */int foo(int bar){ int return_value = 0; int doing_okay = 1; doing_okay = do_something( bar ); if (doing_okay) { ...
C,Error handling style,Goto,Nested if 2012-04-24 06:51:00
etcd installation and usage
etcd is an open source and highly available distributed key-value storage system and is commonly used in critical data storage and service discovery and registration use cases. It is focusing on: Simple: well-defined, user-facing API (gRPC) Secure: automatic TLS with optional client cert authentication Fast: benchmarked 10,000 writes/sec Reliable: properly distributed using Raft etcd and Redis both support key-value storage and can be set up in distributed systems. Also Redis supporst more key...
ETCD,TUTORIAL,RAFT,DISTRIBUTED SYSTEM 2021-03-07 03:10:33
Microsoft Edge extension manifest v2 migration to v3
In June 2023, Microsoft Edge would not allow Edge extensions with manifest version before v3 to be listed on Microsoft web stores as v3 extensions add more security privacy related restrictions on some of the functions. Hence all extensions with manifest v2 must migrate to v3. In this post, we would show how we did the migration for one of our extensions and the changes made. There is a checklist provided by Microsoft Edge team on what needs to be updated so that the extension can stil...
MICROSOFT EDGE,EXTENSION,MANIFEST V3 2022-10-01 02:54:47
A simple example of git bisect command
git bisect is a very powerful command for finding out which commit is a bad commit when bug occurs. The rationale behind this command is that it pin locates the bad commit by divide and conquer. It divides the commit history into two equal parts, then determines whether the bad commit is at the first half or at the other half. This process will continue until the bad commit is located. Here is a really good example created by bradleyboy, this is a simple git repository which demonstr...
GITHUB,GIT,GIT BISECT 2019-07-12 10:31:51
Chrome extension manifest v2 migration to v3
In 2023, Google would not allow Chrome extensions with manifest version before v3 to be listed on Chrome web stores as v3 extensions add more security privacy related restrictions on some of the functions. Hence all extensions with manifest v2 must migrate to v3. In this post, we would show how we did the migration for one of our extensions and the changes made. There is a checklist provided by Chrome team on what needs to be updated so that the extension can still work in v3. It can be checked ...
CHROME EXTENSION,MANIFEST V3,MIGRATION 2022-09-24 10:44:54
A boolean value interview question
Someone asked a question on StackOverflow, he was asked an interview question. The question is : Given 3 boolean variables a, b, c, return true if at least 2 out of the 3 are true. He gave the solution as follows :boolean atLeastTwo(boolean a, boolean b, boolean c) { if ((a && b) || (b && c) || (a && c)) { return true; } else { ret...
bool,return,expression,conditional 2012-04-30 08:49:32
JSON unmarshal in GoLang
In almost all mainstream programming languages, there is either built-in or third-party library to support parse JSON data because it is so popular for organizing and transferring data among different services. In GoLang, the built in json package also provides functions for marshalling and unmarshalling JSON data. Marshalling GoLang struct to a JSON string is relatively simple, just need to call json.Marshal(), it's a bit complicated to unmarshal an arbitrary JSON string into a GoLang struct ob...
GOLANG,JSON,UNMARSHAL,EMPTY INTERFACE 2019-11-09 21:57:30
Breaking Barriers: How 3D Printing is Democratizing Product Development
Innovation has always been the cornerstone of progress, driving societies forward and shaping our future. However, for many years, the realm of product development and manufacturing was largely restricted to big corporations with hefty budgets and access to specialized resources. This created a barrier for individuals and small businesses aspiring to bring their ideas to life. Fortunately, the advent of 3D printing technology has shattered these barriers, democratizing product development and op...
UV PRINTING,3D PRINTING 2024-03-05 08:15:32
The Strange Behavior of the void Type in TypeScript
Preface In TypeScript (TS), there is a type called void. It represents "nothing" but it's important to note that it's not the same as "nothing" in JavaScript(JS). Typically, void is used to declare the return type of functions. Although you can declare a variable as void, we generally don't do this because it serves no meaningful purpose. Let's explore why in the examples below. The void Type Declaring a Variable as void let name: void; // Declare a variable `name` with type `void`. name = 'nan...
TYPESCRIPT,JAVASCRIPT,VOID,TYPE 2024-09-13 23:44:26
A simple example on implementing progress bar in GoLang
Sometimes when handling a long running process, there would be need to track the progress so that people know something is still running instead of doubting something goes wrong. In this case, a progress bar which indicates the current status and progress would be desired. This post will show an example on how to implement progress bar using GoLang. Let's take a look at the final outcome first before jumping into the implementation detail. The key in the implementation is actually just the \r ...
TUTORIAL,EXAMPLE,GOLANG,PROGRESS BAR 2020-08-08 23:53:15
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>>