teleren/devto huggingface dataset:
Mass surveillance - Communications intelligence
Tags: news, security, machinelearning
Published: 2022-11-20 00:36:51

Hello,

According to my source which is the "prophylax" document at the thirteenth page which is linked in the source mentioned below;


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ut3ce8w4780rwcojihnv.png)



"COMINT is the **interception and analysis** of communications from companies or individuals transmitted via **cable, satellite or radio waves** (e.g. telephone calls, e-mails, SMS) in order to obtain useful information about economic or strategic goals. E-mails, chat messages and faxes can be **systematically scanned for key words**, while telephone calls can be analysed using **automatic speech recognition**."

Now, AI developers can assess that _images can also be scanned within the Internet_ to stalk individuals in the street based on a few recent photography of them and take decisions as mentioned in a German documentary based on autonomous weapons, to then what is the threat?


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x5rpk4z2slkdvt04mggz.png)

Well, that such technology come to _belong in the wrong hands that should not_! And that is a perfectly nice business to them, the evil "too corporate" governments such as North Korea among others, ...  but that is also one for us, in Switzerland! Yay, we developed a pixel art software which can transform selfies into images as light in data, and as much lighter than basic images that you can store them inside blockchain, meanwhile, those <20Kb of data **limits the details** the _AI can use to analyse and track people down the street_! The full web application is available for free in open-source at https://pixa.pics.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gy6dukjm7dz8gg048i4y.png)

And we're looking for sponsors for the year 2023 to come, any idea what we should develop during this coming year?


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7z9lov9m2dln6ahjrm9y.png)

Source: https://www.vbs.admin.ch/en/ddps/organisation/administrative-units/intelligence-service.html#dokumente_und_publik
Explain picking up a second language Like I'm Five
Tags: explainlikeimfive
Published: 2022-11-20 00:07:23

