teleren/devto huggingface dataset:
iOS 14 alike, privacy features for Android
Tags: android
Published: 2020-11-15 16:14:23

Hi folks,
Recently I open sourced an app that focuses on your privacy and alerts you when a third-party application uses your device camera or microphone, it mimics the iOS 14 system features on Android, plus few other goodies.

You can find it at my GitHub repo
https://github.com/CraZyLegenD/Vigilante
Back to Basics...
Tags: writing, beginners, design, todayilearned
Published: 2020-11-15 16:09:36

## This is a short one..

So as I sit here, late on a Saturday night working on my side project, I realized how important the basics are. Now to be fair, this is something I think about often: in Taekwondo, in cooking, in guitar, in singing, and now in coding. I'm reminded at how often I've practiced the basics in Taekwondo. I'm a Third Degree Black belt and there are plenty of times where I practice things I learned as an early student, because it helps.

## Where am I going with this?

I've been struggling over the last few weeks to really get started on my side project for a few reasons:
- It is kind of a daunting project: I'm redesigning not only my taekwondo school's front-end for the check-in system, but I'm also redesigning the database structure and a new student portal.
- I have had literally tons of ideas on how I want this to go, but they get lost and I overcomplicate things.
- I've been jumping too far ahead and designing phase 2, 3 etc. features. Rather than sticking to the basics and just designing phase 1.

I was talking with a friend today who is interested in being a DBA and when I sat down to log our notes, I realized how much I've jumped the gun, so instead of taking down our notes verbatim, I'm writing up all the entities that we need to be concerned with in the database. Once I have that I can really get going.

So all of that to say, don't forget the basics. Sometimes you just need a whiteboard or a Google doc before you worry about how everything is going to fully work.
AWS - The REST API doesn't contain any methods (Service: AmazonApiGateway...
Tags: aws
Published: 2020-11-15 16:07:04

The below error was raised when the CloudFormation template deploys the proxy integration API.

```
CREATE_FAILED  AWS::ApiGateway::Deployment  SomeDeployment The REST API doesn't contain any methods (Service:BadRequestException; Request ID:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx; Proxy: null)
```

The reason for this is that `DependsOn` attribute needs in `AWS:ApiGateway:Deployment` because `AWS:ApiGateway:Method` should be created before creating the deployment.

Should we always write `DependsOn` attribute?
Let's code a fluent API (in a nutshell)
Tags: tutorial, javascript, designpatterns
Published: 2020-11-15 16:02:54

A fluent API (or fluent interface) allows you to chain methods one after another, optimally producing smooth and readable code. Ever wondered how to implement an API like that? Watch this episode of crayoncode and let's write some code together! ⌨️📐⚙️

{% youtube vpFpjngmZt8 %}

I hope you enjoy this little tutorial about fluent APIs. Any feedback will be appreciated, just let me know and leave a comment. 🙏
Upgrade to PHP 8.x.0-dev with Homebrew on Mac
Tags: php, webdev, laravel, php8
Published: 2020-11-15 15:44:44

Now, PHP 8.0.0 Release Candidate 4 available for testing, It's expected to release on November 26, 2020, It's a new major version, and a lot of improvements and new features.

Here, step by step process to install PHP 8.0.0-dev with Homebrew on Mac.

### Make sure brew up to date with the following command

```bash
  brew update
```
At the time of writing this article, brew doesn't support php8, So we install using [this git repo](https://github.com/shivammathur/homebrew-php)

### Add the tap
Fetch the formulae in this tap.
```bash
brew tap shivammathur/php
```
### Install PHP 8.0
```bash
brew install shivammathur/php/php@8.0
```
and finally, link with PHP 8.0
```bash
brew link --overwrite --force php@7.3
```

### Check the current version by running PHP -v:
```bash
PHP -v
```
And restart the Restart Nginx or Apache:

```bash 
sudo nginx -s reload

//or 

sudo apachectl restart

```

And also you check your local web server using the current version by running the following script.
```php
// create index.php file, this should be accessible to your web server

phpinfo(); die();
``` 

