teleren/devto huggingface dataset:
Biggest lesson learned from Nodejs Documentary
Tags: node, opensource, javascript, backenddevelopment
Published: 2024-04-01 19:32:01

Have you ever wondered what makes some tech projects keep going strong, even when they face big challenges? Well, I recently watched a [documentary about Node.js](https://youtu.be/LB8KwiiUGy0?si=EwpNjRvr7ahsN7-8) that gave me a pretty cool insight into this. It’s not just about having a great idea or solving a big problem (which is definitely important), but there’s something else – having a good set of rules for everyone to follow.

Node.js started off like any other project, trying to solve a specific problem with code. But, the real drama started when some of the main people working on it decided to leave, and the company that was looking after Node.js began to push their own ideas too much. This caused a bit of a stir within the Node.js community.

So, what did the community do? They didn’t just sit back; they took action by creating a "fork" of Node.js. This means they made a copy of the project so they could work on it in their own way, without the company interfering. This move was huge because it showed that the people actually using and loving Node.js wanted to keep it true to what the community needed, not just what a company wanted.

The best part? After some time, this forked project and the original Node.js came back together. They merged into one big project again. But this time, they had new rules. These rules were all about making sure the project would keep going strong and stay true to what the community wanted, even if the original leaders left or if a company tried to push its own agenda too much.

For me, this was a big lesson. It showed that for open-source projects (which are projects anyone can see or change), having a good set of rules is super important. These aren’t just any rules, but ones that make sure everyone in the community is heard, that decisions are made together, and that the project can keep improving and growing without losing its way.

In a nutshell, the story of Node.js isn’t just a tech story; it’s a teamwork story. It’s about how, when people come together and set up a good way to work, amazing things can happen. It makes sure the project doesn’t just start strong but stays strong, growing and getting better with the help of everyone involved. So, let’s remember: whether we’re coding, creating, or just contributing, having clear, fair rules can make all the difference in keeping our projects and communities thriving.

Talking about creating a open source project with good guidelines please check my last project: it's a translation of [The Art of Computer Programming to Brazilian Portuguese](https://github.com/mateustsleao/the-art-of-computer-programming-portuguese)
AWS Solutions Architect Associate
Tags: aws, cloud, certification
Published: 2024-04-01 19:52:16

I've passed the Amazon Web Services (AWS) Solution Architect Associate Exam. I took this exam to validate my AWS knowledge as I dive deeper into the cloud and building/designing:

🔒 Secure Architectures
💪 Resilient Architectures
🚀 High-Performing Architectures
💰 Cost-Optimized Architectures

I am planning to do a lot of awesome things within the cloud security space!
Template project [typescript]
Tags: typescript, programming, template, github
Published: 2024-04-01 19:49:37

Guys, I started a template to start commercial projects and for personal use.

I'm implementing basic technologies, such as database, PubSub, Redis Cache(text, hash, json), JWT, Websocket, restAPI... in short, what every project always ends up using at some level of implementation.

To do this, I thought about collecting information about what you are using to implement too, so that in the future, there will be a CLI where you can choose between the options already implemented, and it can create a project with all the technologies already ready for use.

You can see the beginning of it at: [Github](https://github.com/rslucena/TypeScript-Boilerplate)
Exploring Why IntelliJ IDEA Reigns Supreme as the Ultimate Java IDE
Tags: webdev, java, intellij
Published: 2024-04-01 19:46:04

**Deep Integration:** IntelliJ IDEA offers exceptional integration with popular Java tools and frameworks. For example, it has features that facilitate importing and configuring Maven and Gradle projects. Additionally, IntelliJ supports application servers like Tomcat, JBoss, and WildFly, allowing developers to run, debug, and manage applications directly from the IDE.

**Ease of Use:** IntelliJ's user interface is known for its intuitiveness and efficiency. Features such as intelligent code suggestions (via "IntelliSense" feature), automated code refactoring, and quick navigation between classes, methods, and files make writing code more agile and productive. Additionally, IntelliJ offers a wide range of customizable keyboard shortcuts that enable developers to perform common tasks quickly and easily.

**Advanced Features:** IntelliJ offers a variety of advanced features that help developers write, debug, and maintain high-quality Java code. For example, its debugging tool is highly powerful, allowing developers to inspect variables, track code execution, and quickly identify issues. Additionally, IntelliJ has static code analysis features that help identify errors and potential issues before code execution even begins.

**Language Support:** IntelliJ provides comprehensive support for the Java language, including the latest versions of the language. This means developers can take advantage of the latest Java features, such as lambda expressions, streams, and modules, while writing code in the IDE. Additionally, IntelliJ supports other programming languages besides Java, such as Kotlin, Scala, and Groovy, allowing developers to work on projects involving a variety of technologies.

**Active Community and Ecosystem:** IntelliJ has an active and engaged user community that contributes plugins, tutorials, and additional resources to the IDE. This means developers can customize and extend IntelliJ's functionality according to their specific needs. Additionally, the IntelliJ Marketplace offers a wide selection of plugins developed by the community, covering a variety of areas such as integration with front-end development tools, testing frameworks, and more.
Completed 10 Days of Getting an High Paying Job
Tags: learning, career, job
Published: 2024-04-01 19:19:19

**Hi Friends**

I have completed the first 10 Days of Preparing for getting an High Paying Software Job.

Here are the Topics I have learnt in these 10 days.

1) **PostgresSQL**
- Didn't spent too much time on this as I am going to use ORM which make my life more easier.
- Just Learn the Basic CRUD Commands. As this also use SQL language for querying so I get it easily
- To setup u can either use `Neon.db` or `Vercel PostgresSQL`

2) **Prisma**
- Basic CRUD operation
- Defining Schema 
- Generating Prisma Client