So, I started doing frontend stuff and I am really getting into the nitty-gritty of what programming *actually* is through Javascript. Putting the argument of whether CSS and HTML is programming or not aside,... (it's not. Now I know.) I am curious about people's feelings and thoughts on their SECOND programming language.

I have heard that it really shapes your style, opinion, and approach to programming. I am still only on my first language, and my head is exploding because I am having to rewire my entire thinking to approach solving problems from the perspective of a machine. 

I also know there aren't a lot of syntactical differences between many of the languages, so it becomes a matter of learning a few different words and some different syntax... But what does it mean to learn a new programming language to you guys? Did it blow your mind all over again (new possibilities?!), make you feel warm and fuzzy, make you want to rip your hair out (because you had to learn something tedious), or any other surprising feeling you had when you took on your second language?

I am looking forward to answers like:
"Learning my second programming language was like having sex with my second love. It still had the ferocity and passion of copulation with my first deep love, but with more precision, foreplay, and better technique." 

Bonus points for using programming lingo in your analogy. I am sure you will come through.
Multiple developers work simultaneously using their own branch on git
Published: 2022-11-20 00:00:07





#### 1. Create a new branch:

```javascript
git checkout -b yong-active-members-dev
```

Switched to a new branch 'yong-active-members-dev'
yongchanghe@MacBookPro 868_class_project_civitas_practice_repo % git push origin yong-active-members-dev 
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
remote: 
remote: Create a pull request for 'yong-active-members-dev' on GitHub by visiting:
remote:      https://github.com/hyc0812/868_class_project_civitas_practice_repo/pull/new/yong-active-members-dev
remote: 
To https://github.com/hyc0812/868_class_project_civitas_practice_repo.git

 * [new branch]      yong-active-members-dev -> yong-active-members-dev



#### 2. Check Which branch is currently used:

```js
git branch -a
```


  master

* yong-active-members-dev
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  remotes/origin/yong-active-members-dev

  

#### 3. Develop the new branch and commit the changes



#### 4. When complete, go back to master branch

```js 
git checkout master 
```

Switched to branch 'master'
Your branch is up to date with 'origin/master'.
yongchanghe@MacBookPro 868_class_project_civitas_practice_repo % git pull origin master 
From https://github.com/hyc0812/868_class_project_civitas_practice_repo

 * branch            master     -> FETCH_HEAD
   Already up to date.

  

#### 5. Merge your branch to master

```js
git merge yong-active-members-dev
```

Updating 98f2681..4fdc41c
Fast-forward
 src/app/demo/dashboard/active-members/active-members.component.html | 1 +
 1 file changed, 1 insertion(+)



#### 6. Push to master branch

```js
git push origin master 
```

Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/hyc0812/868_class_project_civitas_practice_repo.git
98f2681..4fdc41c  master -> master
yongchanghe@MacBookPro 868_class_project_civitas_practice_repo %
Next.js 13 Server Components: An Exciting New Feature for Server-Side Rendering
Published: 2023-02-17 23:38:50

---
title: Next.js 13 Server Components: An Exciting New Feature for Server-Side Rendering
published: true
date: 2022-11-20 00:00:00 UTC
tags: 
canonical_url: https://mattech.fyi/articles/server-components
---

Next.js 13 has introduced an exciting new feature: Server Components. This new feature offers a revolutionary approach to server-side rendering, making it easier and more efficient to build dynamic, interactive web applications. In this article, we'll explore what Server Components are, how they work, and what they mean for developers.

What Are Server Components?

Server Components are a new way of building server-side rendering applications in Next.js. They are a type of React component that is executed on the server, rather than the client, and can be used to generate dynamic content that is rendered on the client.

How Do Server Components Work?

Server Components work by allowing developers to split the rendering process into two stages: one on the server and one on the client. The server stage generates the initial HTML, and the client stage takes over to provide a dynamic, interactive experience. This split rendering approach makes it easier to build large, complex web applications that require both server-side rendering and client-side interactivity.

What Are the Benefits of Server Components?

Server Components offer a number of benefits to developers. They provide a simpler, more efficient way to build complex applications, reducing the need for custom middleware or complex data management tools. Additionally, they offer faster rendering times and improved performance, as the server-side rendering allows for faster load times and reduced client-side processing.

Another benefit of Server Components is their ability to enable more seamless collaboration between designers and developers. With Server Components, designers can work on the UI and user experience, while developers can focus on the logic and functionality. This separation of concerns can lead to more efficient workflows and better collaboration.

How Can You Get Started With Server Components?

If you're interested in using Server Components in your Next.js applications, you'll need to upgrade to Next.js 13 and make sure you have the latest version of React. Next.js provides detailed documentation and examples to help you get started, and the Next.js team is actively developing new tools and resources to support this exciting new feature.

In conclusion, Server Components represent an exciting new development in server-side rendering for web applications. By allowing developers to split the rendering process and streamline collaboration between designers and developers, Server Components make it easier to build complex, interactive web applications with improved performance and rendering times. As more developers begin to adopt this new feature, we can expect to see a new era of web development that is more efficient, collaborative, and dynamic than ever before.
How to do daily tasks in linux without GUI 🐧 as a sigma user
Tags: linux, archlinux, tutorial
Published: 2022-11-19 23:32:09


The Terminal is a powerful tool that can help you do many things efficiently, and a lot of people find it frustrating to use it, but I think it's not that hard to use it, so I decided to write this article to show you how to do handle wifi, bluetooth, screen resolution **like a real man**.

# Connect to wifi
to connect to the wifi you can use the `iwctl` command, it's a simple tool that can help you connect to wifi easily, so let's see how to use it.

## Connect to wifi using iwctl
1. First, you need to open iwctl by running the following command:
```bash
iwctl
```

you can see all the available commands by typing `help`.

so let's connect to wifi, to do that you need to type `station wlan0 scan` to scan for available wifi networks, then type `station wlan0 get-networks` to get the available networks, then type `station wlan0 connect <network name>` to connect to the network.

**wlan0** is the name of the wifi interface, you can check the name of your wifi interface by typing
```bash
device list
station device get-networks
station device connect network_name
```
*and that's it, you are connected to wifi😎.*


# Connect to bluetooth
Connecting to bluetooth is also easy, you can use the `bluetoothctl` command to connect to bluetooth devices, but first you should install some packages (`bluez` `bluez-utils`), so let's see how to do that.

if you are using arch based distro, you can install the packages by running the following command:
```bash
	sudo pacman -S bluez bluez-utils
```

if you are using debian based distro:
```bash
    sudo apt install bluez bluez-utils
```

now to start the bluetooth service, you need to run the following command:
```bash
sudo systemctl start bluetooth.services
```
then you should enable the bluetooth service :
```bash
sudo systemctl enable bluetooth.service
```
and you are ready to go, lets power on the bluetooth device:
```bash
power on
```
then you can scan for available devices by typing:
```bash
scan on
```
to connect to a device, you need to type:
```bash
connect <put_mac_adress_here>
```
and that's it, you are connected to bluetooth.
`bluetoothctl` is a powerful tool that can help you do many things, you can check the available commands by typing `help` or the [arch wiki](https://wiki.archlinux.org/title/bluetooth) for more information.

In the next article we will see how to change screen resolution using the terminal using `xrandr`.

Thanks for reading, and see you in the next article.

> always remember that you can do anything you want using the terminal, so don't be afraid to use it. like a chad linux enjoyer.
Data Structures: Sets of Data
Tags: javascript, beginners, algorithms
Published: 2022-11-19 23:09:47

Today we are going to win some sets!

{% embed https://stackblitz.com/edit/js-5wlhvy?ctl=1&devToolsHeight=33&embed=1&file=index.js&hideExplorer=1&hideNavigation=1&theme=dark %}
Distributed SQL
Published: 2022-11-19 22:12:08

What is Distributed SQL database?
This is a relational database that **maintains** data consistency across a **large number** of machines and geographic locations.

Distributed SQL solutions provide enterprise-grade management tools, security, and integration capabilities.

Applications that use distributed SQL solutions often choose vendor-managed solutions, getting global relational databases as a service on the same level as storage or computer as a service.

Some of the distributed SQL Solutions are;

1. [FaunaDB](https://fauna.com/)
2. [Google Cloud Spanner](https://cloud.google.com/spanner)
3. [CockroachDB](https://www.cockroachlabs.com/)
4. [YugabyteDB](https://www.yugabyte.com/)

Some of the industries that uses distributed SQL for their data workflow are;

- Telecom 

- Retail

- Gaming

**Kubernetes** is a popular choice for orchestrating distributed SQL clusters. Businesses are choosing distributed SQL because it gives them **value** that wasn't **possible** before, and they can now extend that to other offerings.

Distributed SQL already **automates** a lot of **key capabilities** required for server less. A server less **architecture** means that the **resources** are **always available**.

Most of the distributed SQL solutions are wire-compactible with PostgreSQL.

In a distributed world, you can create something that delights hearts no matter where they beat.

[Read more...](https://www.buymeacoffee.com/AnuoluwapoDS/e/102293)
Contribution to Crowdin CLI
Tags: java, opensource, testing
Published: 2022-11-19 22:07:38

### First contribution to Java project 
I wanted to try Java project to experience more professional code in Java. I picked up *Crowdin CLI* as it seems either not too big or not too small. [The issue](https://github.com/crowdin/crowdin-cli/issues/490) was asking to write a test for newly introduced feature. 

### What is Crowdin CLI?
Initially I tried to understand what *Crowdin CLI* for better understanding when I look at the code base. *Crowdin* provides the location service for many languages. *Crowdin CLI* is a client tool that you can upload translations and download the completed work automatically. Users can also find out the translation work status. 

### My approach to write test
After some of trials in my terminal, I looked at the code that I need to write a test against. It's `DownloadSourcesAction.java` which downloads translation based on options provided by the user. Some tests were already written, but obviously they don't cover many branches of the function. I tried to understand the test and write my test in a similar manner. Unfortunately, I don't have much room to customize passing arguments as it's a client tool. I could change limited parameters to hit the branches that the existing tests don't hit. 

Then I tried to understand the logic to see how I can vary my parameters to create a different test case. Good thing was that I had only one function to test as the rest functions are private, what was difficult for me is that the main function is very long and it's hard to read how each block of code is related to other. So I started to test with different parameters to have a better understanding. What I realized later is that my test can't verify the same download action. Because my test only needs to download reviewed files, but I don't have a way to change the file status. And I searched the whole project if there is any property or method to update the review status, but I found that I can only hit the API for reviewed files. So I changed my strategy to verify the console message when I set a different parameters. I invoke the action with different parameters, then it shows the message on the console. 

```java
ByteArrayOutputStream outContent = new ByteArrayOutputStream();
PrintStream ps = System.out;
System.setOut(new PrintStream(outContent));
...
String warnMessage = "⚠️  Operation is available only for Crowdin Enterprise\n";
assertEquals(warnMessage, outContent.toString());
```*This is how to capture console message and assert*

I pushed this test to the repo and I could see the test coverage is increased. The other test `testDryRun()` seemed not effective, so I updated the test to verify console message too. 

### So much learning about how to package Java program
Besides from writing tests, I learned many things from this project as I'm writing Java CLI tool too. I packaged my OpenSSG with *Gradle* and learned how to manage dependencies and settings, as well as CI tools. As I mentioned in the earlier blog, learning various tools and practises from real world project is tremendous.
DPS909 Blog: Internal Code Reviews
Published: 2022-11-19 21:14:25

As part of the Release 0.3 project in my open source course (DPS909), I was asked to continue my learning progression from Hacktoberfest by performing internal code reviews on pull requests (PR). "Internal" in this case means a PR in a project repository that is maintained by the class.

The project I chose was [Telescope](https://github.com/Seneca-CDOT/telescope), which is an open source web server and client application for aggregating and presenting a timeline of Seneca's open source blogs.

## Code Review 1
I decided to review [PR #3768](https://github.com/Seneca-CDOT/telescope/pull/3768). This PR addresses an issue in the sign up process where the Blog/RSS URL form cannot differentiate between a blog URL and a feed URL, as described [here](https://github.com/Seneca-CDOT/telescope/issues/3689#issue-1399594235).

To review the code, I checked out the PR on my editor and ran the app on my machine.  I followed the testing steps specified in the PR. I also purposely messed up some steps to see how the program would react with the changes. The changes appeared to work as I could input a Blog URL and a feed URL when signing up; I could complete the sign up with the form able to recognize a Blog URL and a Feed URL.

One of the previous reviews of the PR [commented](https://github.com/Seneca-CDOT/telescope/pull/3768#pullrequestreview-1185243877) with a concern with the backend breaking if a user enters a Feed URL instead of a Blog URL. So I tried to investigate this myself. As I explained in this [comment](https://github.com/Seneca-CDOT/telescope/pull/3768#issuecomment-1320748083), the current PR changes prevent a function that specifically uses a Blog URL from being called. I also noticed the Blog URL being used when making a call to the database. However, this should also not break the backend because the call is just made to store information in the database.

## Code Review 2
For the second code review, I reviewed [PR #3769](https://github.com/Seneca-CDOT/telescope/pull/3769). This review was a little simpler, as it was a a UI change to the top navigation bar of the web page. The changes to the files included CSS adjustments and a new button at the top right of the page. The only feed back I could give was in this [comment](https://github.com/Seneca-CDOT/telescope/pull/3769#pullrequestreview-1187015338) I left. I suggested to match the top nav bar with the side nav bar that appears when a user scrolls down; mostly for UI consistency.

## Conclusion
Doing these code reviews, I realized that it was good to review all types of PRs no matter the complexity. I spent a lot of time trying find complex ones but even the most miniscule, like a UI change/addition, needs input from multiple people before being approved.
How is it The Effective Agile Team?
Tags: agile, scrum, sprint
Published: 2022-11-19 21:08:27

As non-exclusive non-ordered list of aspects and practices in short words: 

- Disciplined and committed team
- Protected and trusted
- Tuned, focused and trained
- Follow pull model and self-organized
- Ensure shared understanding
- Result driven
- Practice the scope sizing and has synchronized timing
- Breakdown the scope to shippable user stories
- Has guided development 
- Work in small rounds within the sprint
- Align and revisit the expectations (Learn and Adapt)

Timing             |  Scrum 
:-------------------------:|:-------------------------:
![Timing](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4i3627qnu0esyq8wytyd.png)  |  ![Scrum](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7b573vbz7tss65psgfmz.png)


More details: [Toward a Flow of Delivery via Agile-Lean](https://dzone.com/articles/toward-a-flow-of-delivery-via-agile)
Code review best practices
Tags: webdev, beginners, programming, opensource
Published: 2022-11-19 20:49:43

Hi everyone,

This week I've been doing some code reviews for [Telescope](https://github.com/Seneca-CDOT/telescope) project.

I would love to share some tips for code review that I figured out.

I've reviewed 2 PRs. [PR#1](https://github.com/Seneca-CDOT/telescope/pull/3700) and [PR#2](https://github.com/Seneca-CDOT/telescope/pull/3769).

## Don't take it personally

_People review the code, not your personality_. Project maintainers might be very strict. Hence, they might request changes for almost every line if they see it could be written better.

We have to remember that with code reviews we are just **eliminating common mistakes and making ourselves better as developers**.

## Follow code review checklist

List at least 3 things you need to check in the code. For example, it could be the following:

- Security 

- Reusability (e.g. can we reuse the written functions)

- Code simplicity

## Multiple reviewers 

Code review is a team work, meaning it's better when multiple people review a little piece of code.

It will help to stay focused and not feel overwhelmed. As a beginner, **If you review only 50 lines of code, it will be much easier comparing to reviewing 1000 lines of code**, where at some point, you might lose concentration. Programmers are humans, not robots :)

## Leave proper comments

In the comments, **leave clear and concise comments **about what should be changed and why it's a best practice.

## Automate code styling

We need to use automation for repetitive tasks as much as we can. **Use prettier and linter** to make sure that code is easy to read.

If you enjoy blogs, you could [buy me a coffee](https://www.buymeacoffee.com/mnosov622N). It will motivate to write better blogs :)


 

**What else do you think could be considered as code review best practice ?** Let me know in the comments :)
Proxy error: could not proxy request (ENOTFOUND)
Tags: react, node, webdev, beginners
Published: 2022-11-19 20:27:50


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gd4bnb7xq842hdairtwf.png)

I am getting this error. I have tried everything I can find to make it work with no luck. Any help is appreciated.