teleren/devto huggingface dataset:
MacOS M1 or M2 - Flutter Setup
Published: 2023-05-18 11:35:00

All the following actions should be performed from `administrator` account

### Login to admin user in terminal
```
su <admin-username>
```

Refer to following video tutorials:

### Step 1: Create new Volume for Projects:

https://www.youtube.com/watch?v=99Ea8ZkWzXs
 

### Step 2: How to Install Flutter on macOS 2022

https://www.youtube.com/watch?v=YVaFoCiQ2SI 

- Install Xcode
- Install Android Studio
- Install Flutter

```
echo $SHELL
```

if it is `/bin/zsh`, then continue with following steps:

```
touch .zshrc
```

then visit home using finder, enable hidden files using `cmd + shift + .` and double click on `.zshrc` file.

Then add following file:
```
export PATH="$PATH:<flutter-folder-path>/flutter/bin"
```

Then open terminal and run
```
source $HOME/.zshrc
```

[INCOMPLETE, CHECK THE VIDEO]


- Install Brew and 
- Run `sudo gem install activesupport -v 6.1.7.3`
- Run `sudo gem install cocoapods`
- Close the `terminal`
- Run `flutter doctor`
How to Capture and back up your Virtual Machine img using Azure Compute Galleries
Published: 2023-05-18 11:25:16

First You will need to create Azure compute galleries

**Step 1**

Go to azure portal and Search for Azure compute galleries

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

**Step 2**

Click on Create 

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

**Step 3**

Fill in the
**Resource Group**
**Name**
**Region**
**Description **(optional)

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

**Step 4**

Click on Review + Create

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

**Step 5**

Now go to your created Vm in azure portal
And Click on** Capture**

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

**Step 6**

Fill in your 

**Resource Group**:
**Target Azure Compute gallery**:

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

**Step 7**

Under Target Vm image definition Click on **Create New**

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

**Step 8**

Create a new image name and click on **OK**

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

**Step 9**

Version Nr: Create a Version 

**Best Practices**
*increase Replica
*Back up in more than Region


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


**Step 10**

Click on **Review + Create**

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


**Step 11**

Congratulations Your Vm img has been captured and stored

you can now revert back to this specific moment 


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


That will be the end Make sure to always delete Azure Resource when they are not in use
How BitTorrent (really) works:
Tags: bittorrent, distributedsystems, node, p2p
Published: 2023-05-07 23:24:48

### 1. Discovering nodes

BitTorrent node ip addresses (for a given torrent) are discovered from a DHT network, called Kademlia.

Kademlia assigns random ids to nodes similar to the data ids (ie. the torrent hash) so nodes know about torrents with ids close to their own.

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

Kademlia messages are sent over UDP and contain a payload and some metadata (type and length).

The "get_peers" message returns nodes that are closer to a given id (eg. torrent hash).

Script: https://github.com/liveduo/bittorrent-scripts/blob/main/1-connect-dht.js

*82 lines of code (depends on `bencode` npm package)


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

To get the nodes that own a given id (ie. torrent hash)  "get_peers" messages are sent recursively to get nodes that closer and closer to the torrent.

Script: https://github.com/LiveDuo/bittorrent-scripts/blob/main/2-discover-nodes.js

*130 lines of code (depends on `bencode` npm package)


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

### 2. Connecting to a node

Initially (before 2008), BitTorrent needed trackers, centralised servers that contained the torrent metadata.

This metadata can be size, torrent files, piece hashes for checksums and others.

Now metadata can be downloaded from nodes in the DHT without centralised parties.

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

Bittorrent messages are sent over TCP and contain a payload and some metadata.

The "handshake", "interested" and "unchoke" messages establish a connection and interest for a torrent.

The "bitfield" message shows which pieces a node has and "piece" is used to transfer data.


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

To connect to a node we first send a "handshake" message. 

We should receive "handshake" and "unchoke" messages if the node is ready for "piece" requests (ie. requests for data).

Script: https://github.com/LiveDuo/bittorrent-scripts/blob/main/3-connect-node.js

*69 lines of code (depends on `bencode` npm package)


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

### 2. Downloading data

Files are transferred in pieces from multiple nodes in parallel.

When all pieces are received the torrent files can be reconstructed.

Script: https://github.com/LiveDuo/bittorrent-scripts/blob/main/4-download-data.js

*165 lines of code (depends on `bencode` npm package)


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

More details on:
https://www.tzionis.com/bittorrent-protocol-in-25-minutes
How Medium, LinkedIn and Twitter show link cards just from a URL
Tags: webdev, programming
Published: 2023-05-18 11:21:40

It’s a decent project to develop over a couple of hours and add to your resume.

## Under the Hood
This will be a very short story, as we will be discussing a cool feature.

If you reading on Medium, you might have seen the link cards as shown below.

