A successful Git branching model
Why git? For a thorough discussion on the pros and cons of Git compared to centralized source code control systems. As a developer, I prefer Git above all other tools around today. Git really changed the way developers think of merging and branching. From the classic CVS/Subversion world I came from, merging/branching has always been considered a bit scary and something you only do every once in a while. As a consequence of its simplicity and repetitive nature, branching and merging are no longer something to be afraid of. Version control tools are supposed to assist in branching/merging more than anything else. ...
Hugo Automatic deployment
GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD. Build, test, and deploy your code right from GitHub. Make code reviews, branch management, and issue triaging work the way you want. I use Github Actions to deploy site source files (eg: hugoBlog source) to GitHub Pages (eg: liugangjian.github.io ) automatically . My blog project architecture is shown below. In the figure we can clearly see there are three repositories. ...
Java Annotations Introduction
Java custom annotations are generally used with interceptors or AOP . Using the custom annotations to design your own framework can make the code look very elegant. What is Annotations ? Java annotation is an annotation mechanism, introduced by jdk5.0. Classes, methods, variables, parameters and packages in the Java language can be labeled. Unlike the Javadoc, Annotation can obtain annotation content through reflection. When the compiler generates class files, annotations can be embedded in bytecode. The Java virtual machine can retain the annotation content and obtain the annotation content at run time. Of course, it also supports custom Java annotations. ...
A Technical Guide to Credit Risk Prediction
Abstract: This article presents a systematic analysis of the Kaggle Home Credit Default Risk competition solution, detailing the complete machine learning pipeline from data preprocessing through feature engineering to model ensemble techniques. We examine the architectural decisions, implementation strategies, and performance optimization methods that achieved competitive results in this large-scale credit risk prediction task. The methodology encompasses data quality assessment, sophisticated feature extraction from relational databases, gradient boosting model optimization, and stacking ensemble strategies. Our analysis provides actionable insights for practitioners working on similar structured data prediction problems in financial risk assessment. ...