3) **Serverless Backends**
- Learn about Serverless Architecture
- Learn about Cloudflare Workers , How to deploy your backend, for front use can use Cloudflare pages
- Learn about HONO , as Cloudflare doesn't use Node.js as runtime they have their own runtime

4) **Typescript**
- Already Knew ts, Just revised some of concepts 
- Learnt about some advanced TS API's - `Pick` , `Partial` , `Record`, `Map[in JS]` , Type inference in Zod.

5) Built a project - **`Medium Clone`**
-  `Tech Stack` - React.js , HONO , Primsa , PostgresSQL , Cloudflare Workers
- **Visit** - https://medium-eight-ruby.vercel.app/blogs

6) Revised Concepts of NEXT JS
- How to make an API [ Just a little recap ]
- Others

7) DigiVote 
- This is my final year project which uses next.js and web3
- Implemented the Vote Functionality , Now user can vote and can also create the Vote.



This is all. In the next 10 days I am planning to learn & Do these things 
- Recoil as State Management 
- Implement the Image Matching in my app DigiVote
- Revise Data Structures and continue with DP.
- Revise Dockers 
- MonoRepos TurboRepos
- Auth in NextJS without Clerk 
- Building a Paytm Project from a course.


Thanks for reading. ☺️
If you have any suggestion. Tell me in comments.
Beyond HTML, CSS, and JavaScript: What's Next in Your Web Development Journey?
Tags: webdev, javascript, beginners, programming
Published: 2024-04-01 19:04:13

So, you've mastered the basics of web development: HTML for structure, CSS for styling, and JavaScript for interactivity. You've built websites, added animations, and created dynamic content. But now, you're itching to take your skills to the next level. The question is, where do you go from here?

### 1. Dive into Front-End Frameworks

Front-end frameworks like React, Vue.js, and Angular are powerful tools that can supercharge your web development projects. They provide reusable components, efficient state management, and seamless data binding, allowing you to build complex user interfaces with ease. By mastering a front-end framework, you can streamline your development process and create more dynamic and responsive web applications.

### 2. Explore Back-End Development

While front-end development focuses on the user interface and client-side interactions, back-end development deals with server-side logic and database management. Learning a back-end language like Node.js, Python, or Ruby on Rails will enable you to build robust and scalable web applications from the ground up. You'll gain a deeper understanding of server-side architecture, database management, and RESTful API design, opening up a world of new possibilities in your web development journey.

### 3. Venture into Mobile Development

