teleren/devto huggingface dataset:
The Best Resources for Learning Shiny App Development
Tags: shiny, rstats
Published: 2021-04-22 23:24:34

<p><em>By: <a href='https://hosting.analythium.io/author/peter/'>Peter Solymos</a></em></p><p>The Hosting Data Apps website is dedicated to help you learn about your hosting options. As outlined in the <a href="https://hosting.analythium.io/welcome-to-hosting-data-apps/">opening post</a>, data app development related content is kept to a minimum. In this post we list resources that provide accessible introduction to Shiny app development.</p><h2 id="what-is-shiny-again">What is Shiny again</h2><blockquote>Shiny is an R package that makes it easy to build interactive web apps straight from R ... Shiny combines the computational power of R with the interactivity of the modern web. – <a href="https://shiny.rstudio.com/">RStudio</a></blockquote><p><a href="https://www.rstudio.com/">RStudio</a> is the company behind such beloved products as the <a href="https://www.rstudio.com/products/rstudio/">RStudio IDE</a>, <a href="http://rmarkdown.rstudio.com/">R markdown</a>, the <a href="http://www.tidyverse.org/">tidyverse set of packages</a>, and <a href="http://shiny.rstudio.com/">Shiny</a>. It is then just fitting to open the list of Shiny related resources with all the incredible content produced by the folks closest to Shiny.</p><ul><li><a href="https://shiny.rstudio.com/tutorial/">Written and video tutorials</a> for users who are new to Shiny</li><li><a href="https://shiny.rstudio.com/gallery/">Shiny app gallery</a> to be inspired by and to learn from</li><li><a href="https://shiny.rstudio.com/articles/">Articles</a> related to all aspects of Shiny app development</li><li><a href="https://shiny.rstudio.com/articles/help.html">Getting help</a> about anything related to R and Shiny</li></ul><h2 id="books">Books</h2><ul><li><em><a href="https://mastering-shiny.org/">Mastering Shiny</a></em> by Hadley Wickham</li><li><em><a href="https://engineering-shiny.org/">Engineering Production-Grade Shiny Apps</a></em> by Colin Fay and others</li><li><a href="https://unleash-shiny.rinterface.com/index.html"><em>Outstanding User Interfaces with Shiny</em></a> by David Granjon</li></ul><h2 id="tutorials">Tutorials</h2><ul><li><a href="http://zevross.com/blog/2016/04/19/r-powered-web-applications-with-shiny-a-tutorial-and-cheat-sheet-with-40-example-apps/">Shiny tutorial and cheat sheet</a> by Zev Ross</li><li><a href="https://laderast.github.io/gradual_shiny/">A gradual introduction to Shiny</a> by Ted Laderas et al.</li><li><a href="https://deanattali.com/blog/building-shiny-apps-tutorial/">Building Shiny apps</a> – an interactive tutorial by Dean Attali</li></ul><p>These resources represent my go-to places when I need a refresher or inspiration. If you know of a great resource that deserves to be listed here, please suggest a title on Twitter (<a href="https://twitter.com/analythium" rel="noreferrer noopener">@analythium</a>)!</p>
Cannot launch puppeteer browser instance in docker image
Tags: javascript, devops
Published: 2021-04-22 20:38:03

Hi all,

I am trying a launch a headless chrome and perform some actions using puppeteer in my Nodejs code. 

This works great(with `npm start`) but when I try to build Docker image from Docker file and run the image and execute the function, I get the following error.

```
(node:18) UnhandledPromiseRejectionWarning: Error: Unable to launch browser, error message: Failed to launch the browser process!
[0422/194052.772673:FATAL:zygote_host_impl_linux.cc(117)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/master/docs/linux/suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.

```

So, after some search, I found that adding `args: ["--no-sandbox"]` during browser launch will solve the problem but still the same error keeps coming.

Here is my Dockerfile. 
https://slack-files.com/T04MYU6C6-F01V3C7NQTX-6b82740d91

Please suggest a workaround
Let's Learn .NET - C# - Free Live Stream Event
Tags: beginners, csharp, dotnet
Published: 2021-04-22 22:59:21

