teleren/devto huggingface dataset:
How to create a custom task in grunt
Tags: javascript, java
Published: 2020-11-23 10:57:43


A an example of how you can create a custom task using grunt (in terms of steps)

* The initial Grunt.json looks like the following

```javascript
module.exports = function(grunt) {
  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json')
  });
 
};
```

* inside the function you add the following line:

```javascript
  //   My custom task.
  grunt.registerTask('MySuperTask', 
                     'This is a magical task!', 
                     () => console.log('The super custom task is executed...'));
```

- the first argument in the name of the task
- the second argument is the task description
- the actual code that is going to be executed for that task

So the Grunt.js becomes:

```javascript
module.exports = function(grunt) {
  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json')
  });
  
    //   My custom task.
  grunt.registerTask('MySuperTask', 
                     'This is a magical task!', 
                     () => console.log('The super custom task is executed...'));
 
};
```


* you run the task by running the following command from your terminal
   (I assume that the grunt-cli is installed):
  ```
  grunt MySuperTask
  ```
  
## **Bonus**: gradle and grunt

You can perform a grunt task through gradle, doing the following:

* include in the plugins section of the build.gradle file, the plugin:
```
  id "com.moowork.grunt" version "1.2.0"
```
* you can run the custom task by executing the following line:
```
gradle grunt_MySuperTask
```

The translated custom task in the gradle is in the form: grunt_CustomTaskNameInGrunt
  
Cheers!
7 essentials features for an e-learning app
Tags: mobile, kotlin, swift
Published: 2020-11-23 10:53:50

Digital education is a vast and fascinating world with lots of monetization opportunities – Forbes predicted its growth in 2018, and the development has been skyrocketing ever since.
If you're a developer and build an e-learning app, the list of features that an e-learning app should have may be very useful for you to identify the amount of work.
So here it is:

**User-Friendly Interface**

Nobody likes wasting their time on the app to figure out how to do things and where is what. Set up an intuitive user interface to search through courses, start on assignments, and watch their progress with a few clicks.

**Multimedia Content**

The best E-learning application supports various types of information, making students stay impressed, entertained, engaged – and thereby better educated.

**Gamification**

Game elements are perfect if you want to develop an E-learning website or application. Gaming systems add some fun in the process, ease the stress, and speed up learning. They also give rewards to students, which is essential to increase motivation.

**Push Notifications**

They are an instant, convenient, and non-intrusive way of communication. Users get information on new courses or their progress; questions answered or DMs received; reminders to continue training, etc.

**Communication**

Users won’t feel lonely and bored of your E-learning app if they resolve issues, share opinions, compete with each other, and contact their tutors. You can achieve it by setting up course discussions, dashboards, and direct messaging.

**Offline Learning**

Inspired learners won’t be interrupted by problems with their internet connection if they can do some activities offline – for example, make drafts or read through material they previously downloaded. This way, using your app becomes a daily habit.

**Syncing between mobile/desktop and online/offline versions**

You have to ensure that learners won’t have their progress disappear. One particular version should direct them exactly where they finished on the other. This way, users stay interested and wish to go on.

*To learn advanced features and what is functionality for students, teachers, and admins you can read <a href="https://exceed-team.com/blog/how-much-does-it-cost-to-buid-elearning-app">the original article</a>  to the end. Thanks! Don't hesitate to write comments*.
Spotify Project Idea Coming to Life in My Brain
Published: 2020-11-23 10:48:53

_This post was originally published on November 23, 2020 on [my blog] (https://alexlsalt.github.io/blog)._

Happy Monday! You know you're on to a good side project idea when you can practically feel your brain ticking away at it in the background all weekend long!

I may have mentioned the topic idea in one of my last posts, but here's the idea! It's going to use the Spotify API to create a sort of 'Morning Radio' playlist each day depending on the user's preferences of what they want to listen to each morning.

For example, I like to listen to the daily 5-minute NPR News Now podcast, so I'd add a new episode of that each day, and then maybe cycle through other podcast episodes (maybe on the shorter end so that it's not too much of one thing) - maybe a French news podcast that has the highlights of the day.

And then, sprinkled in between those 'talk'/podcast portions of the playlist, the app will choose random songs from those playlists that the Spotify algorithm makes for you based on your own unique music interests.

