# Where can I find a tutorial for adding a new datashield function and its installation？

**URL:** <https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184>\
**Category:** Developer support\
**Created:** [14 February 2020 07:33 UTC](https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184 "2020-02-14T07:33:33Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![HankCao](https://avatars.discourse-cdn.com/v4/letter/h/b782af/32.png) [@HankCao](https://datashield.discourse.group/u/HankCao)\
**Post date:** [14 February 2020 07:33 UTC](https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184/1 "2020-02-14T07:33:33Z")

</div>

Hi all,

I started to work on transferring the machine learning algorithms in [RMTL](https://cran.r-project.org/web/packages/RMTL/index.html) to datashield framework. I would like to implement a LASSO algorithm as an example. For this I need to learn how datashield transfer the intermediate-result in each iteration (i.e. fisher matrix in glm). In addition, I need to know how to install the new function for testing.

Anyone can show me the related tutorial and information? Very appreciated.

Regards, Hank

---

<div class="post-metadata">

**Author:** ![becca.wilson](https://yyz2.discourse-cdn.com/free1/user_avatar/datashield.discourse.group/becca.wilson/32/14_2.png) [@becca.wilson](https://datashield.discourse.group/u/becca.wilson)\
**Post date:** [18 February 2020 09:42 UTC](https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184/2 "2020-02-18T09:42:41Z")

</div>

@demetris.avraam can you send some info please to Hank.

---

<div class="post-metadata">

**Author:** ![demetris.avraam](https://avatars.discourse-cdn.com/v4/letter/d/439d5e/32.png) [@demetris.avraam](https://datashield.discourse.group/u/demetris.avraam)\
**Post date:** [19 February 2020 09:53 UTC](https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184/3 "2020-02-19T09:53:11Z")

</div>

Hi Hank,

In the following two links you can find information on how to develop and test functions in DataSHIELD: [https://data2knowledge.atlassian.net/wiki/spaces/DSDEV/pages/658505761/Testing](https://data2knowledge.atlassian.net/wiki/spaces/DSDEV/pages/658505761/Testing)[https://data2knowledge.atlassian.net/wiki/spaces/DSDEV/pages/12943455/Tutorial+for+developers](https://data2knowledge.atlassian.net/wiki/spaces/DSDEV/pages/12943455/Tutorial+for+developers)

Unfortunately, we haven’t updated the “tutorial for developers” for a while and you might therefore find some parts related to previous versions of DataSHIELD. If you have any specific questions during your developments and there is not any related information in the wiki you can post here and we will try to help you.

Also the following two links is the code of the client-side ds.glm function and the second server-side glmDS2 which updates and transfers the information matrix and the score vector at each iteration:

> <https://github.com/datashield/dsBaseClient/blob/master/R/ds.glm.R>

> <https://github.com/datashield/dsBase/blob/master/R/glmDS2.R>

---

<div class="post-metadata">

**Author:** ![HankCao](https://avatars.discourse-cdn.com/v4/letter/h/b782af/32.png) [@HankCao](https://datashield.discourse.group/u/HankCao)\
**Post date:** [19 February 2020 12:13 UTC](https://datashield.discourse.group/t/where-can-i-find-a-tutorial-for-adding-a-new-datashield-function-and-its-installation/184/4 "2020-02-19T12:13:23Z")

</div>

Hi Demetris,

Great, many thanks.

Regards, Hank
