I've been developing arduino projects for a few years now. I don't work for a software development company but I use arduinos for research projects.
My problem is that I now have many project folders containing code, forum links, tutorials, product pages, datasheets etc.
I then start a new project, and am looking for that one elusive forum link and forgot where I put it!
Just interested in how people organise their information so that it is easily searchable later. Github seems to provide a good platform for specific projects, but I'm thinking of a storage method where I can search knowledge learned across projects.
You can get a free GitHub Id if you like that platform.
I typically create a 'notes.h' tab and stick stuff in there. URLs I stick into browser bookmarks. Online notes & articles I simply Print to PDF and organize the receiving directory structure.
Windows directory search is rather flexible. You can always do a string search from the command prompt. Hint findstr findstr | Microsoft Docs
Me, too. My path has been to ween myself off local storage, opting for pasting links in code comments (i now like mrburnette's 'notes.h'). If the link becomes dead, it probably had updates. In the wayback machine, there were dead link notifiers for HTML, sort of like the Library Manager.
Which tools are used (including version numbers and links).
Links to external documentation, e.g., data sheets.
Etc.
If you write this in Markdown or reStructuredText format, you can easily find content with a simple text search. You can also convert these documents to HTML, docx, PDF, etc. with one click of a button. These formats also play nice with version control software such as Git.
Preferably also host this documentation online (e.g., via ReadTheDocs).
Yes, notes.h does seem the way forward. Perhaps it would help to write keywords at the top of files.
I'm also thinking that in addition to project folders, it would be a good idea to have separate folders for each microcontroller, compiler, and sensor type to extract the nuggets from each project
There are multiple ways to organize your code, and one of the best ways is to through IDL Workbench projects. The advantages of setting up individual projects rather than storing all of your files under one project are:
Code and its related supporting files are kept together.
Builds are cleaner and more efficient when you build an entire project at once, rather than compile .PRO files individually.
You can set the compile order and other preferences for the project used during the build process.