teleren/devto huggingface dataset:
Day 982 : Last Nite
Tags: hiphop, code, coding, lifelongdev
Published: 2024-07-02 00:12:10

_liner notes_:
- Saturday : Went to the station and did the radio show. Had a pretty chill day. The recording of this week's show is at https://kNOwBETTERHIPHOP.com

![Radio show episode image of a scene from &quot;Do The Right Thing&quot; with a person holding up their fists to the camera to show their finger rings that spell out Love Hate with the words June 29th 2024 Eyes on the Ball](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c8ss44fk7xisslwe50ds.jpg)

- Sunday : Did my study sessions. Didn't do a lot of coding, but I got some other things done like paying my bills for the upcoming month. Another pretty chill day. Ended the night watching an episode of "Demon Slayer".

- Professional : Had a meeting to start the day, then another like an hour later. Went over the content review of my blog post and spoke with the reviewer. Not a lot things were changed which was pretty good. Replied to some community questions. Fixed a couple of small typos I found in a couple of tutorials that I did so I fixed those. I forgot to capitalize a letter in a variable name. Started a quick project to test a new feature. Spoke with the team about a refactor of an older application to make sure everyone was on the same page. Pretty productive day to start off the week.

- Personal : So, I've been playing around with this logo. I think I finally got how I want it to look. I just need to finalize it and export it so I can add it to my site.

![An aerial view of a rocky shoreline, with turquoise ocean water lapping at the shore. The rocks are white and jagged, and there is a small patch of green grass at the top of the cliff. The image is taken from a high angle, so the ocean appears vast. Location: Zarautz, Spain](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9vnxdecmhevgy081m13k.jpg)

Whew, I was pretty tired after work and took a nap while trying to write up this blog. Going to work on this logo and map out how I want the layout for the front end of this other side project to look so I can start working on it. That backend is pretty much done. I just need to update some things and make sure it works. Looking to repeat last nite and watch an episode of "Demon Slayer".

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube kugXpZjI5RM %}
New Learning Journal
Published: 2024-07-01 23:28:22

# App Dev

- System software manages physical hardware on computer and runs on top aka operating system
- Utility software like system clock, file manager, clipboard are tools provided by the operating system to software developers who then build
- Application software is software that people use directly
- App - application software
- Learning how to build cloud-based software - SaaS
- URL - Uniform Resource Locator

# Elevator Speech
- Part 1 - Who you are: Hey. My name is Victor and I am a recent graduate from the University of Illinois with a major in mathematics and a minor in computer science, and I am seeking a position where I can utilize my analytical and development skills. 
- Part 2 - Highlight reel: Most recently I strengthened these skills when I was an IT Specialist at the Bureau of Land Management where I enhanced file organization and retrieval by developing their hub website, maintaining an attractive user interface, and facilitating the transition from local to cloud storage. Also, I have experience in software engineering, including virtual reality, mobile app and web development. 
- Part 3 - Your company’s projects resonate with my interests and skills. I’m eager to bring my strong analytical abilities and enthusiasm for tech to your team. This apprenticeship is an opportunity for me to grow and develop in a dynamic environment. My hands-on experience with complex projects, combined with my ability to quickly adapt and learn new technologies, makes me a strong fit for this role. I’m excited to learn more about how I can support your organization and further my career in tech.
New Learning Journal
Published: 2024-07-01 23:28:22

# App Dev

- System software manages physical hardware on computer and runs on top aka operating system
- Utility software like system clock, file manager, clipboard are tools provided by the operating system to software developers who then build
- Application software is software that people use directly
- App - application software
- Learning how to build cloud-based software - SaaS
- URL - Uniform Resource Locator
Rugpull Identification and Prevention
Published: 2024-07-01 22:51:16

🔐 The 4th edition of the #Web3SecurityPracticalGuide by TinTinLand in collaboration with @sharkteamorg is here!
🚀 The Web3 Security Practices seminar is held twice a month, inviting you to delve into the underlying principles and latest trends of Web3 security. 

