Hi there, I’m Wuguang

and this is my software development blog. I’ll be sharing with you all things related to technology in this blog. If you would like to reach out to me, feel free to connect with me via LinkedIn.

๐Ÿ“– ๐—” ๐—บ๐˜‚๐˜€๐˜-๐—ฟ๐—ฒ๐—ฎ๐—ฑ ๐—ฏ๐—ผ๐—ผ๐—ธ ๐—ณ๐—ผ๐—ฟ ๐˜€๐—ผ๐—ณ๐˜๐˜„๐—ฎ๐—ฟ๐—ฒ ๐—ฒ๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ๐˜€

Recently, I came across a gem that I would like to share. Itโ€™s a book titled โ€œ๐—ช๐—ผ๐—ฟ๐—ธ๐—ถ๐—ป๐—ด ๐—˜๐—ณ๐—ณ๐—ฒ๐—ฐ๐˜๐—ถ๐˜ƒ๐—ฒ๐—น๐˜† ๐˜„๐—ถ๐˜๐—ต ๐—Ÿ๐—ฒ๐—ด๐—ฎ๐—ฐ๐˜† ๐—–๐—ผ๐—ฑ๐—ฒโ€ by Michael Feathers. If you are a software engineer, you will inevitably deal with legacy code such as ancient codebases, code developed by someone else, or even code written by yourself weeks ago that youโ€™ve forgotten about it. ๐—›๐—ฒ๐—ฟ๐—ฒโ€™๐˜€ ๐˜„๐—ต๐˜† ๐—œ ๐—ฟ๐—ฒ๐—ฐ๐—ผ๐—บ๐—บ๐—ฒ๐—ป๐—ฑ ๐—ถ๐˜: โ€ข Practical techniques: Proven methods to effectively understand, test, refactor and make changes to legacy code without introducing bugs. โ€ข Inspirational: You will no longer fear making changes. Work with confidence to improve the maintainability of legacy code. ...

April 11, 2025 ยท 1 min

๐—•๐—ฟ๐—ฒ๐—ฎ๐—ฑ๐˜๐—ต ๐—ผ๐—ฟ ๐——๐—ฒ๐—ฝ๐˜๐—ต? ๐—” ๐—ฐ๐—ผ๐—ป๐˜‚๐—ป๐—ฑ๐—ฟ๐˜‚๐—บ ๐—ณ๐—ผ๐—ฟ ๐˜€๐—ผ๐—ณ๐˜๐˜„๐—ฎ๐—ฟ๐—ฒ ๐—ฒ๐—ป๐—ด๐—ถ๐—ป๐—ฒ๐—ฒ๐—ฟ๐˜€ ๐Ÿค”

Software engineers constantly face a crucial question: Should I develop my knowledge across many technologies or develop deep expertise in a few areas? ๐—ง๐—ฒ๐—ฎ๐—บ ๐—•๐—ฟ๐—ฒ๐—ฎ๐—ฑ๐˜๐—ต: Adaptability: Able to get up to speed quickly and contribute to projects. Collaboration: Better understanding of various teamsโ€™ concerns. Problem solving: Able to connect disparate problems and find innovative solutions. Career flexibility ๐—ง๐—ฒ๐—ฎ๐—บ ๐——๐—ฒ๐—ฝ๐˜๐—ต: High impact: Able to deliver results in a short time with cutting edge solutions. Expertise and mastery: The defacto subject matter expert. Career advancement: Specialists are often sought after for more senior roles and top positions. Ultimately, it depends on your career aspirations and the needs of your organization. However, there a few considerations: ...

April 8, 2025 ยท 1 min

Boost your Java development productivity with Lombok! ๐Ÿš€

๐—ช๐—ต๐—ฎ๐˜ ๐—ถ๐˜€ ๐—ถ๐˜? Lombok is a Java library which auto generates boilerplate code through the use of annotations. It can generate code for getters/setters, ๐šŽ๐šš๐šž๐šŠ๐š•๐šœ(), ๐š‘๐šŠ๐šœ๐š‘๐™ฒ๐š˜๐š๐šŽ(), ๐š๐š˜๐š‚๐š๐š›๐š’๐š—๐š() and even constructors/builders. ๐—ช๐—ต๐˜† ๐˜‚๐˜€๐—ฒ ๐—ถ๐˜? It eliminates boilerplate code which leads toโ€ฆ Improve readability since there is less clutter and also makes pull requests easier to review. Increased productivity and frees up your time to focus on core business logic. An example ...

April 6, 2025 ยท 2 min

Happy World Backup Day

31 March is World Backup Day. Itโ€™s a reminder to backup your data or risk losing them forever. Backup your data. Keep your backups up-to-date. Verify your backups. Encrypt your backups.

March 31, 2025 ยท 1 min

SkillsFuture credits are expiring in 2025

SkillsFuture SG is an initiative by the Singapore government to upskill workers. With credits expiring at the end of 2025, this is our last opportunity to use this benefit to develop our skills. Hereโ€™s my opinionated list of the most important certifications for the IT industry. Scrum / Agile ITIL CompTIA Any of Azure/GCP/AWS cloud certifications What are you thoughts?

March 31, 2025 ยท 1 min

ComfyUI Quickstart

Introduction This is a quickstart guide for using ComfyUI to generate AI art using text prompts (i.e. text-to-image). Unlike other tutorials, we are just going to jump into the fun part of generating images without spending hours going through AI concepts. What is ComfyUI? ComfyUI is a free web-based app for generating images/video/audio using workflows. Workflows consists of nodes (processing steps) and edges (โ€œlinesโ€) connecting nodes via their inputs/outputs. An over simplified explanation: ...

March 30, 2025 ยท 2 min

Generating AI art with ComfyUI

Itโ€™s a long weekend and I was bored so I generated some random AI art to entertain myself. I used ComfyUI and ran some small models on my PC. You might be wondering why not use ChatGPT / Co-Pilot / Gemini? Hereโ€™s why: Itโ€™s free and there are no queues since you are generating the images on your own hardware. You are not limited to specific image sizes or aspect ratios. You are not limited to text-to-image prompts. You can generate image-to-image and even videos too. You can use a wide variety of models. There are models which are good at generating photo-realistic images, models good at anime style images, etc. Here are some samples that I generated: ...

March 30, 2025 ยท 1 min

I've created a new personal website

Iโ€™ve created a new personal website: https://hanwg.top My mentor/coach said I should I should have a presence online so here it is. Itโ€™s quite barren at the moment since I only started posting a few days ago but hopefully it will be filled with tech stories after a few years. I didnโ€™t use any of the mainstream platforms such as Medium or WordPress since ads suck and I donโ€™t want to pay for any subscription. Hence, I created my site using the following free tools: ...

March 28, 2025 ยท 2 min

I've got my AWS certifications ๐Ÿ˜†

Iโ€™m overjoyed that Iโ€™ve obtained the Amazon Web Services (AWS) DevOps Professional, Solutions Architect Professional and Security Specialty certifications. I did the certifications because I wanted to validate my skills after working on projects on AWS for a number of years. I passed the exams in a single attempt within a month and would like to share some tips: Lots of hands-on experience - Throughout the course of my work, I had to use a broad range of AWS services to deliver my projects. This helped me understand each service well and how various services work together (i.e. the architectural aspect). Such knowledge simply canโ€™t be gleaned from rote memorization of documentation. Youโ€™ve got to get your hands dirty and try to build a system. ...

March 26, 2025 ยท 2 min