That's going to be the minimum viable product option for now, but later, I'd like to possibly see if I can make it into an actual mobile app using React Native and then be able to set a time on my phone for it to play automatically with alarm-clock functionality...

Ooooh! More planning to come!

In other daily news, I'm going to be continuing to work through my Pure Redux course to really solidify Redux (it's actually going really well, and I'm really loving learning about state management patterns!) as well as apply to a couple of job positions I have on my radar!

--------------

P.S. I'm searching for my next role as a Front-End Web Developer! If you have any leads, please let me know! 

My current tech stack: JavaScript ES6, React/Hooks, Redux, Firebase Firestore, Firebase Authentication, HTML/CSS, Git

[Portfolio](https://alexlsalt.github.io/) // [LinkedIn](https://www.linkedin.com/in/alex-morton-creative/) // [GitHub](https://github.com/alexlsalt)
Formulas to Sum the Values by Group in Excel Office 365!!
Tags: excelformula, excelformulas
Published: 2020-11-23 10:47:48

---
title: Formulas to Sum the Values by Group in Excel Office 365!!
published: true
date: 2020-11-23 10:40:43 UTC
tags: ExcelFormula,Excelformulas
canonical_url: https://geekexcel.com/formulas-to-sum-the-values-by-group-in-excel-office-365/
---

In this article, we will discuss the **formulas to sum the values from a range by a group in Excel Office 365**. Let’s get into this article!! Get an official version of ** MS Excel**  from the following link: [https://www.microsoft.com/en-in/microsoft-365/excel](https://www.microsoft.com/en-in/microsoft-365/excel)

[![Formulas to sum by groups](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2020/11/Formulas-to-sum-by-groups.png)](https://geekexcel.com/formulas-to-sum-the-values-by-group-in-excel-office-365/formulas-to-sum-by-groups/#main)<figcaption id="caption-attachment-17908">Formulas to sum by groups</figcaption>
## General Formula:

- To sum the values by a group in Excel, use the below formula.

**=[IF](https://geekexcel.com/use-if-function-in-microsoft-excel-365-simple-steps/)(A2=A1,””,SUMIF(A:A,A2,B:B))**

## Syntax Explanations:

- **IF** – The Excel** [IF function](https://geekexcel.com/use-if-function-in-microsoft-excel-365-simple-steps/)** return one value for a TRUE result, and another for a FALSE result.
- **SUMIF** – It will return the sum of cells that meet a single condition. Read more on the **SUMIF Function**.
- **Comma symbol (,)** – It is a separator which helps to separate a list of values.
- **Parenthesis ()** – The main purpose of this symbol is to group the elements.
- **Range** – It represents the input range from your workbook.
- **Criteria** – It is the condition that is used to sum the values.

## Example:

- Let’s consider the below image to sum the values by a group.
- In this example, we will give the input values in **Columns B and C**.
- Then, enter the given formula in the formula bar section.
- After applying the formula, we will get the result as shown in the below image.

![Example](https://eadn-wc04-371788.nxedge.io/cdn/wp-content/uploads/2020/11/Example-59.png)<figcaption id="caption-attachment-17907">Example</figcaption>

## Verdict:

From this article, we guided you to know the **formulas used to sum the values by a group in Excel Office 365**. Hope you like this article. Kindly, share your **feedback** in the comment section. Thanks for reading!! Keep learning on **[Geek Excel](https://geekexcel.com/)!! **and [**Excel Formulas**](https://geekexcel.com/excel-formula/) **!!**

### Related Articles:

- **[Excel Formulas: 3D SUMIF for Multiple Worksheets!!](https://geekexcel.com/wp-admin/post.php?post=17772&action=edit)**
- **[Formulas to Calculate Subtotal by Colors in Excel Office 365!!](https://geekexcel.com/wp-admin/post.php?post=17801&action=edit)**
- **[Excel Formulas Used to Calculate the Subtotal by Invoice Number!!](https://geekexcel.com/wp-admin/post.php?post=17815&action=edit)**
- **[Formulas to calculate the running total from a range in Excel!!](https://geekexcel.com/wp-admin/post.php?post=17791&action=edit)**
Welcome to ImageHive v2
Tags: imagehive, images, colors, design
Published: 2020-11-23 10:33:15

Welcome to the long-awaited v2 of [ImageHive](https://imagehive.co), which is finally here, and here is a breakdown of the newer features available to you.

In the beta release which was done a couple of months ago, we delivered ImageHive as a platform where users would be able to get colors the combination of colors available in images uploads from your local drive, even to the smallest bit of color.

Well all that is going to be improved in v2, and here are the updates:

**1)** Users can now get the color of images from a URL & not just locally

> Before now users can only get the color combinations from images locally but it would be much easier if I see an image over on Unsplash or Shutterstock which I need the colors used or even over on Google, just by copying the image URL and pasting in the URL section of the web app to fetch colors.

**2)** You can now auto-scroll to the color container section of the page once the image is gotten via URL or Upload.

> As requested, finding the color of an image is hard after it has been generated, with the new auto-scroll feature, you would be automatically taken to the generated colors without your scrolling there.

**3)** You can now copy both HEX & RGB color codes

> While designing or coding you might want to stay consistent with using the HEX combination or you might prefer RGB, both are now available to be copied for every color generated.

**4)** Menu bar & Body is now responsive

> We had a small issue with the responsiveness of our menu and the upload section in the body, and other responsiveness issues, all have been fixed in this new update.

## What the community are saying 

![Testimonials](https://res.cloudinary.com/developerayo/image/upload/v1606127066/testimonials_imagehive.png)

Thank you for using ImageHive, for feature-related requests, you can post them in the chat below or send an email to imagehive1@gmail.com
Gravitee.io Access Management 3.x on GKE
Published: 2020-11-23 10:30:51

To continue our journey about deploying Gravitee.io on Kubernetes, here is a tutorial to show how to deploy Gravitee.io Access Management on GKE.

If you are interested in a demo, please click here.

Setup your cluster

Note: you can do the same actions using the gcloud CLI. We are doing it from the gcloud console for the sake of simplicity.

Go to https://console.cloud.google.com/and click on the Kubernetes Engine menu item from the left menu.

Read more : https://www.gravitee.io/article/gravitee-io-am-3-x-on-gke
Full Guide to Successfully Pivot Your SaaS Startup
Published: 2020-11-23 10:25:28

The term pivot came from ballroom dancing. How he migrated is unknown, but physically it means the rotation of partners clockwise or counterclockwise, pressed close to each other. In startups, the meaning is slightly different. If your current business model is unprofitable or not profitable enough for you to develop, you need a pivot.

We have already mentioned pivots in the article Development costs growth on a post MVP phase of a SaaS product and today we will talk about how to pivot in a saas startup, which can be a turning point in the life of a project, and how to understand that it's time to change course and look at the problem that your tech startup is solving from a new angle.

READ THE FULL ARTICLE HERE https://ardas-it.com/full-guide-to-successfully-pivot-your-saas-startup
"ALL YOU NEED TO DO" IS WRITTEN  HERE.
Tags: github, npm, javascript
Published: 2020-11-23 10:23:20

## doppelganger-license
I was afraid of license violations.

There are some tools that can check dependencies' licenses, but they were difficult for me to use.

I wanted a tool that can tell me "all I need to do" into one file.

For these reasons, I decided to make the tool. 

The name of tool is ["doppelganger-license"](https://github.com/K-RIntaro/doppelganger-license).

doppelganger-license can tell you "all you need to do" into one file.

Also, it is able to gather all license terms of dependencies.

The things that you have to do to use this are only <u>three</u>.
1 Install doppelgangar-license
```
$ npm install doppelganger-license
```
2 Make memo.txt & dependencies.txt

3 Enter "doppelgenger-license".
```
$ doppelganger-license
```

It's very simple.

These features are based on package-lock.json.

doppelganger-license gets dependencies from this file, and searching packages at npmjs & jsdelivr.


I think that doppelganger-license can become more useful.

I would be grateful if you could contribute at GitHub repository.

[GitHub repository of doppelganger-license](https://github.com/K-RIntaro/doppelganger-license)

Thank you for reading.
How Virtual Reality (VR) Transforms the Travel Industry
Published: 2020-11-23 10:22:46

The transition to the web started approximately 20 years ago. It happened already in many fields: education, entertainment, collaboration, e-commerce, marketing, communication, real estate. The same happens in the travel industry. More and more clients of travel agencies are choosing to organize their holidays on their own using online tools.

Virtual Reality is changing travel industry in an unstoppable way! VR can create amazing experiences limited only by your imagination. It is an excellent tool for marketing hotel rooms, flights, and travel products. As a hotel or travel company, you can provide unique customer experiences with VR elements on your website or as app downloads. Let’s review today how Virtual Reality tourism improves the travel industry and what to expect in the future.

READ THE FULL ARTICLE HERE https://ardas-it.com/how-vr-transforms-the-travel-industry
Making a Product Hunt like app without coding
Tags: producthunt, lowcode, appdev, nocode
Published: 2020-11-23 10:19:18

When Indie Makers think Voting and Product promotions, they think Product Hunt! 

When DronaHQ, a low-code platform company, was conducting its first ever low-code hackathon for B-school students, they wanted to showcase the amazing applications built by the participants to the world and at the same time, add a fun component of voting to the scoring criteria. Unable to find a suitable tool to make such voting possible the hackathon team built one on their own.

This is a must watch if you are interested to figure out how to bring ideas to life without coding! It is the behind the scene process that Partik followed and shows you how to build your custom controls, connect data from a sheet, and build the ideal app with all the workflows you need. Through harnessing the power of No Code, it emphasizes how simple it is to create solutions or bring ideas to life.

[Catch the Tutorial Here](https://youtu.be/WCvPlipg1do)

[Get Started for Free Here](https://www.dronahq.com/?utm_campaign=voting-app&utm_medium=blog&utm_source=dev-to)
react-with-styles: basic usage
Published: 2020-11-23 09:30:55

react-with-styles is one of the CSS-in-JS libraries. You can modify document's style in js files and most of the times it'd be inside Component if you chose to use React. Inside of it's related to HOC(Higher-Ordered Components).

- install react-with-styles
```> yarn add react-with-styles aphrodiete react-with-styles-interface-aphrodite```
You should install not only install react-with-styles but also aphrodite. aphrodite helps you to render on server-side. JS Engline would start working with CSS(in js files) only after DOM drawing is finished. There're some delays to be done with CSS painting and that's when aphrodite plays a role.

- withStyles.js
```js
import ThemedStyleSheet from 'react-with-styles/lib/ThemedStyleSheet';
import aphroditeInterface from 'react-with-styles-interface-aphrodite';
import { css, withStyles, withStylesPropTypes } from 'react-with-styles';
import Theme from './Theme';

ThemedStyleSheet.registerTheme(Theme);
ThemedStyleSheet.registerInterface(aphroditeInterface);

export { css, withStyles, withStylesPropTypes, ThemedStyleSheet };
export default withStyles;
```

1.  register `Theme` and export associated modules. `Theme`'ll be applied to `Component` if you wrap it with `withStyles()` and give style using `css()`.

- Theme.js
```js
export default {
  color: {
    ...
    default: '#999999',
  },
  size: {
    ...
    md: 14,
    ...
  },
  ...
};
```

2. Create 'Theme.js' file and export an object. The object should include property values commonly shown in the project overall.


```js
import react, {Component} from 'React'
import withStyles, { css } from './withStyles';

class StyledComp extends Component {
    const { styles } = this.props;

    render(){
        return (<div ...css(styles.default)></div>)
    }

withStyles(({ color, size }) => ({
  default: {
    color: color.default,
    fontSize: size.md,
  },
}))(StyledComp);
```

3. withStyles() creates a `function` which takes Component as input and gives Component (with `{default: ...}` props) as output. Higher-Ordered Component is what takes `WrappedComponent`, modify its behavior(add lifecycle method, log its output, conditonally render, attach/detach eventListener and etc...) and returns modified Component.
Deployed a pingpong Game on XinFin XDC Network.
Tags: xinfin, blockchain, xdc
Published: 2020-11-23 09:26:25

Deployed a PingPong game on XinFin XDC Network. Working with games is more interesting then playing that game :P

Check the code here: 
`pragma solidity >=0.4.25 <0.6.0;
contract Starter
{
    enum StateType { GameProvisioned, Pingponging, GameFinished}
    StateType public State;
    string public PingPongGameName;
    address public GameStarter;
    Player public GamePlayer;
    int public PingPongTimes;
    constructor (string memory gameName) public{
        PingPongGameName = gameName;
        GameStarter = msg.sender;
        GamePlayer = new Player(PingPongGameName);
        State = StateType.GameProvisioned;
    }
    function StartPingPong(int pingPongTimes) public
    {
        PingPongTimes = pingPongTimes;
        State = StateType.Pingponging;
        GamePlayer.Ping(pingPongTimes);
    }
    function Pong(int currentPingPongTimes) public
    {
        int remainingPingPongTimes = currentPingPongTimes - 1;
        if(remainingPingPongTimes > 0)
        {
            State = StateType.Pingponging;
            GamePlayer.Ping(remainingPingPongTimes);
        }
        else
        {
            State = StateType.GameFinished;
            GamePlayer.FinishGame();
        }
    }
    function FinishGame() public
    {
        State = StateType.GameFinished;
    }
}
contract Player
{
    enum StateType {PingpongPlayerCreated, PingPonging, GameFinished}
    StateType public State;
    address public GameStarter;
    string public PingPongGameName;
    constructor (string memory pingPongGameName) public {
        GameStarter = msg.sender;
        PingPongGameName = pingPongGameName;
        State = StateType.PingpongPlayerCreated;
    }
    function Ping(int currentPingPongTimes) public
    {
        int remainingPingPongTimes = currentPingPongTimes - 1;
        Starter starter = Starter(msg.sender);
        if(remainingPingPongTimes > 0)
        {
            State = StateType.PingPonging;
            starter.Pong(remainingPingPongTimes);
        }
        else
        {
            State = StateType.GameFinished;
            starter.FinishGame();
        }
    }
    function FinishGame() public
    {
        State = StateType.GameFinished;
    }
}`
CSS Houdini: Connections Worklet
Tags: codepen, css, houdini, worklet
Published: 2020-11-23 09:26:08

---
title: CSS Houdini: Connections Worklet
published: true
tags: codepen, css, houdini, worklet
---

<p>A CSS Paint Worklet to load connected dots</p>

{% codepen https://codepen.io/nucliweb/pen/yLJdroy %}
Fullstack Là Gì- Làm Sao Để Trở Thành Một Developer fullstack
Published: 2020-11-23 09:20:29

Fullstack là gì? Làm sao để trở thành một lập trình viên fullstack tài giỏi?Hãy theo dõi bài viết dưới đây của chúng tôi để hiểu rõ hơn nhé.Xem chi tiết tại: http://laptrinhvacongnghe.com/fullstack-la-gi/
Understanding Docker: part 17 – Dockerfile Tips: CMD - string vs JSON syntax
Tags: docker, devops, beginners, cloud
Published: 2020-11-23 08:52:40

---
title: Understanding Docker: part 17 – Dockerfile Tips: CMD - string vs JSON syntax
published: true
description: Serie of sketchnotes about Docker. Explaining in a visual way Docker principles.
tags: Docker, DevOps, beginners, Cloud
series: Understanding Docker in sketchnotes
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/sd0mi3u2o1ey6ra2px02.jpg
---

Understanding Docker can be difficult or time-consuming. In order to spread knowledge about Cloud technologies I started to create sketchnotes about Docker. I think it could be a good way, more visual, to explain Docker (and other technologies like Kubernetes and Istio).

We continue the series of Docker sketchnotes with tips about Dockerfile: the difference in CMD instruction between string and JSON syntax.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/sd0mi3u2o1ey6ra2px02.jpg)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/k03ef73gtbdb0avlp2vi.jpg)

As usual, if you like theses sketchnotes, you can follow me, and tell me what do you think. I will publish others sketchs shortly :-).

If you are interested, I published all the sketchnotes on Docker (and new ones!) to make a "book" of 93 pages: ["Understanding Docker in a visual way"](https://gumroad.com/aurelievache#YTLzM).
Golang Là Gì- Những Lý Do Tại Sao Bạn Nên Sử Dụng Golang
Published: 2020-11-23 09:14:25

Bạn có biết Golang là gì và tại sao Golang lại có biểu tượng là một linh vật. Tại sao Golang lại được đông đảo nhà phát triển lớn lựa chọn để sử dụng Xem chi tiết tại: https://blog.itnavi.com.vn/golang-la-gi/