With the proliferation of smartphones and tablets, mobile app development has become increasingly important in the world of web development. Platforms like React Native and Flutter allow you to leverage your existing web development skills to build cross-platform mobile apps. By mastering mobile development, you can reach a wider audience and create seamless experiences for users across different devices.

### Conclusion

The world of web development is vast and ever-evolving, with new technologies and frameworks emerging all the time. Whether you choose to specialize in front-end frameworks, delve into back-end development, or explore mobile app development, there's always something new to learn and discover. So, don't be afraid to step out of your comfort zone, experiment with new technologies, and push yourself to new heights in your web development journey.

Happy coding!
include NSPrivacyAccessedAPICategoryDiskSpace & NSPrivacyAccessedAPICategoryFileTimestamp Information🤔
Tags: ios, apple, reactnative
Published: 2024-04-01 19:02:15

Hey, so apple just came out of nowhere and sent a big email outlining something like NSPrivacyAccessedAPICategoryFileTimestamp Information, NSPrivacyAccessedAPICategoryDiskSpace and NSFileSystemFreeSize with few other API declaration.

Here's what it means for you as a developer and here is what you can do.

## How to release my current app😵‍💫

Don't worry till May 1st, Apple doesn't expect you to declare these. In fact, they would just flag the required API declaration and approve your app for now. So pushing to production won't stop🥳

## How do I get what are the declarations required before submission on Appstore?

You can run a bash script to check your codebase and dependencies for such API declaration requirements.