### Switching between versions.

If you want to switch back to PHP 7.4, here you can do that.

Unlink the current version like this
```bash
brew unlink PHP
```
and link to PHP 7.4

```bash
 brew link --overwrite --force php@7.4
```

if you want to link to PHP 7.3

```bash
 brew link --overwrite --force php@7.3
```

If you like, please like and follow me to do more like this. Thank you!.
Make API request with Postman
Tags: beginners, testing, postman, api
Published: 2020-11-15 15:54:51

In the video below, we will take a look at how to make an API request with Postman. We will be going over the following topics:

- Navigating through Postman UI
- Make GET, PUT, POST, and DELETE request
- Briefly look at different forms of POST body that we can send along with the request
- And, go over different HTTP status codes

{% youtube HzARztpOW7s %}

---

#### To learn about API Test Automation using JavaScript, check out my free tutorial series here –
[JavaScript API Test Automation Tutorial Series](https://www.youtube.com/watch?v=ZSVw3TyZur4&list=PL6AdzyjjD5HDR2kNRU2dA1C8ydXRAaaBV)

---

I hope this video helped you out, let me know if you have any questions in the comments below!

Happy testing! 

...

📧 Subscribe to my [mailing list](https://automationbro.com/mailing-list) to get access to more content like this 
👍 Follow @automationbro on Twitter for the latest updates
What is your Tech Stack?
Tags: webdev, productivity, javascript, discuss
Published: 2020-11-15 15:47:59

Hello, Dev community!

I was wondering what tech stack you use for building projects? This could be a tech stack for building any different pieces of software. Some examples include: web development, mobile development, scripting, machine learning, etc.

I'll start off the discussion by showing you my web development tech stack.

- Client:
 - React.js/Next.js
 - Chakra-UI
 - Tailwind CSS
 - Apollo Client
 - Framer Motion
 - React Hook Form
- Databases:
 - PostgreSQL
 - Redis
- Server:
 - GraphQL/TypeGraphQL
 - Apollo Server
 - TypeORM
 - Node.js

I really enjoy using the same programming language - Typescript - for my client and for my backend because I can share some util functions with both of them. For the databases, I use PostgreSQL and Redis because I found both of them extremely easy to use and very powerful. In the server, I use GraphQL, TypeORM, and Node.js. I use GraphQL over REST because it fixes many of the major issues that REST has. Also, I found that TypeORM is the easiest ORM to use with Typescript. For the client, I use Next.js because it makes creating a React.js website with multiple pages much easier. I also like using styling libraries such as Chakra-UI and Tailwind because I'm not much of a designer. Since I use GraphQL, I also use Apollo Client.

I just wonder which tech stack you use and why you love your tech stack!
My third Hacktoberfest
Tags: hacktoberfest
Published: 2020-11-15 15:46:46

This was my third Hacktoberfest and, despite promising myself I wouldn't leave it to the last minute, I, again, left it to the last minute!  It's quite scary seeing the progress tracker saying that PRs are being validated when they complete doing that _after_ the end of October!

### Background
I've been developing in various languages since I was a teenager, initially starting with Microsoft Quick BASIC.  My general language of choice is PHP although I'm able to write Android apps too.  My developer journey is [described on my blog](https://blog.jonsdocs.org.uk/2020/03/31/how-i-became-a-developer/).

### Contributions
My aim each year is not to _only_ submit documentation corrections for typos - I want my contributions to make a difference.  This year I submitted some additional documentation, added support for PHPStan and added a new menu option to a Java application.  I'm likely to continue working on the Java application, as it's one that I use.  When it comes to PHPStan, I'd planned to start using that in my own projects so it was interesting to see how that worked while helping someone else.


### Reflections
Sadly the pandemic meant that my plan to run an in person event / boot camp had to be cancelled - something that hopefully I'll be able to do in 2021.  I look forward to Hacktoberfest each year, having been introduced by a friend, so I'm already contemplating what sort of projects I'll be looking for during the next one.
Why its useful to have a personal skill matrix
Tags: webdev, career, codenewbie, productivity
Published: 2020-11-15 15:35:34

One of the most important areas to consider when you are a developer is how well you are progressing and what areas you need to improve in. Having a skills matrix allows you to gauge your progress which makes it a lot easier for you to set out a roadmap for areas that you want to gain knowledge in. I think this is also a great way to combat some aspects of imposter syndrome as you can have a visual idea of your overall technical stack as well as knowing what type of level you feel you are at personally. Many companies already use such a format as they like to see how good their team of developers currently are and how capable they are at working on a variety of projects.

The data that you use for your skill matrix is likely to be completely dynamic as you are going to learn new things throughout your career as a programmer. And as this data is dynamic you can visually see how well you are doing and plan ahead for the future. Something like this is key regardless if you are currently looking for work or already in employment. As the industry keeps changing with new advancements in technology and in the tools and programming languages that we use day to day. Keeping your skills fresh and up to date with a structured skill matrix can give you much added confidence in the work that you do.

See the examples below for an example of how that could look.

**Skill Matrix Graph**

![https://res.cloudinary.com/d74fh3kw/image/upload/v1605452948/skill_matrix_graph_nri2le.png](https://res.cloudinary.com/d74fh3kw/image/upload/v1605452948/skill_matrix_graph_nri2le.png 'Skill Matrix Graph')

**Skill Matrix Table**

![https://res.cloudinary.com/d74fh3kw/image/upload/v1605452948/skill_matrix_table_fvwbpa.png](https://res.cloudinary.com/d74fh3kw/image/upload/v1605452948/skill_matrix_table_fvwbpa.png 'Skill Matrix Table')
Download a react component using jsPdf and html2canvas
Published: 2020-11-15 15:34:19

i'm using html2canvas and jspdf packages to download a simple component but when i click download i get a blank pdf page without any content and there is no errors in the screen, that's my code:
import React, {Component, PropTypes} from 'react';
import html2canvas from 'html2canvas';
import jsPDF from 'jspdf';
import Pie from './Pie.js';

class Qu extends Component {
  constructor(props) {
    super(props);
  }

  printDocument() {
    const input = document.getElementById('divToPrint');
    html2canvas(input)
      .then((canvas) => {
        const imgData = canvas.toDataURL('image/png');
        const pdf = new jsPDF();
        pdf.addImage(imgData, 'JPEG', 0, 0);
        // pdf.output('dataurlnewwindow');
        pdf.save("download.pdf");
      })
    ;
  }

  render() {
    return (<div>
    
      <div id="divToPrint" className="mt4">
        <div>Title of Component</div> 
        <div><Pie /></div>
        <div className="mb5">
        <button onClick={this.printDocument}>Print</button>
      </div>
      </div>
    </div>);
  }
}
export default Qu
How to get a good grade point average?
Tags: college, exams, grades, discuss
Published: 2020-11-15 08:53:10

---
title: How to get a good grade point average?
published: true
description: On getting a good GPA
tags: college, exams, grades, discuss
//cover_image: https://direct_url_to_image.jpg
---

To get a great, good, decent (not bad) grade point average -

* study before the exam.

As simple as it sounds, very difficult to follow when you are a college student.

I always had a very good GPA in college but not because I spent hours studying in the library or because I stayed up late at nights during exams.

It was all because I went to the lectures and gave the quizzes. Again sounds simple, but does seem boring compared to all the other things you could be doing.

But what it does is it stores information in your brain and everytime you encounter the information again it keeps reinforcing that knowledge.

Think of it as solving a board puzzle. It would undoubtedly take most people more time to solve it in the first go than it would take someone who has seen the puzzle before or has even solved some part of it earlier.

**Knowledge compounds over time.**

Thanks for reading!
Celebrating GraalVM LTS release
Tags: java, graalvm, python, javascript
Published: 2020-11-15 15:05:47

Celebrating GraalVM LTS Release Live Webcast the Nov 18, 2020 
- 09:00 AM Zurich
- 04:00 PM Singapore
- 07:00 PM Sydney

Join us to celebrate the first GraalVM Enterprise LTS release (version 20.3) and unveil its new features & capabilities.

Register [here](https://oracle.zoom.us/webinar/register/WN_81CeGl4uQOWzt92DM_GeAw)
Back to start again - Week2
Tags: webdev, learning
Published: 2020-11-15 14:39:50

*Hey! As said, this is my second blog followed by [my first blog.](https://dev.to/riyaagrawal17/back-to-start-again-2gja)*

After completing the *first week* of mentorship by **[Deepak](https://dev.to/dipakkr)** sir, I entered the second week with high motivation and I think I am going on a right track with right pace. 


This week, I studied the concepts of **Vanilla JavaScript** and **unit testing with Jest** and thus written few testcases.
And finally made 3 simple projects using *Vanilla Javascript*...


1. *[StopWatch](https://riyaagrawal17.github.io/Stopwatch/)* : **[Source code](https://github.com/RiyaAgrawal17/Stopwatch)**
2. *[Typing Speed](https://riyaagrawal17.github.io/Typing_speed/)* : **[Source code](https://github.com/RiyaAgrawal17/Typing_speed)**
3. *[Calculator](https://riyaagrawal17.github.io/Calculator/)* : **[Source code](https://github.com/RiyaAgrawal17/Calculator)**


Faced some problems while writing functions using Vanilla JS and technical errors while deploying but overcomed it with the help of *[freeCodeCamp](https://www.freecodecamp.org/)* and *[stackOverflow](https://stackoverflow.com/)*.

Finally got good comments from our mentor **"Perfect Riya ! This typing speed app looks cool !"**. It really matters to me a lot. *Thank you sir for always motivating us.*


I know these are small steps for developers but are very crucial *basic* steps which we shouldn't skip to become **perfect** in this field.

##Excited to explore more!! 

You can follow me on **[Twitter](https://twitter.com/RiyaAgr02106010)** or connect with me on **[LinkedIn](https://www.linkedin.com/in/riya438/)**
if you aren't developing RESTful systems, you are historically and semantically NOT doing web development
Published: 2020-11-15 14:35:55

please, you have to stop wasting my time with your opinion that i "just want to be right," especially if you don't actually know the circumstances around fielding's work.

you are in fact shitting on his life's work, because you don't actually read timbl, amundsen or any of them.

just like with black issues, you want to have opinions and be "respected" about stuff you have not done any due dilligence in.

you literally have a search engine right in front of you, and you think i am sharing just my "dogmatic" opinion. 

no, i think there is a different issue as to why you're so focused on tone policing and respectability politics.

given the state of the world and me being black, come the fuck on. read the room, you are all striking out in more ways than just bastardizing and misrepresenting REST and the web itself, more concerned with white-knighting and gatekeeping. you didn't even engage REST, and i am trying to tear down these gates.

[UPDATE]: "A data format SHOULD incorporate hypertext links if hypertext is the expected user interface paradigm." https://www.w3.org/TR/webarch/#hypertext

if you are not putting hyperlinks in your JSON response, you are engaging in BAD PRACTICE and not developing SEMANTIC WEB based on LINKED DATA
What is the quickest way to write code?
Tags: discuss
Published: 2020-11-15 13:50:30

In the many development teams I was working in was a period when some manager urged _"Folks, now it is not the time to write pretty code, let's get the simplest code as fast as possible out just to test if customers need this!"_. 

No need to overcomplicate it, don't cook anything fancy, just feed the customers! Just like you throw together potato, bacon, eggs and onion in a pan and that's it! (Result is _parasztreggeli_ 👆 - a food you won't hear about).

What they mean is to write code poorly and only fixing it when the feature proves its existence. They usually reason about it as justified _technical debt_, but to quote George Fairbanks [quoting Ward Cunningham](https://www.georgefairbanks.com/ieee-software-v32-n4-july-2020-ur-technical-debt):

> “A lot of bloggers at least have explained the debt metaphor and confused it, I think, with the idea that you could write code poorly with the intention of doing a good job later and thinking that that was the primary source of debt.”

In my own experience I find it hard to write code _poorly_. When I try not to think in advance I usually lose myself in a web of half-baked, contradictory code. Then I get frustrated, delete some it and start writing pretty code, then I remember, _"Hey, this is exactly what we are **not** supposed to do!"_, then I am trying to hack it again.

**The result:** bad code that took I think as much as or _more_ time than writing normally with a horrible mood as a side effect.

> In other words I don't have the expertise to understand problems enough not to shoot myself in the foot, but not enough to write _"pretty code"_.

### Discussion: What is the quickest way to write code?
What are you doing in these circumstances? There is a huge pressure on the development team, it was promised (without them) to the higher management, that `feature X` will go in beta testing by this and this date and you _can't write pretty code_?

**Is there a trick to this so I can actually write throwaway code faster than writing average code?**

Or at least let me know if I am the only one struggling with this 😳😅.

The only time I managed this requirement working was when the task at hand was small and specific enough that you can just copy-paste a new version of your code, modify it and see how it performs as an `A/B test`.
Fork System Call | Operating System - M01 P08
Tags: linux, codenewbie, beginners, devops
Published: 2020-11-15 13:28:44

**This is a multipart blog article series, and in this series I am going to explain you the concepts of operating system. This article series is divided into multiple modules and this is the first module which consists of 12 articles.**

_In this article I am going to explain about “fork” system call. We will see some examples of implementation of fork system call to get a better understanding of the concept._

### Fork
- Fork is a system call.
- It comes under _process control system call_.
- We use fork system call to make child process.
- Suppose, we have a C program, if we write `fork()` in it then a child process will be created. This child process also has its unique ID.
- We use the concept of fork, because let’s assume that the parent process is busy, so a clone will be created which will perform the task which parent process is unable to complete/execute. _(Another approach to solve this problem and it is known as `Thread` it is somewhat different from fork.)_
- Fork system call generally returns two value 0 and +1 (+ve). 0 denotes child process while +ve denotes parent process. -1 can also be created this happen when due to some reasons child process cannot be created, for example in case operating system/kernel is busy.
- Let us take an example to understand about fork system call.

```c
main() {
fork();
    printf("Hello");
}
```

![Untitled Diagram.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1605446640947/rCaPmE8tm.png)
In this case two process are running parallel, due to the fork statement.

Here `Hello` will be printed two times because, before the execution of the `printf` statement, the fork statement will be executed and a child process is created.

The id of child process is 0, while the id of parent process is +1 (+ve)

- Let’s see one more example; this will help you to understand the concept of fork system call more clearly.
 ```c
main() {
fork();
fork();
    printf("Hello");
}
```

![Untitled Diagram (1).png](https://cdn.hashnode.com/res/hashnode/image/upload/v1605446650854/IDn3vER8j.png)
In this case at the time of 2nd fork **C1** and **P** will behave as a parent. Therefore the following output will be obtained as shown in diagram.
Here `Hello` will be printed 4 times.

-  Total number of execution = 2<sup>n</sup>
- Total number of child process = 2<sup>n</sup>-1
- n stands for **number of fork commands.**

_This was all about the fork system call, hope you likes it and learn something new from it._

If you have any question, query, doubt or just want to share something with me, then please feel free to contact me.

### 📱 Contact Me

[Twitter](https://twitter.com/r_mishra10)
[LinkedIn](https://www.linkedin.com/in/rahul-mishra-66210b185)
[Telegram](https://t.me/rahul_mishra10)
[Instagram](https://www.instagram.com/rahul_mishra10/?hl=en)

### 📧 Write a mail
<rahulmishra102000@gmail.com>

#### 🚀 Other links

[GitHub](https://github.com/rahulMishra05)
[HackerRank](https://www.hackerrank.com/rahulmishra10201)
Daily Developer Jokes - Sunday, Nov 15, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-11-15 13:00:12

---
title: "Daily Developer Jokes - Sunday, Nov 15, 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=Sunday%2C%20Nov%2015%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/5e1259a186412.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:
___Q___: Why do developers use mechanical keyboards?

___A___: To strongly type their code.
 -->