[iHateReading](ihatereading.in)

Similarly, I want to render the link card on my website, it provides a good preview of the link and gives clear instructions to the user about the link even before opening the link.

## Step One

- Create an endpoint or API that basically gives the data from the link or URL
- Simply render the card showing the data from the API response
This is not rocket science, as Express JS or Node JS have tonnes of third-party libraries to scrap the required information from the URL.

I’ve used the Cheerio npm module to extract all the meta tags from the URL and filter only the required properties such as image, description and title.

This endpoint will return the same data as the response and now I only have to make the API call in the frontend to fetch the data and show the link card.

## Step Two
This is an advanced approach.

Since I was using Next JS which provides serverless API.

It’s like an API endpoint written in the front end and works will all non-browser modules such as Cheerio.

So I simply create a serverless API and endpoint to fetch the meta tags and filter the data and send back the response.

There is no such difference between serverless API and Node JS API both are just APIs so in the front end we just have to make axios called to these endpoints to get the data.

## Website
I choose both options for my website iHateReading.

I’ve created this endpoint to get the metadata from the URL or link of the website.

You can use this endpoint on your own if you want me to add more features then let me know.

I am thinking to make a react npm module for this entire link preview cards but it seems like npm modules created using Next JS will have its downside.

So I need to give thought to whether to use Next JS or just Create React App.

Try this project on your own and add it to your resume, just a small project that requires a little bit of understanding about the website and tags.

That’s it for today

Keep developing
Shrey
[iHateReading](ihatereading.in)
Best Study AWS DOP-C02 Exam Tips
Tags: aws, webdev, beginners, programming
Published: 2023-05-18 11:14:37

The AWS Certified DevOps Engineer - Professional (DOP-C02) exam is a challenging certification exam that validates your expertise in designing, provisioning, operating, and managing distributed application systems on the AWS platform. 

## **Here are some tips and information to help you prepare for and excel in the DOP-C02 exam:

**
**Understand the Exam Blueprint:** Review the official exam guide provided by AWS. It outlines the domains, subtopics, and competencies evaluated in the exam. Familiarize yourself with the exam objectives to ensure you cover all the necessary topics during your preparation.

**Hands-on Experience:** DevOps is a practical field, and hands-on experience with AWS services is crucial. Spend time working on real-world projects or set up a lab environment to gain hands-on experience with services like AWS Elastic Beanstalk, AWS CloudFormation, AWS OpsWorks, AWS CodePipeline, AWS CodeDeploy, etc.

**Study AWS Documentation:** AWS offers comprehensive documentation for each of its services. Read the documentation thoroughly to understand service features, best practices, and use cases. Pay close attention to topics related to deployment strategies, automation, scalability, monitoring, and security.

**Review Whitepapers and FAQs:** AWS provides a wide range of whitepapers and FAQs that cover various architectural topics and best practices. Study documents like the AWS Well-Architected Framework, AWS Security Best Practices, and FAQs related to relevant services. These resources provide valuable insights into designing and operating secure and scalable applications on AWS.

**Practice with Sample Questions:** Familiarize yourself with the exam format and question types by practicing with sample questions. AWS provides sample questions in the exam guide and on their official training resources. Additionally, you can find third-party practice exams and question banks to further enhance your preparation.

