A system comprising a plurality of clients and a server adapted for assisting in generating personalized item recommendations for a user of a client (i) within the plurality of clients, on the client (i), said server being configured to utilize a global set of items (j 1,...,j M) and at least one model (A1,...,AK), said server being connected to the plurality of clients (i 1,...,i N), each client (i) being configured to download said at least one model (A1,...,AK), and generate at least one updated model (A12 i,...,AK2 i) or updates (dA1 i,...,dAK i) for said at least one model (A1,...,AK) using a local client data set (u i), wherein the plurality of clients and the available items are collected in a client-item matrix R = ( r ij) ∈ R N×M, N being the maximum number of clients (i) connected to the server, and M being the maximum number of items (j) available on the server, the client-item matrix R being sparse with many elements r ij unspecified, said server further being configured to: generate at least one new updated model (A12,...,AK2) by means of updated models (A12 i,...,AK2 i) or updates (dA1 i,...,dAK i) uploaded by at least one of said clients (i 1,...,i N), and transmit said new updated model(s) (A12,...,AK2) to said plurality of clients (i 1,...,i N), wherein said new updated model(s) (A12,...,AK2) and the local client data set (u i), stored on said client (i), are utilized for each client (i) generating said personalized item recommendations; wherein said client data set (u i) comprises implicit user feedback and/or explicit user feedback, the implicit feedback comprising actions taken by the user, comprising downloading an application, the explicit feedback comprising user reviews of items, and wherein unspecified elements in the client-item matrix are replaced by estimates and the estimates are based on the implicit and/or the explicit feedback from a plurality of users, and wherein Collaborative Filtering is used to replace the unspecified elements with their estimates. said server being configured to utilize a global set of items (j 1,...,j M) and at least one model (A1,...,AK), said server being connected to the plurality of clients (i 1,...,i N), each client (i) being configured to download said at least one model (A1,...,AK), and generate at least one updated model (A12 i,...,AK2 i) or updates (dA1 i,...,dAK i) for said at least one model (A1,...,AK) using a local client data set (u i), wherein the plurality of clients and the available items are collected in a client-item matrix R = ( r ij) ∈ R N×M, N being the maximum number of clients (i) connected to the server, and M being the maximum number of items (j) available on the server, the client-item matrix R being sparse with many elements r ij unspecified, said server further being configured to: generate at least one new updated model (A12,...,AK2) by means of updated models (A12 i,...,AK2 i) or updates (dA1 i,...,dAK i) uploaded by at least one of said clients (i 1,...,i N), and transmit said new updated model(s) (A12,...,AK2) to said plurality of clients (i 1,...,i N), wherein said new updated model(s) (A12,...,AK2) and the local client data set (u i), stored on said client (i), are utilized for each client (i) generating said personalized item recommendations; wherein said client data set (u i) comprises implicit user feedback and/or explicit user feedback, the implicit feedback comprising actions taken by the user, comprising downloading an application, the explicit feedback comprising user reviews of items, and wherein unspecified elements in the client-item matrix are replaced by estimates and the estimates are based on the implicit and/or the explicit feedback from a plurality of users, and wherein Collaborative Filtering is used to replace the unspecified elements with their estimates. generate at least one new updated model (A12,...,AK2) by means of updated models (A12 i,...,AK2 i) or updates (dA1 i,...,dAK i) uploaded by at least one of said clients (i 1,...,i N), and transmit said new updated model(s) (A12,...,AK2) to said plurality of clients (i 1,...,i N), wherein said new updated model(s) (A12,...,AK2) and the local client data set (u i), stored on said client (i), are utilized for each client (i) generating said personalized item recommendations; wherein said client data set (u i) comprises implicit user feedback and/or explicit user feedback, the implicit feedback comprising actions taken by the user, comprising downloading an application, the explicit feedback comprising user reviews of items, and wherein unspecified elements in the client-item matrix are replaced by estimates and the estimates are based on the implicit and/or the explicit feedback from a plurality of users, and wherein Collaborative Filtering is used to replace the unspecified elements with their estimates.