teleren/devto huggingface dataset:
💻Review 9: Portfolio and Product page, Developer: Adil and Kyle | #elefDoesCode
Tags: review, developer, portfolio, codepen
Published: 2020-03-21 13:52:37

⬇️I will review your... 

🤓The process:
1. Every week I will do a live stream on my youtube channel reviewing your site
2. I will give feedback and suggestions according to your needs. 
3. If I have a way to contact you, I'll gladly do so :)
4. If you have any question don't hesitate to contact me!

Take part [here](https://forms.gle/9AxiCUQ8YudTVYzs9) (I only need a URL and your name).

It doesn't matter if you are a beginner or more advanced. 
You can submit as many sites as you want.

🙏Thank you for taking part with your website into my live streams.
It takes courage to let someone you don't know to review your work...
But remember feedback is important and all of us need it...
 
🤗The review is FREE. You don't pay for anything. I won't be paid by anyone.

----------------------------
P.S. Video starts at 0:14

In particular, in this video you'll find 2 reviews:

🤓The developer: Adil
💪The project: https://smadil.co

🤓The developer: Kyle
💪The project: https://codepen.io/kylekibet/full/poJwGvQ

⌨Previously 
- [review 1](https://dev.to/eleftheriabatsou/review-1-tribute-page-by-freecodecamp-developer-kyle-elefdoescode-4006)
- [review 2](https://dev.to/eleftheriabatsou/review-2-personal-portfolio-developer-diego-elefdoescode-4g36)
- [review 3](https://dev.to/eleftheriabatsou/review-3-portfolio-and-airshare-project-developer-rajitha-elefdoescode-3gop)
- [review 4](https://dev.to/eleftheriabatsou/review-4-personal-portfolio-developer-jatin-elefdoescode-4i52)
- [review 5](https://dev.to/eleftheriabatsou/review-5-github-cool-projects-with-react-developer-saad-elefdoescode-4091)
- [review 6](https://dev.to/eleftheriabatsou/review-6-personal-portfolio-developer-john-elefdoescode-2e20)
- [review 7](https://dev.to/eleftheriabatsou/review-7-coding-with-basir-developer-basir-elefdoescode-5hak)
- [review 8](https://dev.to/eleftheriabatsou/review-8-modern-portfolio-developer-max-elefdoescode-3c79)

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

👋Hello, I' m Eleftheria, an app developer, master student, freelancer, public speaker, and chocolate lover.


😎Top 3 list:
- How to stay motivated | A developer's edition | @BatsouElef: https://youtu.be/qMvEtb5OxNo
- How to be a Better Problem Solver | Tips and solutions: https://youtu.be/dELt7yKIxIA
- Simple Tips to Build a Personal Brand as a Developer (+ personal examples): https://youtu.be/7s0o1gi0iP0

🥰If you liked this video please share

🍩Would you care about buying me a coffee? You can do it here: [paypal.me/eleftheriabatsou](paypal.me/eleftheriabatsou) but If you can't that's ok too!


**************************************

🙏It would be nice to subscribe to my [Youtube](https://www.youtube.com/c/EleftheriaBatsou) channel. It’s free and it helps to create more content.

🌈[Youtube](https://www.youtube.com/c/EleftheriaBatsou) | [Codepen](https://codepen.io/EleftheriaBatsou) | [GitHub](https://github.com/EleftheriaBatsou) | [Twitter](https://twitter.com/BatsouElef) | [Site](http://eleftheriabatsou.com/) | [Instagram](https://www.instagram.com/eleftheriabatsou/)
Remote work journey - Day 5
Tags: watercooler, remote, webdev, development
Published: 2020-03-21 13:11:33

---
title: Remote work journey - Day 5
published: true
description: Continuous journey of working from home due to COVID-19 outbreak at the world. This is my journey, my challenges in trying to be productive and completely changing my work habits from office first to remote first. 
tags: watercooler, remote, webdev, development
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/ini596os7cxac7jdk4zl.jpg
series: working from home
---
## General

In our neighbourhood people really take the call for #stayAtHome seriously. We are still doing a short walk the family 👨‍👩‍👧‍👦 but keep distance to elder people or any kind of groups. Yet, I had to buy something for my parents and guess what? There are now lines outside of any store and people need to keep distance. Controlled entrance is in place any market or drug store has a security person in front. These are clearly crazy times. 

Luckily, we found some toilet paper for my parents 😂🧻 

News are now saying that soon most parts with be "locked down". In Baveria it basically means everything is closed except markets and banks. Police will patrol more frequently and any group of people will be dissolved.

Soon the same will happen to [Berlin](https://www.rbb24.de/politik/thema/2020/coronavirus/beitraege/mueller-ausgangssperren-berlin-vorbereitung.html). As an employee of a big Online retailer for now, jobs seem rather safe. Yet, many stories are shared from people who are fired in services area like hotel, restaurants etc.

I'm still concerned about the kids as weather will cool down and how the next 4 1/2 weeks will be. This is an extreme situation and we still try to combine family time, tv time, play time and other things. 

I guess soon our hidden backups need to be opened up 😃

I'll skip daily writing over the weekend most likely, to focus more on kids and fam.

## Work

Continuing my work on one of our A/B Test. At the same time I finally finished deprecated on of our internal Sentry instances. We moved to a centrally hosted Sentry which improves on the cost center 😀

Dealing with a Chrome Extension written in React + Redux is still a challenge. I'm investing some time and effort to improve a certain part. I'm close to adding support for an Experiment Toggle Component which would speed up future development heavily.

As many AMA's and All Hands are happening inside the company, it gets difficult to not get influenced about corona. I want to ignore it for a couple of days but this seems rather impossible.

## TIL

Learnings from Day 4 still applied:

{% link https://dev.to/fokusman/remote-work-journey-day-4-2i3e %}

I'm relearning again more advanced Redux topics like ActionCreators, how to structure Actions and Stores and even aliasing Actions. 

I recommend the official Redux documentation. It impressed me how much 

Enjoy your weekend (#stayAtHome)🤩

 ----
Past Posts:
{% link https://dev.to/fokusman/starting-the-journey-of-remote-work-day-2-3fb6 %}
{% link https://dev.to/fokusman/remote-work-journey-day-3-198h %}
Intro to Browser Storage
Tags: beginners
Published: 2020-03-16 23:52:02

Before getting into web development, I had a limited understanding of cookies. I knew that websites stored data about me as cookies, and used that data to customize my user experience. I also knew that when I cleared my cookies, websites forgot this information.

Then I learned that there was also local storage and session storage, both of which can store data as well. 

What was with all these different storage types?

To start, let's talk about cookies! Before localStorage or sessionStorage even existed on browsers, there were Cookies. Cookies were designed for browsers to store stateful information on the user's computer. Stateful information might be a cart on an online store, or information about the current user. Cookies are sent in the head of an HTTP request to a given site's sever. If you have previously logged into a site, then the cookies for that site will have information about your account. The server will use this information to tell if you have a valid session. Since cookies are site specific, this works most of the time at protecting your data.

Cookies can also be used to keep track of your browsing data by third party companies, which is why it can have a bad reputation in the news. This allows for targeted ads based on your browsing history. 

In 2012, most major browsers added localStorage as an option for sites to save information on a users computer. Since the cookies were sent in every HTTP request, it was often slowing down the response times. LocalStorage is only accessible by the client and is not sent in the request to the server. Since this data isn't part of the request, it changes how user sessions need to be saved. Rather than storing user sessions data in a database, a JWT can be used and placed in local storage.

JWT, or a JSON Web Token, is a standard way to pass JSON data over the web. It is encoded, and can include information about the user that is logged in and their permissions. The JWT does not need to be saved server-side, since it can decode the token to find the user information. 

SessionStorage is similar to localStorage, but it is deleted after each page session. This might hold information that is specific to interactions you've made during a single website visit. 

If you are considering using localStorage or Cookies to store user data, there are trade offs to both on the security side as well. Additionally, how you set up your server will vary greatly on how to you want to save user sessions. I will do another post on how to implement both on Rails. I hope this clears up some confusion!
React Native Responsive Dimensions - Updated with more responsiveness for foldable devices
Tags: react, reactnative, showdev, discuss
Published: 2020-03-21 13:11:18

React Native Responsive Dimensions have been updated to version 3.1.0 with full typescript support & a whole bunch of new utilities quickly check out the new release at [github](https://github.com/DaniAkash/react-native-responsive-dimensions)

First published three years ago as a simple utility to resize some views based on the device's screen size, responsive dimensions quickly became one of the favourite tools for my colleagues and many react native developers. I was updating it once a year with a few new things like the [responsive hooks](https://github.com/DaniAkash/react-native-responsive-dimensions/releases/tag/3.0.0) last year. But this update is quite important!

I recently worked with [Rachel Nabors](https://dev.to/rachelnabors) on React Native [Component Docs Drive](https://github.com/facebook/react-native-website/issues/1579) where while documenting the actual react native's inbuilt [dimensions](https://github.com/facebook/react-native-website/pull/1671) module, I realized Responsive Dimensions has a great potential to simplify application development for foldables and react-native-web apps.

With this new update, Responsive Dimensions now have
- Separate utilities for Responsive "window" & "screen" sizes (screen sizes will be useful while working with foldables)
- New responsive screen size hooks
- `useDimensionsChange` hook to let your application respond to dimension changes

See the [release notes](https://github.com/DaniAkash/react-native-responsive-dimensions/releases/tag/3.1.0) for a full list of changes and also checkout the example projects at [Snack](https://snack.expo.io/@daniakash/responsive-dimensions) & [CodeSandbox](https://codesandbox.io/s/react-native-responsive-dimensions-hooks-2cqm8)

Do let me know if you have any feature requests or feedbacks ﹣ always happy to help 😁👍
Daily Developer Jokes - Saturday, Mar 21, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-03-21 13:00:25

---
title: "Daily Developer Jokes - Saturday, Mar 21, 2020"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Saturday%2C%20Mar%2021%2C%202020"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1259a6b60d2.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
What's the best tool for automatically ignoring long email threads about tech buzzwords?

"Block-chain"
 -->
Modern C++: Temp Vars in If/Switch
Tags: cpp, tutorial, beginners
Published: 2020-03-21 12:27:33

Following my series from less known features of Modern C++.

{% post https://dev.to/delta456/modern-c-an-introduction-36kg %}

This feature is small and minor one so this article is small but an important for sure.

From C++ 17 you can declare temporary variables on `if` and `switch` statements just like loops. As the variables are temporary, you can't access those variables as they are only declared in the `if` or `switch` block.

### If Statement

```cpp
#include <iostream>

int main()
{
  if (int i = 0; i > 0)
    {
      std::cout << "i is positive" << std::endl;
    }
  else if (i < 0)
    {
      std::cout << "i is negative" << std::endl;
    }
  else
    {
      std::cout << "i is zero" << std::endl;
    }
 // std::cout << i << std::endl;	// i will not be available here
}
```

### Switch Statement

```cpp
#include <iostream>

int main()
{
  switch (int i = 0)
    {
    case 0:
      std::cout << "i is negative";
      break;

    case 1:
      std::cout << "i is one";

    default:
      std::cout << "invalid";
      break;
    }
  //std::cout << i << std::endl;        // i will not be available here
}
```
If we comment out the last line of both of the examples then an error will be raised.

```error
main.cpp: In function ‘int main()’:
main.cpp:26:17: error: ‘i’ was not declared in this scope
    std::cout << i << std::endl;        // i will not be available here
```

This feature is useful when you need to temporary declare variables for checking and minor comparisons.
Utils for JavaScript - what do you use regularly?
Tags: discuss, javascript, typescript
Published: 2020-03-21 12:15:17

Recently, I started working on my own utils set of JavaScript functions that can be used on every day basis.

This is the current list (full docs can be found [here](https://www.npmjs.com/package/utils-for-js)):

- Compare objects
- Compare arrays
- Check if an array or an object is empty
- Make array unique
- Get min value of an array of numbers
- Get max value of an array of numbers
- Check if variable is an integer
- Create random number
- Cache function result
- Calculate how much time a function takes to run

**Which functions do you use, in which cases**, please comment down bellow, certainly I would consider all suggestions and add new functions as part of npm package.

Thank you for reading and all suggestions!
Hack COVID-19: Come together to help the worlds vulnerable
Tags: covid, event, hackathon
Published: 2020-03-21 11:44:48

---
title: Hack COVID-19: Come together to help the worlds vulnerable
published: true
description: This event has been created to bring together developers and other creative individuals to create solutions that will support vulnerable people and key workers throughout this time of need.
tags: covid, event, hackathon
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/ko3zfjycvas2matrvgmh.png
---

This event has been created to bring together developers and other creative individuals to create solutions that will support vulnerable people and key workers throughout this time of need.

If you are in the tech/creative industry you have the skills to help people in your local community and the world at large. This hackathon will bring teams together to build creative solutions that can help people who are in need.

Who's this event for:

- Developers
- Designers
- Project Managers

If you have experience organising hackathons and would like to help please get in touch with me as I have not organised many events in the past and your help is greatly appreciated.

[Slack channel](https://join.slack.com/t/hackcovid-19/shared_invite/zt-ctt76nqr-dX2e2j6~f1o4aIBQq9tJPw)
[Eventbrite Link](https://www.eventbrite.co.uk/e/hack-covid-19-hackathon-to-help-vulnerable-people-tickets-100614269990)

Finally, please share this event, it will really help.
Virtual Environment For My First Python Program
Tags: python, beginners, learning
Published: 2020-03-21 11:27:28

---
title:Virtual Environment For My First Python Program
published: true
description: Python Program in Virtual Environment
tags: #python #beginner #learning
---
Here We will create a virtual environment and code inside the environment.
So why virtual Environment?
- to separate and isolate the packages we are using for different programs and projects.
- working with code that depends on different versions of some library.
- This issue happens a lot when dealing with Python 2 and Python 3. 
- Having different versions of packages installed can lead to a lot of confusion and bugs.

It’s much better to have separate environments for separate programs.

The module we use to create virtual environment here is called [venv](https://docs.python.org/3/library/venv.html).
- venv will install most recent version of python that is available.

To create a virtual environment, We have to decide upon a directory where we want to place it. And run venv module as script with directory path.

- Suppose we want to create a virtual environment at home/dev:
then change directory to the path as follows

         $cd home/dev

Now inside the directory we will run venv script:

         ~/dev$ python -m venv python-dev
What this does is:
- creates python-dev directory if it doesn't exist
- also creates directories inside it containing a copy of the python interpreter, the standard library and various supporting files.

Once we have created Virtual Environment, We have to activate it.
- Run following command
**On Windows**:

         python-dev\scripts\activate
Here, extension for activate file should be mentioned whether its .bat for cmd or .ps1 for Power shell. 
In cmd,
   
         Scripts\activate.bat

and in PowerShell,

         Scripts\Activate.ps1
[Updated through comment ](https://dev.to/mausamadhikari5/virtual-environment-for-my-first-python-program-59nc)
**on Linux or Mac**:

         source python-dev/bin/activate

After activating, we can start programming.
now create main.py file.
- if you have vs code installed then you can simply type code main.py in your terminal.

         ~/dev/python-dev $ code main.py

This opens a main.py file in vscode editor.
Now we can code our first Python Program Here.

         def main():
             print("hello world!")
         if __name__=="__main__":
             main() 
         else:
             print("file invoked")

For more [Visit Here](https://blogs.mausamadhikari.com.np/2021/02/virtual-environment-for-my-first-python.html)
Get files recursive with the Node.js File System (FS)
Tags: node, javascript
Published: 2020-03-21 11:25:47

 
## The File System Promises API
In the following code snippets, I'll be using the fs Promises API.
It's available to you if you're rocking at least Node.js v10.
```javascript
const { promises: fs } = require("fs");
```
​ 
## Separating the directory entries
To be able to separate the entries, we have to explicitly ask for all information about the file type.
```javascript
const entries = await fs.readdir(path, { withFileTypes: true });
```

If we now want to separate the entries, we can just do this by calling the `isDirectory` method.
```javascript
const folders = entries.filter(entry => entry.isDirectory());
const files = entries.filter(entry => !entry.isDirectory());
```
 
## Getting the files recursive
If we now combine the previously mentioned ways to separate the files, put everything in a function and call this function recursively for every subdirectory, we are able to get all files within the current directory and all subdirectories.
```javascript
async function getFiles(path = "./") {
    const entries = await fs.readdir(path, { withFileTypes: true });

    // Get files within the current directory and add a path key to the file objects
    const files = entries
        .filter(entry => !entry.isDirectory())
        .map(file => ({ ...file, path: path + file.name }));
	
    // Get folders within the current directory
    const folders = entries.filter(entry => entry.isDirectory());

    for (const folder of folders)
        /*
          Add the found files within the subdirectory to the files array by calling the
          current function itself
        */
        files.push(...await getFiles(`${path}${folder.name}/`));

    return files;
}
```
Functions in Python
Tags: functions, python, beginners
Published: 2020-03-21 11:18:50

---
title: Functions in Python
published: true
description: 
tags: #functions #python #beginner
---
What is function?
- Function is way of problem solving by dividing the problem into sub-problems and finding their individual solution and combining them to solve original problem.

Function Definition:
- defining the role of function
- actions to be performed by functions are written in the form of statements here.

syntax:

        def function_name(parameters_seperated_by_commas):
            statements
notice the **:** and indentation i.e four white spaces.

Some Rules:
- function_name must not be python keyword
- code following colon(:) must be indented.

Function Call:
- calling the defined function
- to execute the work we need to call the defined function.
to execute function, We need to invoke function.

         function_name(arguments_seperated_by_commas)

Suppose we want to write a program that draws a house, a car and a cat.
Without use of function we end up writing whole code for drawing house, a car and a cat at a place.

         def main():
             statements for drawing house
             statements for drawing car
             statements for drawing cat


which works fine but tracking, debugging is difficult and probably not the best practice.
so what we do here is make function for individual work like:

         def draw_house():
             statements

         def draw_car():
             statements

         def draw_cat():
             statements
and we will call the defined function in our main function as:


         def main():
             draw_house()
             draw_car()
             draw_cat()
             print("task completed")


### Types of Functions:
- Void Functions:
   - The function that doesn't return anything.
   - simply speaking, The return type is None
for example:
If we want to add two numbers given to function and print it's result then:

            def addition(num1,num2):
                print(f"{num1}+{num2}=",num1+num2)
- Fruitful Functions:
   - The function that returns some value
   - The return type is not null.
for example:

            def addition(num1,num2):
                return num1+num2

For more [Visit Here](https://blogs.mausamadhikari.com.np/2021/02/functions-in-python.html)
Try fair web analytics
Tags: webanalytics, privacy, opensource, webdev
Published: 2020-03-21 11:18:23

Test Offen today. **Your feedback is helping** us take a step forward on our way to develop **a self hostend and transparent alternative to established web analytics tools.**

We’re excited to present our first alpha version that is officially ready for testing. Although we have dug very deep, things may still contain issues. Therefore, we recommend using Offen in a production environment only for the brave. Also be aware that the upgrade path may be broken with upcoming releases. **Offen is free and always will be.**

**Offen v0.1.0-alpha**

Single binary file for Linux, Windows or MacOS
[**Download**](https://get.offen.dev/)

Your own Offen instance
[**Deploy to Heroku**](https://heroku.com/deploy?template=https://github.com/offen/heroku/tree/master)

Download or deploy Offen today and give it a spin. **[Check our Docs](https://docs.offen.dev/)** for detailed instructions.

Please put your feedback in the comments, use Twitter [@hioffen](https://twitter.com/hioffen) or head to [offen.dev](https://www.offen.dev/) to get in touch.

We look forward to hearing from you. Happy testing!