**Take Official AWS Training:** Consider enrolling in official AWS training courses designed specifically for the DevOps Engineer - Professional certification. These courses cover the required topics in-depth and provide hands-on labs to reinforce your knowledge.
Get More INFO: [https://www.pass4surexams.com/amazon/dop-c02-dumps.html](https://www.pass4surexams.com/amazon/dop-c02-dumps.html)
Official beginning as software newbie
Tags: java
Published: 2023-05-18 10:55:08

Technology has always been something among my career choices since the day I developed love for MATHEMATICS. Because of its critical and logical aspects, I keep building on it with an intention of studying SOFTWARE Engineering in FUTURE.

I was introduced to PHONES early 2014 as soon as we flee to MINGKAMAN because of 2013 conflicts. In a while I had come to know various things internet owns and began to develop interest in COMPUTER SCIENCE.

 In our HIGH school, we had computers for basic learning which also boosted my passion. CREDIT to Bol Abraham ❤️

In fact, I chose to major in computer science because I love maths, critical thinking and writing codes. It is a valuable skill to have and enjoy the challenge of working through various problems and finding them solutions.

I have interacted with computer-related students, teachers and Lecturers about MUCH in this CS field. I think that learning how these professionals apply their knowledges in the real world through research and projects solidifies most of what made me a computer science student today. 

On WEDNESDAY, 17th -May I sat for my first programming exams (Java). I'm proud though it is a beginning, some bits of light of where Im heading to is showing. It looks like JONJONG🤣 but I felt better after releasing this note, just wanted to clean my throat before the journey begins.

Finally, starting my CS class this YEAR was another great step towards joining the world of COMPUTER TECHNOLOGY.❤️
Cortexi - Reviews, Results, Price, Benefits And Ingredients?
Tags: webdev, javascript, beginners, programming
Published: 2023-05-18 10:40:55

[Cortexi](https://www.outlookindia.com/outlook-spotlight/cortexi-reviews-fraudulent-or-legit-cortex-pros-cons-customers-scam-alerts-and-fake-side-effects-exposed--news-286679) the ear wax removal, therefore hear soft crackling noises and feel no pain. If you feel uncomfortable at any point in procedure, educate your partner to get rid of the candle immediately.
[https://www.outlookindia.com/outlook-spotlight/cortexi-reviews-fraudulent-or-legit-cortex-pros-cons-customers-scam-alerts-and-fake-side-effects-exposed--news-286679](https://www.outlookindia.com/outlook-spotlight/cortexi-reviews-fraudulent-or-legit-cortex-pros-cons-customers-scam-alerts-and-fake-side-effects-exposed--news-286679)
https://www.scoop.it/topic/cortexi-ear-drops
https://www.facebook.com/events/492962029639813/
https://www.pinterest.com/pin/883620389372678685/
https://www.instagram.com/hdsakunva/
disable Bluetooth at startup in TLP
Published: 2023-05-07 15:40:33

## TLP
From the project page:

>     TLP is a feature-rich command line utility for Linux, saving laptop battery power without the need to delve deeper into technical details.
>     TLP’s default settings are already optimized for battery life and implement Powertop’s recommendations out of the box. So you may just install and forget it.
>     Nevertheless TLP is highly customizable to fulfil your specific requirements.

Read more from,
- [Tlp official website](https://linrunner.de/tlp/)
- [Arch wiki](https://wiki.archlinux.org/title/TLP)

# Steps
To disable Bluetooth at startup, open the following file in your preferred text editor (root privilege will be required),
```
/etc/tlp.conf
```

> For example to use `nano` text editor, your command will be, `sudo nanao /etc/tlp.conf`.

Then change,
```
RESTORE_DEVICE_STATE_ON_STARTUP=0
``` 
to 
```
RESTORE_DEVICE_STATE_ON_STARTUP=1
```

And, also use the following line,
```
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth"
```

> Don't forget to remove the '#' from the beginning of a line (removing comments).

## Example layout
Here is a basic example of my config,
```
# Restore radio device state (Bluetooth, WiFi, WWAN) from previous shutdown
# on system startup: 0=disable, 1=enable.
# Note: the parameters DEVICES_TO_DISABLE/ENABLE_ON_STARTUP/SHUTDOWN below
# are ignored when this is enabled.
# Default: 0

RESTORE_DEVICE_STATE_ON_STARTUP=1

# Radio devices to disable on startup: bluetooth, nfc, wifi, wwan.
# Separate multiple devices with spaces.
# Default: <none>

#DEVICES_TO_DISABLE_ON_STARTUP="bluetooth nfc wifi wwan"
DEVICES_TO_DISABLE_ON_STARTUP="bluetooth nfc wwan"
```

Here besides `bluetooth`, I've also disabled `nfc` and `wwan`.

## References
- [Manjaro forum - 
Bluetooth Turns On Automatically After Reboot! ](https://forum.manjaro.org/t/bluetooth-turns-on-automatically-after-reboot/101073)
A reason to choose React Native over Flutter for your next web application
Tags: reactnative, flutter, webdev
Published: 2023-05-18 10:15:54

This post aims to summarize my thoughts on Flutter vs. React Native specifically for web development.


## Flutter
The purpose of Flutter Web is not to create websites; rather, it focuses on making apps available in the browser. Embracing web standards is not the objective here, instead, the goals are to ensure fidelity and consistency across platforms. For that, with the help of [CanvasKit](https://docs.flutter.dev/platform-integration/web/renderers), the browser functions as a Flutter screen, enabling the rendering of your mobile/desktop app within a canvas, and bypassing many built-in browser features. This is why the [Flutter documentation states the following:](https://docs.flutter.dev/platform-integration/web/faq)

> Not every web page makes sense in Flutter, but we think Flutter is particularly suited for app-centric experiences:
> - Progressive Web Apps
> - Single Page Apps
> - Existing Flutter mobile apps

## React Native
React Native shares a similar objective, which is to ensure cross-platform consistency. However, when it comes to web development, React Native has a significant advantage: it relies on JavaScript, HTML, and CSS. No need to download a 2MB web assembly; no need to reimplement the wheel to make the scrollbar work or _hack_ the accessibility tree to make the canvas accessible: React Native Web relies on the browser rendering engine and existing javascript APIs.

## Conclusion
It makes a lot of sense to choose Flutter if you are already familiar with Dart or if you intend to migrate an existing Flutter app to the web. But otherwise, if you make a web app and plan to target other platforms in the future I would not hesitate to go with React Native!

Obviously, you should compare Flutter and React Native on Android and iOS to make a final choice (and that would deserve another post). However, whatever you read elsewhere, don't forget that you can use skia (Flutter's engine) [inside a React Native application.](https://github.com/Shopify/react-native-skia)😉



**Notes:** 

- Flutter does support HTML/CSS rendering as a replacement for CanvasKit.  (but I don't really understand why they maintain two renderers in parallel ?). 

- Illustration image: I ask bing chat for "an epic combat between Flutter and React Native, colorfull and illustrated"
Writing a Comprehensive RFP for Agile/Iterative Software or App Development Projects: The Ultimate Guide
Tags: productivity, tutorial, agile, startup
Published: 2023-05-18 10:07:27

Are you planning an Agile/Iterative Software or Digital Platform Project and need to find the perfect development team? Crafting a stellar Request for Proposal (RFP) is the first step in attracting the right professionals who can turn your vision into a reality. 

In this ultimate guide, we'll walk you through the essential steps, highlight the latest tools and techniques, and provide valuable insights to help you write an outstanding RFP for Agile/Iterative projects. Whether you're a startup, an established business, or a non-profit organization, this guide is designed to assist you in finding the ideal development partner for your software or digital platform needs.

**[Read Now](https://www.cygnismedia.com/blog/writing-rfp-for-agile-iterative-software-development-project/)**
NgRx diagram explained
Tags: ngrx, javascript, angular
Published: 2023-05-18 09:55:23

Sometimes NgRx main image is a little strange or not clear enough, here is a better image explained about what NgRx is about and how to use it. 

You can also download [here](https://drive.google.com/file/d/17g4rMZiRUk7q4LOQmCM1aU-JXa6UPVxo/view?usp=share_link)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/712tel5tfxc6iuar0f03.jpg).
My web development journey.
Tags: javascript, beginners, webdev, programming
Published: 2023-05-18 09:27:17

I started my web dev journey in mid-March of 2023,  I have watched many tutorials but I can’t build anything by myself (or fancy term called **tutorial hell**).So I have started reading many docs from Google. Some docs are W3school, 30DaysOfJavaScripts, and many more. Then I came to know that the simple method for learning programming languages is PBL ( **Project-based learning** ). 

### What is Project-based learning?

Here, you will learn the basic concepts of programming languages for me it’s JavaScript basics ( like array, function, object, and many more. ). After learning the concept, you will apply that concept in building small projects, like a quiz game. 

## My mistake while learning.

- I was jumping from one concept to another concept.
- I was only watching tutorials and doing nothing by myself.
- I was not consistence.
Stay Ahead in Your Career with SAP C_CPI_14 Exam Dumps
Published: 2023-05-18 09:25:10

# Pass the SAP C_CPI_14 Exam with Confidence Using Our Reliable Dumps
Passing the <a href="https://dumpsboss.com/sap-exam/c-cpi-14/">C_CPI_14 Dumps</a> can be a daunting task, but with the right preparation and resources, success is guaranteed. One of the most effective ways to prepare for this exam is by using reliable dumps that offer comprehensive coverage of all exam topics.

Our premium quality <a href="https://dumpsboss.com/sap-exam/c-cpi-14/">C_CPI_14 Exam Dumps</a> are designed to help you pass your certification with confidence. We offer a range of authentic and updated dumps that cover all sections of the exam, ensuring that you have access to everything you need to succeed.

Our trusted source for <a href="https://dumpsboss.com/sap-exam/c-cpi-14/">SAP C_CPI_14 Exam Dumps</a> is dedicated to providing students with accurate information that has been compiled by experienced professionals in the field. This means that our exams contain only relevant and up-to-date questions, allowing you to focus on what's important while avoiding unnecessary distractions or confusion.

With our reliable SAP C_CPI_14 exam dumps at your disposal, you will feel confident in tackling even the toughest questions on test day. Our materials are designed specifically for those who want maximum results without compromising their study time or effort.

Special Discount 96% off Through This Link >>>> https://dumpsboss.com/sap-exam/c-cpi-14/

So why wait? Get started today and experience firsthand how our authentic SAP C_CPI_14 Exam Dumps can help take your career to new heights!

SAP C_CPI_14 Exam Dumps | C_CPI_14 Exam Dumps | C_CPI_14 Dumps | Sap c_cpi_14 exam dumps free download | C_CPI_14 Dumpsboss | C_CPI_14 pdf | C_CPI_14 dumps free | C_CPI_14 certification | C_CPI_14 certification questions and answers | C_CPI_14 certification dumps free download | C_CPI_14 certification dumps