To meet the needs of different users, many software programs will introduce plugin functionality. The benefits of doing so are obvious: on one hand, it allows for the rapid contribution of the community to the software, and on the other hand, it can gauge user preferences based on download statistics and lay the groundwork for future official features. However, for users, plugins bring both a modular experience and certain risks, such as the possibility that plugin maintenance may not keep up with software updates or excessive reliance on plugins making data migration difficult.
The software programs I frequently use, such as Obsidian and KeePass, have plugin functionality. To avoid the aforementioned issues, I have established some basic principles for using plugins: only use automation plugins. In other words, if a plugin can achieve a certain function, I can also achieve it manually without needing any coding knowledge.
For example, in Obsidian, the plugins I often use include:
- "Douban"
- "Easy Typing"
- "Image Auto Upload Plugin"
"Douban" allows for quick importing of book information from Douban; "Easy Typing" enhances the Chinese input experience, such as automatically adding spaces between Chinese and English characters and quickly inputting symbols; "Image Auto Upload Plugin" makes it more convenient to upload images to an image hosting service and retrieve the corresponding links.
The functionality of these three plugins can all be achieved manually without any coding. This way, whether the plugins are unavailable or data needs to be migrated, it will not affect the established workflow.