📅 Date: July 3, Wednesday｜20:00 UTC+8
📍 Tencent Meeting:[https://meeting.tencent.com/dm/ehpaeeWjDDEX](https://meeting.tencent.com/dm/ehpaeeWjDDEX)
Follow:[https://x.com/OurTinTinLand](https://x.com/OurTinTinLand)

📌 Topic: #Rugpull Identification and Prevention
👥 Guest: 
Adam |Co-founder of @sharkteamorg
🕵️ Outline:
🔸Typical Rugpull event classification, feature analysis, and case sharing
🔸Analysis of the black production chain of Rugpull factories
🔸Rugpull identification and prevention suggestions
🛡️ Scan the QR code to join our Security Learning Community. Enhance your awareness and stay updated with the latest security trends!
Demystifying Frontend: A Dive into ReactJS vs. Svelte
Tags: webdev, javascript, beginners
Published: 2024-07-01 22:48:17

Hey everyone! I'm thrilled to be joining the HNG Internship program https://hng.tech/, and I'm especially excited to delve into the world of frontend development using ReactJS. As someone new to the field, I recently came across Svelte, another interesting framework, and it got me curious about the differences between the two. So, I decided to explore them both and share my findings!

**The Showdown: ReactJS vs. Svelte**

Let's break down these two popular frontend technologies:

**ReactJS**: You might already be familiar with React, a powerful JavaScript library for building user interfaces. It uses components, which are reusable building blocks that encapsulate data and functionality. React also employs a virtual DOM, a lightweight representation of the real DOM, to efficiently update the UI when changes occur. 

React boasts a massive community, tons of learning resources, and a strong ecosystem of tools and libraries.  However, it can have a steeper learning curve due to its structure and might feel a bit verbose for smaller projects.

**Svelte**: This is a newer challenger in the frontend framework arena. Unlike React, Svelte takes a unique approach. It compiles code during build time, eliminating the need for a virtual DOM. This can lead to improved performance and smaller bundle sizes. Svelte also features a simpler syntax compared to React, making it easier to learn. 

However, Svelte's community and resources are still growing compared to React's established presence. Additionally, its rapid evolution might not be ideal for all projects.

**Why ReactJS at HNG?**

While both ReactJS and Svelte are great tools, there are strong reasons why HNG focuses on React:

**Learning Advantage**: HNG's curriculum with ReactJS provides a solid foundation for frontend development. The vast React community ensures easy access to help and resources whenever you get stuck.
**Career Opportunities:** Learning React opens doors to a wide range of job opportunities in the tech industry.  Many companies heavily rely on React for their frontend development, so mastering it will put you ahead of the curve.

**Conclusion**

ReactJS and Svelte both offer excellent features for building user interfaces, but they cater to different preferences. ReactJS provides a comprehensive framework with a strong support system, while Svelte offers a more streamlined approach with potential performance benefits.

I'm incredibly enthusiastic about learning ReactJS at HNG [https://hng.tech/internship] and can't wait to build amazing projects with this powerful library. While I'm focusing on React now, I'm definitely keeping an eye on Svelte's future developments! 

Who knows, maybe I'll explore both in the future and share my learnings with you all.  Feel free to share your experiences with frontend development in the comments below!
Ng-News 24/25: DomRef, TypeScript 5.5, Business/Render effect, State of JavaScript
Tags: webdev, javascript, angular, programming
Published: 2024-07-01 22:37:46

The days of ElementRef might be numbered. State of JavaScript revealed its results. TypeScript 5.5 brings inferred type predicates, a conceptional split into business, and rendering effects is on the table.

{% embed https://youtu.be/mpHzSkA-J2U %}

## RFC: DOM Interaction

In a new RFC, the Angular team proposes replacing the ElementRef type with a new one: DomRef. ElementRef encapsulates the native DOM Element. Especially UI libraries, which require direct access to the DOM, heavily depend on it.

According to Jeremy Elbourn, the switch is necessary to achieve advanced hydration techniques like streaming or partial hydration.

The community received the RFC with certain reservations.

https://github.com/angular/angular/discussions/56498

## State of JavaScript 2023

State of JavaScript, a survey with around 24,000 participants, released its results. In terms of usage, Vue took over Angular's second place. In the category of interest, Angular rose from 20% to 23%.

{% embed https://2023.stateofjs.com/en-US/ %}

## TypeScript 5.5

TypeScript 5.5 was released, and it will be available in Angular 18.1.

We will get inferred type predicates. A function checking against a certain type and returning a boolean based on that is now automatically defined as a type predicate. That means whenever you use that function on a union type, TypeScript will reduce the amount of that union type according to your function.

Other new features are better checks for regular expressions and better type support whenever you access an object literal dynamically.

{% embed https://devblogs.microsoft.com/typescript/announcing-typescript-5-5 %}

## Business and Rendering Effects

When using effects, we usually want to control the Signals that the effect function tracks. In application development, it would make sense to define those Signals explicitly.

Alex Rickabaugh, Angular framework lead, explained on GitHub that the effect was designed for Rendering Effects, where implicit tracking is necessary. Explicit tracking would be a good fit for Business Effects.

Currently, the effect is not ready to support this in Angular Core.

https://github.com/angular/angular/issues/56155#issuecomment-2177202036
Ng-News 24/24: Vertical Architectures, WebAssembly, Angular v9's Secret, NgRx
Tags: webdev, javascript, angular, programming
Published: 2024-07-01 22:33:31

Brandon Roberts unveiled why Angular 9 has the highest download rates. Manfred Steyer gave a talk about vertical architectures. Evgeniy Tuboltsev published a guide on how to integrate WebAssembly into Angular, and NgRx 18 was released.

## Vertical Architectures

At the Angular Community Meetup,  Manfred Steyer presented an upgraded version of his talk about DDD in Angular.

He mentioned the team topologies model, where we have four different types of teams responsible for different tasks:

1. Platform services team
2. Specialization team
3. Supportive teams
4. Value stream team

{% embed https://www.youtube.com/watch?v=AEMMyvFkx4c %}

## NgRx 18

NgRx, the most popular state management library in Angular, was released in v18 making it compatible to Angular 18.

Be careful, if you want to use the Signal Store. It **will** become stable later and it is not released yet.

To use it in Angular 18, run `npm i @ngrx/signals@next` or use the schematic (also with the `next` tag).

{% embed https://dev.to/ngrx/announcing-ngrx-18-ngrx-signals-is-almost-stable-eslint-v9-support-new-logo-and-redesign-workshops-and-more-17n2 %}

## The secret behind Angular 9

At the moment, Angular is downloaded around 3.5 million times per week, making it the third most downloaded framework after React and Vue.

Around 450,000 downloads come from Angular 9. Given that the current version is 18, that's a little bit strange.

Brandon Roberts discovered that Angular 9 is a dependency of codelzyer. Codelzyer is a library we used before typescript ESLint came out.

It is very likely that Codelyzer is part of many applications, although it is not actively used, and developers should remove it.

According to the statistics, Codelzyer has a current download number of 600,000.

Without Codelzyer, Angular's download numbers would/will drop by 17%.

{% embed https://www.youtube.com/watch?v=fQGDZzrIPRg %}

## WebAssembly & Angular

WebAssembly allows to run application in browser, which have been written in other languages than Javascript. In addition, the execution speed is almost like native code.

Evgeniy Tuboltsev wrote an article where he shows you how to port an application written in Rust to WebAssembly and consume it in Angular. As for the comparison his example runs three faster than the JavaScript counterpart.

{% embed https://medium.com/@eugeniyoz/powering-angular-with-rust-wasm-0eed1668a51c %}
[Game of Purpose] Day 44
Tags: gamedev
Published: 2024-07-01 22:29:03

Today I fixed a problem with camera. The tutorial I took mouse control from was using camera rotation. Whereas the default Third Person project uses `Yaw Input` and `Pitch Input`.

Before:
![before](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/21bjn75b7zquouwlqfkd.png)



Now:
![now](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/te0xuzihiju89ttgp7bw.png)
Git Branch default Naming: main vs master
Tags: github, git, 100daysofcode, branch
Published: 2024-07-01 22:07:53

Since October 1, 2020, GitHub has set the default branch to "main" for new repositories, while many existing repositories still use "master". This change is part of an effort to use more inclusive language and avoid terms with negative historical connotations, opting for a more neutral term. "Main" is considered a better choice because it is short, easy to remember, and translates well across languages.

On the other hand, Git, the underlying version control system, is an open-source project maintained by a diverse community. Changes in Git require consensus from contributors and users to ensure broad agreement and compatibility across various workflows and tools. As of now, the default branch name in Git remains "master" because changing it involves a complex and slower process compared to a single platform like GitHub. While discussions about changing the default branch name in Git have occurred, reaching a consensus in open-source projects takes time.

As a result, many organizations and individuals have chosen to rename the default branch from "master" to "main" or some other neutral term. This change is not a requirement, but rather a choice made by individual users or organizations based on their values and preferences.

Upon investigating, I learned the previous exposure above and this experience highlighted the importance of staying informed about industry updates and platform-specific changes. It also underscored broader discussions in the tech community regarding terminology and inclusivity in software development practices.

Moving forward, adjusting to GitHub's default settings improved my project integration and enhanced my understanding of Git workflows. If you encountered similar challenges with Git, I will detail what I did to resolve the issue:

1. I renamed the local branch via the following line command: 
  **git branch -m master main**

2. I pushed the renamed branch to the remote repository: 
  **git push -u origin main**

3. In addiction, and because after the version git 2.28 we can set a global config with the default branch name allowing now and whenever we create a new git local repo using any default branch name, I run the following line command: 
  **git config --global init.defaultBranch main**

Here you go. From now on, the branch names in the local and remote repository will be the same, preventing push and pull going to a different repository than expected.
🗣️🦾📲🤓 RTFM : ask AI agent to learn how to send sms w. open-interpreter
Tags: nocode, ai, showdev, tutorial
Published: 2024-07-01 22:07:14

## 💭 About

How many times did someone ask you : 

> _"How do you..."_

... and how many times did you make the [RTFM (Read the Fucking Manual)](https://en.wikipedia.org/wiki/RTFM) joke ?

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

👉 Well that's all this blog post is all about, we're going to:

1. **🎁 Provide a `cli` tool that behaves like all other tools** to an AI assistant
2. **🦥 Ask it to learn by himself** how to use it
3. **🚀 Make it do the job** ... locally !

To achieve this we will use : 

- **🤖 A core `LLM` engine** : `gpt-4`
- **💻 A locally running assistant** that is able to create an action plan to achieve a goal : [Open Interpreter](https://www.openinterpreter.com/)

## 🎯 What we'll do

This time, thanks to a custom tool I created last week-end : 

{% embed https://dev.to/adriens/mobitag-go-hackathon-2024-06-22-week-end-2n16 %}

and ask the **AI Assistant to discover the tool and send a custom sms** with a custom content to myself with it.

## 🧑‍🏫 Teach him how to use the tool

{% youtube 9BTJ2sCbTbg %}

## 🤣 Funniest `sms`

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

## 🔭 Perspectives

The same way we used the `--help` pattern for `cli` tool, we can use the [OpenAPI](https://swagger.io/specification/) to tell an AI how to use an API as a tool.
But keep in mind : the better the documentation, the easier and better integration will be... at almost 0 effort (which is our target to scale automation).

Below some examples of how to achieve this on various frameworks & services :

## 🤓 For coders : 

- [🦙 LlamaIndex](https://www.llamaindex.ai/) : [OpenAPI Tool](https://llamahub.ai/l/tools/llama-index-tools-openapi?from=all)
- [🦜 Langchain](https://www.langchain.com/) : [OpenAPI tool](https://python.langchain.com/v0.2/docs/integrations/toolkits/openapi/)

## ⏱️ `< 5'` demo : build & deploy conversational agents (non-coders)

Least but not last, for non coders [Google Vertex AI Agent Builder](https://cloud.google.com/dialogflow/vertex/docs/concept/tools) to **build and deploy Agents ... within 5 minutes** : 

[![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/chc4hgfc9ujkzzsvcmjk.png)](https://youtu.be/0QbUYfTRJEY?si=lVbF-8ssL_8zq6ZF&t=547)
How to recover your cryptocurrency lost to investment scam
Published: 2024-07-01 22:00:44

I was impatient to carry out the necessary research but I wanted to jump on the crypto trading and investment buzz. Unfortunately for me, I invested 84,700 GBP worth of bitcoin with a fraudulent trading platform, I was happy to watch my account grow to 123,575 GBP within a couple of weeks. But I didn't realize I was dealing with a scam trading platform until I tried to make a withdrawal. I made a withdrawal request and noticed my account was suddenly blocked for no apparent reason. I tried contacting customer support but to no avail. I needed my money back at all costs because I couldn't afford to let it go. So I tried all possible means to make sure I recovered my scammed Bitcoin. I did a lot of online searching for help and tried to see if other people had any similar experiences. I stumbled upon a cryptocurrency forum where a couple of people mentioned that they had been through the same process but were able to recover their lost cryptography funds with the help of INFINITE DIGITAL RECOVERY. So I filed a report to their email on infinitedigitalrecovery@proton.me and they were able to help me get back all my lost funds within a couple of hours without any upfront payment, I feel indebted to them. Apart from trying to express my gratitude to them once again using this medium, I will recommend anybody who wants to recover scammed bitcoin, stolen cryptocurrency, funds lost to binary options forex, investment, frozen wallet, and any other form of online scam to reach out to INFINITE DIGITAL RECOVERY now.
EMAIL: infinitedigitalrecovery@proton.me
TELEGRAM: +15625539611
Abstract & Interface in C#
Tags: csharp, beginners, learning
Published: 2024-07-01 21:48:01

**Note**: We will use a famous example, an Animal, for the whole article
### What is Abstract?
Abstract class provide a base define for something (Ex: Base class for Dog and Bird is Animal). It present for Polymorphism in OOP. An abstract class is declared using the `abstract` keyword. It can contain both abstract methods (without implementations) and non-abstract methods (with implementations). Take a look at example below

We define abstract class `Animal` with the following detail:
- Properties: name
- Abstract methods: MoveBy
- Non-abstract methods: Print

![abstract](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k2wuooamxyc1192isway.png)
Next, we will create two classes `Dog` and `Bird` which implement `Animal`. After that, we initialize them

![dog abstract](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vs4a7ni2rgx0tyki4nhs.png)

![bird abstract](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8gsmxvw2glja03rvivpp.png)

![main abstract](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b0rtpmu05m9c7oyptg51.png)

Now we can get some point in here:
- Every `Dog` and `Bird` have the name (1)
- But `Dog` move by leg and `Bird` move by wing (maybe by leg also but assume it) (2)

With (1), we can declare `Print` method in `Animal` with non-abstract type to use for `Dog` and `Bird` 

With (2), the `MoveBy` method must be abstract and it would be declared in each class later. This is the key point to show difference between abstract and non-abstract method.

Summary,
- `Abstract` class provide a base definition (Ex: Animal)
- `Abstract` method provide base method which execute differently for each class implement (Ex: MoveBy)
- `Non-abstract method` are usually use as a common method for all class implementation (Ex: Print)

### What is Interface?
For short, an `interface` is a completely “abstract class” that defines a contract for related functionalities. When we sign a contract, we must provide/do everything defined in a contract, like `A` must give `B` 100k$ and don't need to know `A` give cash or transfer - that is the `Abstraction` in OOP. Take a look at the example below

We define interface class `IAction` with the following detail:
- Move
- Talk

![interface](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ohft99k2elf6qlehfewk.png)
Next, we will extend two classes `Dog` and `Bird`, which have been implement `Animal`, with `IAction`.

![Dog interface](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qu8a1y2siuvhjxazwxg4.png)


![Bird interface](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z1dp17jna44l5vfulp24.png)

![Main interface](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4bkuaa0m175faijktkp3.png)
We can see in `IAction`, we have two methods with abstract types that execute differently in each class.

Summary, 
- `Interface` define a contract or set of rules that classes must adhere to.
- `Interface` class contains only abstract method, not fields