Use the following one:
[https://github.com/Wooder/ios_17_required_reason_api_scanner/blob/main/required_reason_api_text_scanner.sh](https://github.com/Wooder/ios_17_required_reason_api_scanner/blob/main/required_reason_api_text_scanner.sh)


- Download the `required_reason_api_scanner_text.sh` file.

- Go to terminal and go to the directory where this file was downloaded to. Run the following command with your app directory path.

```
sh required_reason_api_scanner.sh <AppDirectory>
```

This will give you a list of declarations, in the following format:
```Found potentially required reason API usage 'UserDefaults' 
in './ViewController.swift' Line numbers: 128```

- Search for the API declarations mentioned here:

[https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api](https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api
)

## What's next?

1. Go to Xcode (15 and above)
2. File -> New -> File
3. Search and select the 'App privacy' option
4. The default privacy file name is required, do not change that and continue
5. Copy the following file, and edit the newly created `PrivacyInfo.xcprivacy`:

```
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>NSPrivacyAccessedAPITypes</key>
 <array>
  <dict>
   <key>NSPrivacyAccessedAPIType</key>
   <string>NSPrivacyAccessedAPICategoryUserDefaults</string>
   <key>NSPrivacyAccessedAPITypeReasons</key>
   <array>
    <string>CA92.1</string>
   </array>
  </dict>
 </array>
</dict>
</plist>
```

You're done!
Build your app, sit back and relax.⛱️
List Data Structure in 5 mins - Python
Tags: python, beginners, programming, tutorial
Published: 2024-04-01 19:00:08

**Hi developers/learners/readers** 🙋‍♀️✋

## Python Unleashed 07

Going to do comparison between C++ vectors and Python lists in this blog. As I am moving to Python from C++, so this can help others like me. 

To those who are not familiar with C++, you may find few things confusing. 

## INTRO 

- **List items are within square brackets, like C++ arrays/vector**
- **Dynamically sized, can shrink and grow**
- **elements are separated by comma as always**
- **Stores data in sequence, in linear fashion**
- **It can store data of any type, unlike vectors in C++**
- **Random Access Possible (Negative and Positive Index), Prone to Index out of bound errors, AND ZERO BASED INDEXING**
- **Mutable**
- **We do have a list class for lists**


List is so so much similar to vectors.


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

`list[-0]` returns 0th elements only

## Methods on List

1. **Append** -> add element to the end of list, one at a time, tuple and lists can be added


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


2. **Insert** -> requires two values, element can be added at desired position. One argument is position, second is value. 


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



3. **Extend** -> add multiple elements to the end of list, elements must be in square bracket. 


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


4. **Reverse** -> reverses the list


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


5. **Reversed** -> [A good read](https://stackoverflow.com/a/31087151)

5. **Remove Elements** -> Removes one element at a time, and element must be there in the list, otherwise throws error, pass element which you would like to delete


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



6. **Pop** -> Either remove element from end only or pass index

7. **Slicing** -> Same as that for strings [check here strings](https://dev.to/bellatrix/understanding-strings-python-67j)
For more information [check here](https://www.geeksforgeeks.org/python-lists/)


END



**Thanks for reading**

If you liked the content, do react, or for any feedback/correction/suggestion feel free to reach out to me on [Linkedin](https://www.linkedin.com/in/sakshi9ain/) or can comment here

Nice Day
How I Started My Digital Marketing Career From Scratch
Published: 2024-04-01 18:41:47

After my graduation, I was still confused about which career route to take. I started working as a teacher trainer for different campuses of a school and discovered my love for public speaking. Over time, I became the social media manager for the school campuses, which piqued my curiosity about digital marketing. I decided to pursue the Google Professional Certificate in Digital Marketing and E-Commerce from Coursera. After obtaining the certificate, I began my digital marketing career from scratch through an internship. I gained experience working with various companies as an intern and later as an SEO and content writer. Now, I have my own website where I provide [digital marketing services](https://areesharizwan.com/), including web design, SEO, SEM, SMM, and marketing. I take pride in excelling in this field and encourage others not to fear the unknown. Stay consistent, work hard, and follow your passion—you’ll get there!
Discord Bot All-In-One
Tags: node, discord, javascript
Published: 2024-04-01 18:41:33

Yo guys, i am Loreeh, a Java, JS and Python Developer.

I decided to make a public repository with a premade discord bot with a lot of commands, so if you want to try it here is the link: https://github.com/Loreehh/discord-bot-allinone

If you fibd any bugs/Errors please report that in the issues section in Github❤️
Does limiting state matter on the FrontEnd?
Tags: frontend, state, webdev, career
Published: 2024-04-01 18:27:36

Hi all, I have a statement I just published that I'd like the communities take on.

For background, I've been a frontend and backend engineer over the years, and have noticed that there are nuances in each domain worth considering.

It has been common to encounter companies with more leadership from their backend engineers, and I question how much of the usual best-practices have been shaped without enough front end domain consideration.

here is the statement, what do you think?

> The Case for Variables on Elements
>
> It's a good idea to keep state in as few places as possible right?
>
> Not always... locality is the best chance a user-interface has for making sense during development. 
>
> This is not a casual idea, it's because immutability is a loosing battle when there are a lot of user events involved. 
>
> Localized ownership of internal state is a more scalable solution, and it leads to a "what you see is what you get" authoring process, which is more discussable, and thereby maintainable.

https://templang.org
WebRTC in Just One Byte
Tags: frontendchallenge, devchallenge, javascript, beginners
Published: 2024-04-01 18:20:13

This is a submission for DEV Challenge v24.03.20, One Byte Explainer: Browser API or Feature.

**Explainer**


WebRTC is a web technology that allows browsers to communicate directly with each other in real-time, enabling features like video chat and file sharing without needing plugins or external software. It provides APIs for developers to easily integrate these capabilities into their web applications.

**Additional Context**


Check out these links for a deeper explanation - https://webrtc.org/

https://www.techtarget.com/searchunifiedcommunications/definition/WebRTC-Web-Real-Time-Communications#:~:text=WebRTC%20provides%20software%20developers%20with,%2D%20or%20text%2Dbased%20content.

https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API

https://www.geeksforgeeks.org/introduction-to-webrtc/
Day 10 of #100DaysOfCode | 1-04-2024
Published: 2024-04-01 18:17:13

## What I learned?

I learned the following topics:

- JavaScript Concepts -

1. Getters and setters
2. Lexical Scoping and Closures

## Code snippet/Screenshots/notes

# JavaScript

- getters and setters

```cpp
class User {
    constructor(email, password) {
        this.email = email
        this.password = password
    }

    get email() {
        return `${this._email}`
    }

    set email(value) {
        this._email = value
    }

    get password() {
        return `${this._password}ashish`
    }

    set password(value) {
        this._password = value
    }
}

const Ashish = new User("user@yahoo.com", "password123")
console.log(Ashish.password)
console.log(Ashish.email)
```

- Object getter and setter

```
const User = {
    _email: "user1@gmail.com",
    _password: "password123",

    get email() {
        return this._email
    },

    set email(value) {
        this._email = value
    }
}

console.log(User._password) //Output: password123
console.log(User.email)  //Output: user1@gmail.com
```

## Lexical Scoping

```jsx
function any() {
  let username = "user1";

  function innerFunction1() {
    let password = "pwd";
    console.log(username); //output: user1
  }

  function innerFunction2() {
    console.log(password); //output: password is not defined
  }

  innerFunction1();
  innerFunction2();
}
any();
// console.log(username) //output: username is not defined
/* child-to-child sharing is not possible  */
/* child have access to parent's properties */
/* parents don't have access to child properties */
```

## Closure
```jsx
function handleClick(value) {

		/*return the whole lexical scope including inner function and outer function*/
		return function () {
			document.body.style.backgroundColor = `${value}`
		}
	}

	document.getElementById('black').onclick = handleClick('black')
	document.getElementById('blue').onclick = handleClick('blue')
```
Kallo- A multi-LLM collaboration tool, where you can try different AI and chat with friends.
Published: 2024-04-01 18:13:19

[Kallo](https://kallo.ai/) is a multi-LLM GenAI tool, where users can not only try different models but they can do so with their friends within the same chat. Outside of the collaborative nature of Kallo, we have an API that others can build atop. If you want to try out different AI models, with a nice UI, or build your next AI app...Kallo is the way to go.
Execute .dmg (Mac) and .exe (Windows) Files Using Terminal
Tags: mac, windows, dmg, exe
Published: 2024-04-01 18:07:14


### How to Execute `.dmg` (Mac) and `.exe` (Windows) Files Using Terminal

In this guide, we'll explore how to execute `.dmg` files on macOS and `.exe` files on Windows using the terminal. While GUI (Graphical User Interface) installations are common, sometimes you might need to use the terminal for various reasons like automation or remote access.

#### Executing `.dmg` Files on macOS

`.dmg` files are disk image files commonly used for software distribution on macOS. Here's how you can mount and execute a `.dmg` file using the terminal:

1. **Open Terminal**: You can find Terminal in the Applications > Utilities folder, or use Spotlight Search (`Cmd + Space` then type "Terminal").

2. **Navigate to the `.dmg` File**: Use the `cd` command to navigate to the directory containing your `.dmg` file. For example, if your file is on the desktop:

   ```sh
   cd ~/Desktop
   ```

3. **Mount the `.dmg` File**: Use the `hdiutil` command to mount the disk image. Replace `YourApp.dmg` with the name of your `.dmg` file:

   ```sh
   hdiutil mount YourApp.dmg
   ```

   This command mounts the `.dmg` file as a disk volume.

4. **Install the Application**: Once mounted, you can typically find the application icon in the new Finder window that appears. Drag the application to your Applications folder to install it.

5. **Eject the Disk Image**: After installation, you can eject the disk image:

   ```sh
   hdiutil eject /Volumes/YourApp
   ```

   Replace `YourApp` with the name of the mounted volume.

#### Executing `.exe` Files on Windows

`.exe` files are executable files commonly used on Windows. Here's how you can execute an `.exe` file using the Command Prompt:

1. **Open Command Prompt**: Press `Win + R`, type `cmd`, and press Enter to open the Command Prompt.

2. **Navigate to the Folder**: Use the `cd` command to navigate to the directory containing your `.exe` file. For example, if your file is on the desktop:

   ```cmd
   cd Desktop
   ```

3. **Run the `.exe` File**: Type the name of the `.exe` file to run it. For example:

   ```cmd
   YourApp.exe
   ```

   Replace `YourApp.exe` with the name of your `.exe` file.

4. **Follow Installation Prompts**: Depending on the application, you might see installation prompts. Follow the on-screen instructions to complete the installation.

That's it! You've successfully executed `.dmg` and `.exe` files using the terminal.