[Let's Learn .NET](https://aka.ms/letslearndotnet) is a monthly beginner series that walks through the fundamentals of using C# and .NET. This month, let’s start at the beginning with learning a modern, productive, and evolving programming language C#. C# (pronounced See-Sharp) is an open-source type-safe programming language that is part of .NET That enables you to build any type of application including mobile, web, cloud, desktop, IoT, and more. Together, we will learn what C# is, how to get started learning directly from the browser, and then what tools you can install to learn more!

This fun, beginner's series will teach you all about the fundamentals of everyday technologies and how you can master them using C# and .NET.

{% youtube Fn28yINqNfo %}

## When
**Friday, April 30th at 8:30 AM - 10:30 AM Pacific**

## Where

Streaming live for FREE on [Microsoft Learn TV](https://docs.microsoft.com/learn/tv/?WT.mc_id=dotnet-17847-jasingl). Sign-in, ask questions, and learn how to start programming with C#.

## What
Come learn something new and leave with something that we all built, together, live with experts. Here is the agenda for the event:

**Introductions (5 mins):**
- Meet the team!

**Fundamentals (20 mins):**
- C# 101  
     - What is C#?  
     - What can you build with C#?
     - How can you contribute to C#?

- Pre-requisites & installation  

**Workshop I (35 mins):**
- [Take your first steps with C#](https://docs.microsoft.com/learn/paths/csharp-first-steps?WT.mc_id=dotnet-22477-jasingl)

**Q&A (10 mins):**
- Get your questions answered live!

**Workshop II (35 mins):**
- [Continuing first steps with C#](https://docs.microsoft.com/learn/paths/csharp-first-steps?WT.mc_id=dotnet-22477-jasingl)

**Q&A (10 mins):**
- Get your questions answered live!

**Special Guest (10 mins):**
- Special guest appearance to share some awesome updates about education!

## RSVP Today
Head to [aka.ms/letslearndotnet](https://aka.ms/letslearndotnet) to RSVP today!

## Looking for more?
- [Join the Cloud Skills Challenge on Microsoft Learn](https://aka.ms/letslearnchallenge)!  
- [.NET 101 Videos](http://dot.net/videos)
ILLUSTRATOR / GRAPHIC DESIGN - Volunteer Recruitment
Tags: unity3d, design, webdev
Published: 2021-04-22 22:48:10

ILLUSTRATOR / GRAPHIC DESIGN
Volunteer Recruitment

ZAKKI is a social startup focusing on creating an inclusive community for the elderly and people with disabilities. Our mission is to facilitate alms and donations collection and deployment to help elderly people who still working in the informal sector to get better livelihood through micro-business management helps and giving them the exposure of greater market.

Currently, ZAKKI is developing a ramification project of educational games for toddler/children for anti-discrimination and anti-racism.

General Requirement:
- Fond to design, familiar with Adobe XD, Adobe Illustrator and Photoshop
- Enjoy designing character for avatar and game.
- Preferred to have basic knowledge of wireframe tools (e.g. Marvel, Wireframe.cc, InVision, Figma)
- Team spirit and good time-management skills
- Communicative (good communication skills to collaborate with various stakeholders)

Please fill up the Google Form:
https://forms.gle/p2pkFdK3ejHZkgE17

select role Illustrator/Graphic Designer

After the submission, you still able to edit your submitted respond in case you need to update your supporting documents (i.e CV/Resume)

For any further queries related to the volunteering vacancy, feel free to reach us out at hr@zakki.org.

https://blog.zakki.org will be redirected to Medium post
https://zakkifoundation.medium.com/illustrator-graphic-design-4f39d929727f
Day 351 : Cries of the Planet
Tags: hiphop, code, coding, lifelongdev
Published: 2021-04-22 22:34:01

_liner notes_:
- Professional : Had a really good day. Got up early to finalize my hackathon project. Stayed up late to get things to the point of at least working. Ran into an issue where I'm pretty sure I was doing something in a way it probably wasn't designed for. haha I asked the team on our Slack channel and got a good suggestion. Implemented it and it worked! Also worked out some CSS issues and got things the way I wanted just in time for the demo. The demo went really well. All the features worked how I wanted. Even had some other people join to test it out for me and it worked. Had an issue with someone using Firefox, so I'll have to look into that. But for 2 days of work, I'm happy. Got to incorporate things I have been working on and include new things. After the demo, had another event for a co-worker. When that was over, I had to take a nap. It was a long day. haha

- Personal : Last night, I stayed up to get my project to at least working so I would have something to demo. Didn't really do much else. I was pretty focused knocking out features.

![Photo of a Stunted Pine at sunset](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6dgukjv26m4r7j2xsml5.jpg)

Woke up from my night feeling good. Going to work on the slides for my presentation coming up. Found out that the presentations won't be live, so I'll have to record mine this weekend and submit it. Also want to continue on the landing page for the site I will be live streaming on. Probably go through some tracks for the radio show, watch an anime and call it a night. Oh and Happy Earth Day. Here's a song from the homie Mega Ran.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube GjNv3aNzqSo %}
Hello, police? I see bugs everywhere!
Tags: testing, agile, 5days5blogposts
Published: 2021-04-22 22:27:24

**There is a group of testers, that adopt certain behaviours, when it comes to testing.**

Sometimes, they are happy they found a bug, just so they can stick it to the person, who wrote that part of the program. Sometimes, they try to impose quality by meticulously entering bugs into a defect tracking system. Sometimes, they tend to keep metrics about the number of defects found in a release, just to stick them to the devs. Sometimes, they reprimand programmers for supposedly poor-quality work or for not following proper procedures or coding standards. Sometimes, they decline testing builds that don't have adequate documentation. Sometimes, they are convinced that programmers need drilling and are there to happily provide it. 

**Those people are the quality police.**

_**Don't be a quality police officer.**_

Testing does not _automatically_ increase the quality of the product. Software testers are people responsible for testing software _(du-uh)._ They need to report what do they see and what is lacking. 

If errors, defects or failures are communicated in a _constructive_ way, bad feelings in the team can be avoided. 


![Old lady talking to the phone: Hello, police? I see bugs everywhere!](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r72tzxq75x6z8k7ouqvn.jpg)
Code Vlog: Building a Linktree Clone Static Site Generator
Published: 2021-04-22 22:17:06

{% youtube O2WtM_7_604 %}

Hey guys,

I have decided to make more coding videos on my youtube channel. This is my very first attempt at making a code vlog.

I hope you will enjoy the full video which will premieres on Saturday.

Full Vlog:
{% youtube 91-MV2m0YlA %}
Iterate with JavaScript Do...While Loops
Tags: javascript, devops, tutorial, beginners
Published: 2021-04-22 21:59:45

The next type of loop you will learn is called a do...while loop. It is called a do...while loop because it will first do one pass of the code inside the loop no matter what, and then continue to run the loop while the specified condition evaluates to true.
* Example:
```
var myArray = [];
var i = 10;

do {
  myArray.push(i);
  i++;
} while (i < 10);
```
```
console.log(myArray); will display [ 10 ]
console.log(i); will display 11
```
* In this case, we initialize the value of i to 10. When we get to the next line, there is no condition to evaluate, so we go to the code inside the curly braces and execute it. We will add a single element to the array and then increment i before we get to the while condition. When we finally evaluate the condition i < 10 on the last line, we see that i is now 11, which fails the I < 10 so we exit the loop and are done. At the end of the above example, the value of myArray is [10]. Essentially, a do...while loop ensures that the code inside the loop will run at least once.
Be more productive in Visual Studio with #TODO
Tags: 5days5blogposts, visualstudio, productivity
Published: 2021-04-22 21:58:19

[Task List](https://docs.microsoft.com/en-us/visualstudio/ide/using-the-task-list) in Visual Studio is not very popular but it's one of the most simple and productive solutions to remember things to do. Let me show you how to use in everyday work.

# How it works?

The idea is to just write simple `// TODO` in the code and the IDE will show this line of code in the Task List window. You can also write description afterwards to also have it in the Task List: `// TODO need to add logic here`. This is how it looks in the code:

```csharp
if (someFlag == true)
{
    doSomething();
    doSomethingMore()
}
else
{
    // TODO need to add logic here
}
```

And that's how it looks in my IDE. I disabled all the additional columns because for me they are they are unnecessary.
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l77lz5twq1xjw1kvl3h1.png) 

# Tips and tricks

- double click on task will open that particular line in the code
- I prefer to leave only the "Description" column and hide all the others, as they are irrelevant for me
- add a number after `//TODO` and before description and you will be able to sort the list by priorities
- add your initials after `//TODO` and use search if your colleagues refuse to handle their *todos*

# When to use it?

- when you are in the flow and would like to remember something for later
- when you would like to maintain clear git commit log and you don't like to have big commits
- when you notice a refactor opportunity/necessity but you would rather do it later

# When not to use it?

- this is not a feature to replace your kanban board
- please don't use it to mark tasks you will maybe do in future sprint
- don't delegate work to your colleagues with this Task List

# How to show Task List in VS?

Just press `Ctrl + Q` and type "task list" or press `Ctrl + W, T` .
Git custom commit messages
Tags: git, github, gitlab, terminal
Published: 2021-04-22 21:45:06

I've been using the [CMF](https://github.com/walmartdigital/commit-message-formatter) tool for the last one year and I think its simplicity is its potential. Basically it is a terminal tool developd in Go by [Walmart Digital](https://github.com/walmartdigital) that helps you to standarize the commits log of your projects.

I've been using for the last year and a half approximatley and all I can say its very useful. We agreed with the team the configuration we want to use and defined a set of changes that applies in our case. Also we choose the [Jira flow](https://github.com/walmartdigital/commit-message-formatter#jira-flow) and we changed the values for the `change` adding an emojis to make the commits a bit more funny to check them in the log.

You can install it via npm:
```vim
npm install -g go-cmf
``` 
or from Go:
```vim
go install github.com/walmartdigital/commit-message-formatter
```

After that, open a terminal and navigate to the root of the project you want to use it. Then type:
```vim
cmf init 
```

You will need to select one of the flows and it will create a `.cmf.yaml` file with the template of the selected one. You can edit that file in the way you want. The unique condition is that any variable you wanna use have to be defined using `{{}}`. Example: `{{CHANGE}}` it will prompt you asking the CHANGE you did and displaying the options you defined in the template.

Here is the `.cmf.yaml` file that I'm using on this site:
```
PROMPT:
    - KEY: "CHANGE"
      LABEL: "Type of change"
      OPTIONS:
        - VALUE: "feat :sparkles:"
          DESC: "A new feature"
        - VALUE: "fix :bug:"
          DESC: "A bug fix"
        - VALUE: "test :rotating_light:"
          DESC: "Adding missing tests or correcting wrong ones"
        - VALUE: "style :lipstick:"
          DESC: "A code change to improve clean code"
        - VALUE: "build-ci :construction_worker_man:"
          DESC: "Changes that affect the build system and/or CI configuration files and scripts"
        - VALUE: "refactor :hammer:"
          DESC: "A code change"
        - VALUE: "docs :books:"
          DESC: "Documentation only changes"
        - VALUE: "chore :card_index:"
          DESC: "Changes that don't fit any of the options above"
    - KEY: "MESSAGE"
      LABEL: "Commit message"
TEMPLATE: "{{CHANGE}}: {{MESSAGE}}"
```
How I learn Golang in 3 days
Tags: go, backend, english
Published: 2021-04-22 21:41:31


In this post, we will talk about **Go**, I will share with you some resources, opinions, and recommendations that were so util for me.

And I know that you are thinking something, Yes! I know that the title of this post is a little bit clickbait, but, **WAIT!**

I can explain to you if this is really true or not.
So, let's begin.

## How I achieve that?

Well, I cannot tell that I domain Go, but in 3 days I feel so good with the results.
In these 3 days, my study routine was like 4 hours per day, like 3 hours reading the docs or watching courses and at the time coding and the other hour is experimenting the learned with the curious things that I need know if works on Go.
And now, I feel so good to start some little projects to win a lot of experience.

## Why the title?
The title can be completely fake if is your first language, don't worry if this is your case, you can learn same this amazing language but in more time :), so...
### What happens with the people that have a little bit of experience in others programming languages?
I believe that maybe you know the answer. Obviously, this will be easier, because you only need to learn a new syntax, you don't need to learn again the logic that for the 99% of the people this can be the most difficult part when you are learning at the beginning.
So, again, the title no is literally but will tell you what things you can learn in 3 days after that what you can do.
## In 3 days this you can learn
3 days, this would sound a little bit crazy but is possible to learn the necessary to after that search for a job (Nah, I'm just kidding 🤣)
Well, now out of joking after that you can start making your own projects and with the time be a master in go, but before I will tell you the things that you need learn (I recommend you the same order):
* Variables
* Primitives 
* Constants 
* Arrays and Slices
* Maps and Structs
* If and Switch Statements
* Looping 
* Defer, Panic, and Recover
* Pointers
* Functions 
* Interfaces

After that, you can start making some projects simple API's and more things!

Honestly, for me, the most difficult of these topics are the **Pointers** and the **Interfaces** I recommend you take a lot of attention to these topics, if you study a lot you will understand too well.

# Resources
Some very good resources that I recommend **FOR FREE**

* [FreeCodeCamp 7 hours course from scratch](https://www.youtube.com/watch?v=YS4e4q9oBaU) 
* [The official tour of Go](https://tour.golang.org/)
* [The playground of Go, without installations](https://play.golang.org/)

## Thank you for reading this post
I hope that this post was nice for you, Please, if you like this post leave a heart and follow me here and on my [github](https://github.com/SantiagoVA)

_Note: English is not my main language, so if I have some mistake please leave me a comment and without fears, tell me :)_
Nesting For Loops
Tags: javascript, devops, tutorial, beginners
Published: 2021-04-22 21:36:32

If you have a multi-dimensional array, you can use the same logic as the prior waypoint to loop through both the array and any sub-arrays. 
* Here is an example:
```
function multiplyAll(arr) {
  var product = 1;
 
 for (var i = 0; i < arr.length; i++) {
   for (var j = 0; j < arr[i].length; j++) {
    product *= arr[i][j];
   }
 }
  return product;
}
```
```
console.log(multiplyAll([[3,4],[1,2],[5,6,7]])); will display 5040
```
Here we modified function multiplyAll so that it returns the product of all the numbers in the sub-arrays of arr.
```
for (var i = 0; i < arr.length; i++) {
}
console.log(arr[i]); displays 
[ 3, 4 ]
[ 1, 2 ]
[ 5, 6, 7 ]
```
```
for (var j = 0: j < arr[i].length; i++) {
}
console.log(arr[i][j]); displays
3
4
1
2
5
6
7
```
```
product *= arr[i][j];
console.log(product); // displays 

3    (1 (beginning product = 1;) * 3 <-- arr[0][0]); 1 * 3
12   (now product is equal to 3 (product = 3) * 4 <-- arr[0][1]); 3 * 4
12   (product = 12) * 1 <-- arr[1][0]; 1 * 12
24   (product = 12) * 2 <-- arr[1][1]; 2 * 12
120  (product = 24) * 5 <-- arr[2][0]; 5 * 24
720  (product = 120) * 6 <-- arr[2][1]; 6 * 120
5040 (product = 720) * 7 <-- arr[2][2]; 7 * 720
```
``` 
return product; will display 5040
```
How to add Google Analytics to your Hugo site
Tags: go, hugo, blog, googleanalytics
Published: 2021-04-22 21:36:00

## Google Analytics

First of all what you need is to obtain a Google Analytics tracking ID. For that you need to sign up at [Google Analytics](https://analytics.google.com/analytics/web/). Then, you need to create a tracking ID following the next steps:

- Click on `Admin` button (on the bottom left corner).
- Click on `Create Account` button.
- After all the steps filled, click the `Create` button and accept the terms and conditions.

After the completion of these steps you will obtain your tracking ID. Copy it for add to your Hugo site later.

## Hugo configuration

Now it's turn to add the tracking ID to your site.
The easiest way for do it is using the Hugo's [internal template](https://gohugo.io/templates/internal/#google-analytics) provided by Hugo. You just need to add a new variable called `googleAnalytics` with the `tracking ID` obtained from the previous step in your `config.toml` like:
```vim
googleAnalytics = "UA-123-45"
```

The next step is to add the following snippet of code in your site:
```vim
{{ template "_internal/google_analytics.html" . }}
```
You should search for the `head` partial template and add it inside the `<head></head>` tags.

## Checking the integration

Before passing that to production you can test it running your site locally performing the next command:
```vim
hugo serve
```

The default url on localhost is `http://localhost:1313`.

Open again or refresh [Google Analytics](https://analytics.google.com/analytics/web/) on a different tab. 

Check the dashboard and you should be able to see the number under the section Active Users right now as 1 like the picture below:
![active-users](https://charly3pins.dev//images/google-analytics-active-users.png)

I hope it helped you and feel free to comment here or contact me on my social media for any comments, questions or suggestions.