For Eagle CAD software, during schematic or board layout, how can I search for parts/footprints already created by other people out there, to make my life easier? And if I'm still unable to find what I want, how can I create my own parts?
(Note: This question is intended as a reference for future readers, hence I am both asking the question as well as providing my own answer below based on the things I know. Perhaps others can chime in as well.)
Best Answer
For any serious work, you won't want to get parts made by someone else because they won't adhere to your conventions. I always make my own parts, which is really not that difficult.
I have certain requirements for parts, like attributes for automatic BOM generation, and text at particular sizes and and layers for the silkscreen, the assembly drawing, etc. Others aren't likely to make parts just the way I want them, and to inspect and vet someone else's parts would take at least as long as just making my own in the first place. When you do this for business and your reputation depends on it, you have to be picky.
However, hobbyists can be more lax. Others are welcome to use my parts and a bunch of other Eagle-related utilities I have developed over the years. Go to my downloads page and install the Eagle Tools release. This contains a bunch of libraries with parts, but also various ULPs, scripts, and host programs I use around Eagle. For example, there is a whole system for genering the BOM from the schematic and board, and then creating the labels for the kit. Start with the CSV_BOM documentation file in the DOC directory and follow the cookie crumbs.
To give you some idea of how the BOM generation system works, here is most of the EAGLE_ATTR documentation file: