## 6 Discussion
### Qualitative Approach Comparison  
Looking at the experimental results of Table 2 in greater detail, our proposed LibFilter system outperforms the matrix factorization of LibSeek in terms of recommendation quality, which we attribute to the wider receptive field of graph filters that explicitly accounts for co-usage patterns more than one hop away in dependency graphs. On the other hand, LibFilter lags behind the GNN architecture of GRec, which both learns representations and accounts for a wide receptive field. Nonetheless, evaluation in all experiments lies significantly closer to GRec and we consider deviations from the latter small enough for practical deployment sensibilities to play a greater role when choosing which approach to employ. In fact, when dependency graphs have many missing links, as happens for \(rm=5\), our approach catches up in terms of the MP, MR and MF1 measures. Therefore, we argue that the usage of LibFilter should be preferred as an out-of-the-box solution in place of more sophisticated representation-learning alternatives, as the latter need hours instead of fractions of a second to recommend libraries for a new project and would require \begin{table}
\begin{tabular}{l c c c c c c c c c c} \hline \hline  & \multicolumn{4}{c}{**Top 5 Recommendations**} & \multicolumn{4}{c}{**Top 10 Recommendations**} \\
**Approach** & **MP** & **MR** & **MF1** & **MAP** & **Cov** & **MP** & **MR** & **MF1** & **MAP** & **Cov** & **No-Learn** \\ \hline \multicolumn{11}{c}{Leave out 1 test library per project} \\ \hline GRec & 0.152 & 0.761 & 0.254 & 0.623 & 0.695 & 0.083 & 0.828 & 0.151 & 0.636 & 0.792 & x \\ LibSeek & 0.135 & 0.674 & 0.225 & 0.524 & 0.335 & 0.076 & 0.755 & 0.137 & 0.535 & 0.396 & x \\ LibPPR & 0.119 & 0.596 & 0.199 & 0.461 & 0.211 & 0.072 & 0.715 & 0.130 & 0.477 & 0.283 & ✓ \\ LibARW & 0.135 & 0.676 & 0.226 & 0.528 & 0.520 & 0.077 & 0.772 & 0.140 & 0.541 & 0.602 & ✓ \\ LibFilter & 0.140 & 0.700 & 0.234 & 0.552 & 0.544 & 0.079 & 0.789 & 0.143 & 0.564 & 0.620 & ✓ \\ \hline \multicolumn{11}{c}{Leave out 3 test libraries per project} \\ \hline GRec & 0.410 & 0.692 & 0.514 & 0.797 & 0.685 & 0.234 & 0.788 & 0.360 & 0.761 & 0.782 & x \\ LibSeek & 0.371 & 0.618 & 0.464 & 0.728 & 0.325 & 0.216 & 0.719 & 0.332 & 0.697 & 0.391 & x \\ LibPPR & 0.330 & 0.550 & 0.413 & 0.575 & 0.241 & 0.207 & 0.691 & 0.319 & 0.509 & 0.324 & ✓ \\ LibARW & 0.377 & 0.628 & 0.471 & 0.595 & 0.557 & 0.224 & 0.746 & 0.344 & 0.535 & 0.640 & ✓ \\ LibFilter & 0.391 & 0.652 & 0.489 & 0.597 & 0.579 & 0.228 & 0.760 & 0.351 & 0.542 & 0.655 & ✓ \\ \hline \multicolumn{11}{c}{Leave out 5 test libraries per project} \\ \hline GRec & 0.587 & 0.594 & 0.590 & 0.840 & 0.657 & 0.361 & 0.731 & 0.483 & 0.786 & 0.754 & x \\ LibSeek & 0.529 & 0.529 & 0.529 & 0.790 & 0.314 & 0.329 & 0.658 & 0.439 & 0.740 & 0.380 & x \\ LibPPR & 0.495 & 0.495 & 0.495 & 0.572 & 0.282 & 0.329 & 0.658 & 0.438 & 0.470 & 0.369 & ✓ \\ LibARW & 0.570 & 0.570 & 0.570 & 0.562 & 0.599 & 0.357 & 0.714 & 0.476 & 0.474 & 0.689 & ✓ \\ LibFilter & 0.588 & 0.588 & 0.558 & 0.602 & 0.363 & 0.725 & 0.484 & 0.476 & 0.688 & ✓ \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Comparison of library recommendation approaches. additional software engineering investigation to determine their viability for the services being developed. We then point out that the well-established practice of deploying personalized PageRank filters, which we modeled with LibPPR, fails to achieve a similar recommendation quality across all experiments and thus cannot be considered for real-world usage. In fact, it is outperformed by LibSeek to say nothing of the more sophisticated GRec. This result corroborates why collaborative filtering has moved away from graph filters and towards representation learning.