SEARCH KEYWORD -- BEACON API
Canonicalize XML in Java
XML canonicalization is often used when there is need to create digital signature to be sent to peers for verification. Since digital signature is created based on XML data, the XML data has to be canonicalized before its signature value can be calculated. Even an extra space may affect the signature value calculated, hence it must follow some rules to canonicalize the XML data so that it has a standard format. This is why W3C created specification Canonical XML Version 1.1. This specificat...
JAVA,XML,JAVA SECURITY 2016-01-20 01:39:45
Let's talk about JavaScript deep clone
In JavaScript, deep clone means creating a brand new object that includes all nested objects, with all properties being completely independent copies. This is different from shallow copying, which only copies the first-level properties, with nested objects being referenced rather than copied. There are multiple ways to perform deep copying in JavaScript, but the best one to use depends on the specific use case. Can use JSON.parse & JSON.stringify? ❌ JSON.parse(JSON.stringify(obj)) is a dep...
JAVASCRIPT,DEEP CLONE 2023-02-25 08:57:11
Cross platform portable class libraries and .net
What’s that happy little feature developers are admiring? Oh that’s Portable class libraries that have been chugging along, during their thing and delivering to the point results wherever used by developers. If a developer is not writing .net applications for multiple targets, then he likely hasn’t bumped into these libraries. However, developers who are writing .net apps and want these apps to run on every platform from watches to tablets to desktops to the cloud, they can ava...
asp.net, Cross platform 2015-01-12 05:06:44
ByteBuffer in Java
ByteBuffer is introduced in java.nio since Java 1.4. It provides a way of representing raw structured data such as from a file or from network. It enables fast access of underlying data compared to traditional ways like byte[] Prior to Java 1.4, if you want to represent a structured raw data, you need to create a byte[] and then having a set of checks to delimit the byte array to get the expected tokens. There are three ways to create a ByteBuffer: Wrapping an exiting array by calling ByteBuffe...
JAVA,BYTEBUFFER,ALLOCATION 2015-07-08 03:17:44
The story behind Sublime Text
Sublime Text is a cross-platform text and source code editor, with a Python application programming interface (API). The graphical user interface design was inspired by Vim.Its functionality is also extendable with plugins; Post its release, it gained much attention and wide popularity. Do you know what's the story behind Sublime Text? Jon Skinner left his job as a software engineer at Google in order to pursue a dream: to build a better text editor. The end result is the popular Sublime Text t...
Sublime Text,Story,History 2013-09-22 11:05:36
PHP to integrate with Sign in with Google
Google has a huge user base and hence it provides an authentication service for third party service to integrate with them so that people can sign in with Google in their services. Google also adopts OAuth 2 to provide this kind of Open ID connect service. This post will introduce how to integrate with sign in with Google functionality in your PHP website. Create a client app on Google The first step you should follow is to create a Google app, you can follow the post here to create the p...
PHP,GOOGLE API,OPEN API,SIGN IN WITH GOOGLE 2019-03-03 02:00:09
A handbook on the first day of joining a new internet company as BE engineer
When joining a new internet company, there might be lots of things need to be done to get ready for taking new challenges. These include both culture and tech preparation. in this post, we would focus on how to prepare the first day technically. The first thing to do is to get your laptop or your work machine up, these involves lots of tool setup and accesses. Normally there are three major task categories. Access As an engineer, there are lots of accesses needed to access different resources wi...
TIPS,CAREER ADVICE,ONBOARDING 2021-12-11 21:32:10
Service discovery with etcd
In previous post, we have talked about etcd and its usage. This post we will cover how to implement server discovery with etcd. Service discovery is to solve one of the most commonly seen scenarios in distributed system where how to find the corresponding target service to talk to. In short, it is to find some server which one can talk to based on some service name. A complete service discovery system include below three key functions: Service registration: A service must register itself to so...
ETCD,SERVICE DISCOVERY,DEMO,TUTORIAL 2021-03-08 05:36:29
Generate certificate from cert file in Java
A certificate is often used to prove the identity of a server. The certificate will contain information such as the subject and issuer of the certificate. It will also contain the validation date of the certificate. A certificate is often exported to an external cert file which is transferred over the internet. We will often see its use in SSL communication which provides secure communication between two entities. In this post, we will show how to read the data from an external certificate file ...
PKCS12,CertificateFactory,Example,Java,X509 2015-06-08 06:47:05
Why does Symbian collapse?
On 24th January, Nokia announces a disappointing news that they would give up Symbian. The 808 PureView released last year will be its last Symbian model. Symbian was born in 1998, it was supported by the then three mobile giants : Sony Ericson, Motorola and Nokia after its birth, later Samsung and LG also joined the Symbian camp. In 2000, the first Symbian model in the world Ericoson R380 was released, in 20006, there were over 100 million Symbian handphones on the market. But in 2007, t...
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>>