teleren/devto huggingface dataset:
Khổng Minh Hiếu
Tags: webdev, khongminhhieu, minhhieu
Published: 2024-02-29 04:43:22

Khổng Minh Hiếu (sinh 13 tháng 2, 2007) hay còn được biết đến với nghệ danh ca sĩ kiêm nhạc sĩ, nghệ sĩ âm nhạc người Việt Nam.

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

**Tiểu Sử:**
**_Khổng Minh Hiếu_** sinh ra trong một gia đình không có ai làm nghệ thuật. Tuy nhiên ngay từ nhỏ, anh đã bộc lộ niềm yêu thích đặc biệt với âm nhạc.Chàng trai 2x **_Khổng Minh Hiếu_** nổi tiếng trên mạng nhờ hát hay, đàn giỏi. Anh đã từng được bố mẹ cho đi học đàn guitar từ năm lớp 9 từ một người anh và cũng là một người thầy dạy đàn guitar. Trước khi theo đuổi đam mê âm nhạc, anh đã chọn học ngành học công nghệ thông tin tại trường FPT, nhưng anh đã nhận thấy rằng đam mê của mình là âm nhạc nên anh đã bắt đầu theo đuổi con đường âm nhạc chuyên nghiệp.Nhạc sĩ Khổng Minh Hiếu 10x nỗ lực hết mình theo đuổi đam mê, được nhiều người ngưỡng mộ với đam mê âm nhạc, sở hữu lượt theo dõi khủng.

**_Sự nghiệp âm nhạc:_**
Anh bắt đầu sự nghiệp âm nhạc bằng các bản cover của các ca sĩ nổi tiếng. Ban đầu, những bản cover của anh không được đánh giá cao và nhận phản hồi tiêu cực từ cộng đồng mạng. Tuy nhiên, anh không từ bỏ mà liên tục cố gắng cải thiện âm thanh và chất lượng của các bản cover. Anh đã đầu tư vào trang thiết bị âm thanh chất lượng và rèn luyện kỹ năng của mình để trở nên chuyên nghiệp hơn. Với các bản cover được nhiều khán giả yêu thích như “Gấu ở đâu khi gió đông về”, “Mãi mãi bên nhau”, “Anh xấu xí chứ không xấu xa”… Giọng ca của anh đã chiếm được cảm tình của cư dân mạng‏. Tính đến nay, những bản cover của anh đã đạt hơn hàng ngàn lượt xem trên YouTube và trang Facebook cá nhân của anh đã thu hút hơn 100 ngàn người theo dõi, cũng như hàng ngàn lượt theo dõi khác trên các trang mạng xã hội.
Mình bắt đầu tiếp xúc với các loại nhạc cụ từ những năm cấp 2. Lúc đó, bàn tay non nớt của mình không ít lần bị trầy xước, chảy máu trong lúc tập luyện. Thời gian đầu mình đã rất khó khăn trong việc cảm âm nên mất rất nhiều thời gian mới có thể đánh được một bài nhạc hoàn chỉnh. Có lúc tưởng chừng như muốn bỏ cuộc nhưng niềm yêu thích ca hát cộng với sự động viên rất lớn từ bố mẹ và người anh dạy đàn đã giúp mình vững tin và không bỏ cuộc.
Ngoài giọng hát của mình, anh còn chơi nhiều loại nhạc cụ như: Guitar, Piano và Ukulele. Bên cạnh dòng nhạc sở trường của mình là Ballad, anh còn thể hiện được tốt ở dòng nhạc Rap/Hip hop.

**_Liên kết cá nhân:_**
[**Facebook:** Khổng Minh Hiếu](https://www.facebook.com/hieu206.meta)
Creating animated product videos is fun and cost effective if you do it yourself
Published: 2024-02-29 04:41:00

After the launch of our very first product, a Project Management Web App, we wanted to create some animated videos to socialize some of the functionality in a fun way. So, we explored a few outsourcing options as creating software is our skill, not so much creating animated content.

As it turned out, we were quoted about $500 apiece and we were allowed up to 2 edits (tops) as feedback. That seemed rather limiting to us besides the fact that it was quite expensive as well. We intended to create a number of such videos so at $500 a pop, it was going to turn out to be very expensive.

Given all that, we decided to do what we do best — do things ourselves!

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

Now, agreed, this is not the most spectacular animated product video you may have seen but also it didn’t cost us $500 to make it. It was fun, didn’t take a lot of time, cost us very little, and most importantly, it provided us the luxury of creating more such videos.

> What’s the takeaway from this?

Well, it is simply that you take what you have, and do what you can with what you know (or can learn). That’s the best way to do self sufficient as a startup.
Intro to React
Tags: react, beginners
Published: 2024-02-29 04:34:44

Now that we have learned the fundamentals of javascript, it's time to learn how to rewrite our code in React. The basics of React is that what we would call a function is now called a component. Components names are capitalized. In React, we write code a lot simpler and create our elements from html all in react. With our components, when we hear the term render or rendering. It usually refers to us returning some code. Below, we have an example of what the difference of vanilla javascript and React is
Javascript -
function basicOf(){
const tool = document.createElement('div')
}
React
function BasicOf(){
return(
  <div>My code.</div>
}

You can see that in React. You can use the div tag as if it was an html file.
Reduce your LLM costs by 10x using semantic caching
Tags: ai, llm, openai, showdev
Published: 2024-02-29 04:10:58

> **Checkout [UltraAI.app](https://ultraai.app) — AI command center for your product.**
> _Semantic caching, model fallbacks, rate limiting user, logging & analytics, A/B testing — all in one place, in minutes._

---

## What's semantic caching?

Semantic caching in large language models (LLMs) is a technique that stores the meaning of a query or request, rather than just the raw data, to reduce the number of queries a server needs to process. It works by recalling previous queries and their results based on their meaning.

## Why not regular caching?

![Difference between regular and semantic caching](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uzzsv2ppm4k5xsr37cb1.png)

Using an exact match approach for LLM caches is less effective due to the complexity and variability of LLM queries, resulting in a low cache hit rate.

Semantic caching significantly reduce server load, shorten data retrieval time, lower API call expenses, and improve scalability

## How does it work?

When a new query is received, the system searches for a similar meaning in the cache and returns the stored result if it finds a match, thus reducing the need for processing the new query. This approach can be particularly useful for complex queries involving multiple tables or data sources.

By using vector embeddings and advanced text manipulation, semantic caching can identify the core query and provide the answer in a fraction of the initial time, thus enhancing the efficiency of LLMs.

---

Overall, semantic caching in LLMs is a powerful tool that can enhance the efficiency of servers and application user experiences by storing query and request meaning, decreasing the number of queries that need to be processed, and allowing results to be served quickly and accurately.
Rust Daily Challenge Day-1
Tags: rust, tutorial, beginners, programming
Published: 2024-02-29 04:08:16

Today, we will focus on creating a Rust function called `greet_user` that takes a user's name as a parameter, reads input from the terminal, and prints a personalized greeting message.

In Rust, a function is defined using the `fn` keyword followed by the function name, parameters, return type (if any), and the function body enclosed in curly braces `{}`. Let's break down the structure of the `greet_user` function:


![greet_user function](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jwakn3q187iximmopu89.png)

Here
`fn`: Keyword indicating the start of a function definition.

`greet_user`: Name of the function.

`(name :&str)`: Parameter list enclosed in parentheses **`()`**

`name`: Name of the parameter.
`&str`: Type of the parameter, indicating a string slice.

![main function body](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ltr7e98eob8e6wpxp8gi.png)

The main function is the entry point of a Rust program.It contains the code that will be executed when the program is run.

`println!("Enter the name ");`: Prints a message asking the user to enter a name.
`let mut userName = String::new();`: Declares a mutable variable userName of type String to store the user's input.
`std::io::stdin().read_line(&mut userName).expect("Something error happened");` - 
  
- Reads a line from the standard input (keyboard) and stores it in the `userName` variable.

- `&mut userName` passes a mutable reference to userName to allow the read_line function to modify its contents.

- `expect("Something error happened");` handles any potential errors that may occur during the input operation.

`greet_user(&userName);`: Calls the greet_user function with a reference to the userName variable as an argument.

Passing a reference (`&`) to `userName` allows `greet_user` to access the value without taking ownership of it.

Now when we run this code the output will be 

![output 1 without trim](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0oencym5bm3d15xi2o4o.png)

To avoid the problem of newline character causing the ouput template string to be in newline after the template word , we need to trim out the user input 

so for that the code should be modified like wise

![code using the trim](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/44isuhfmo4e5kc7xiyx4.png)

Here the user input is trimmed before passing it to `greet_user`, any leading or trailing whitespace will be removed.

The `to_string()` method is used to convert a string slice (`&str`) to an owned `String`.This conversion is necessary because greet_user expects a `&str` parameter, and `to_string()` creates a new `String `instance from the trimmed input

Now the final output will look like


![Final output](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tv9sx72sbl0x4wywa6wd.png)

so that's all for this challenge , Thank You

For a more detailed explanation, you can watch my YouTube video.
{% embed https://youtu.be/ewyU7QkjMdI %}

GitHub - [Link](https://github.com/JoelJaison394/RustDailyChallenge.git)
Enhance your python code security using bandit
Tags: webdev, python, security, tutorial
Published: 2024-02-29 03:11:38

In the constantly evolving realm of technology, ensuring the security of your code is also an important part of software development.

Here, I am using Bandit, a tool designed to find common security issues in Python code, to improve my project's security.

## Severity vs Confidence
In the context of Information Security, severity and confidence are two important metrics. Both of them are leveled into Low, Medium and High.

**Severity**, it measures the seriousness of the consequences that may arise if the security issue is exploited or left unaddressed.

**Confidence**, it reflects how well the information is validated, verified, or understood.

## Call to action
The result of a Bandit scan is a detailed report that outlines potential security issues in the code. This report includes the severity and confidence of each issue, as well as the part of the code where the issue was detected. The report can be 
output in several formats, including CSV, HTML, JSON, text, XML, and YAML. This allows developers to easily parse and analyze the results and take appropriate action to improve the security of their code.


![Bandit scanning result](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5u2qddo1hlfrjf3dtiwu.png)

The following are some simple judgment criteria after scan.

- **High Severity, High Confidence**: Immediate action is typically taken due to a well-understood and verified security threat with potentially severe consequences.

- **High Severity, Low Confidence**: Caution is exercised, and further investigation is needed to increase confidence in the assessment before taking decisive action.

- **Low Severity, High Confidence**: Proactive measures may be taken even for low-severity issues if there is high confidence in the assessment.

- **Low Severity, Low Confidence**: Ongoing monitoring and investigation are required to either confirm the low risk or gather additional information.

## Setup
With `pre-commit` you can integrate bandit into your python project very easily
1. pyproject.toml: skip folders you don't want to be scanned
```toml
[tool.bandit]
exclude_dirs = [
    ".venv",
    ".git",
    "__pycache__",
]

```
2 .pre-commit-config.yml: add pre-commit hook
```yaml
repos:
  - repo: https://github.com/PyCQA/bandit
    rev: 1.7.7
    hooks:
      - id: bandit
        args: ["-c", "pyproject.toml", "-r", "."]
        additional_dependencies: ["bandit[toml]"]
```

That is.
RMI (Remote Method Invocation)
Tags: java, j2ee
Published: 2024-02-29 03:11:32

RMI (Remote Method Invocation) is an API provided by J2EE platform that defines methods for applications in different systems (JVM in running) to communicate by invocating a method. It defines methods to communicate with different applications in distributed system environment.
RMI provides two objects, each called **stub** and **skeleton**. Both stub and skeleton are for building connection. A stub is the object for client-side application and a skeleton is for server-side application.
Once the client invokes a method of stub object, then the stub processes the following tasks.
- Build a connection to the remote machine (JVM).
- Route to the server.
- Convert the parameter data of the remote method to call into a serialized data suitable for transmission (Marshaling).
- Wait for result from the remote method.
- Read the result or exception (Unmarshalling).
- Return the result to the caller.

Once the server receives the signal, then the skeleton process the following tasks.
- Unmarshall parameters.
- Invoke the method providing the parameters.
- Get the return from the method called and marshal it.
- Send.

Distributed applications should perform the following process:
- Locating remote method
- Providing communication with the remote object.
- Load class definition the method belongs to.
Embracing Uncertainty as an Opportunity for Growth
Tags: webdev, career, community
Published: 2024-02-29 02:56:24

After a surprise layoff, I embraced uncertainty as an opportunity for growth and self-discovery. Those 3 years at my former company helped me develop my skills and learn new technologies, shaping the developer I am today. But the layoff also forced me to rethink my goals and chart a new course for my career.

I still remember how I felt during my last two weeks at the company: nostalgic for the great team I'd be leaving behind and scared to be unemployed, but a little excited for the opportunities ahead. When I finally left my job, I decided not to start looking right away for two reasons: first, I wanted to improve my online brand, and second, I had a trip to Buenos Aires coming up. I think that trip was an eye-opening experience for me because it helped me put a lot of things that were going through my head at the time into perspective.

When I got back, I started looking for new job opportunities, but I realized that I had put some personal projects and goals on the back burner, so I took action and that's how I got to where I am today:

✅ Reflecting on myself, I've embarked on a journey of personal growth by changing some habits and also adopting new ones.
✅ I'm currently working on my personal website, which I started developing 4 years ago but never published, and I'm using it to improve my skills even more while acquiring new ones.
✅ As part of my journey as a university lecturer, with a group of friends and colleagues, I'm structuring a complete web development course to help students or people with basic knowledge to pursue a career in this field.
✅ Two weeks ago I started a research training course to improve my skills as a research mentor.
✅ Last week, I received an official invitation from the research department of the university where I work to write a scientific article for the university's scientific journal, and it makes me so excited to be published in the near future.

And that's the message I want to give you with this post: everything happens for a reason and you can get good things out of situations that might seem bad at first, that being unemployed isn't all bad, because you can use this time to reflect on yourself and explore new perspectives that you wouldn't have thought possible otherwise. Likewise, you need to understand that while it's good to focus on your job, it's also important to work on your personal projects and goals because it gives you the chance to grow.

I'm actively seeking a new opportunity. However, I'm also cherishing this time of growth. My journey is a testament to the power of turning challenges into opportunities.

Are you facing a similar situation, what strategies do you use to navigate a career transition? Interested in one of my current projects? Share your story in the comments or connect with me on social media! Let's turn these situations into opportunities to #connect 🤝

---

Cover image by [Ian Schneider](https://unsplash.com/es/@goian?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash)
Python Terminal Game Recomendation
Tags: python, beginners, terminal
Published: 2024-02-29 02:38:05

A little bit of background, I am currently taking a course through Code Academy learning how to code in Python and this is my second free-form project. My first project was making the game 2048 in the Python terminal, which I think you should check out, but that's not the point of this point. My challenge today was to create a program to recommend something based on user input. I picked game recommendations because of my interest in that area. One challenge I ran into in this project was logging data.

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

I ended up adding 50 games across 10 categories. Other than that there was nothing complicated about this assignment. I choose to recommend players a new game based on a category or game they already like, as well as if they want a new, old, or random game. This involved light user input and sorting a list of games by the year they were made. If you want to check out the project here is the link!

{% embed https://github.com/SamZombie/GameRecomendation %}
suachuaclickbuy
Tags: beginners, javascript, webdev, python
Published: 2024-02-29 02:03:48

ClickBuyCare - Trung tâm sửa chữa điện thoại uy tín và chất lượng tại TPHCM.  #clickbuy #clickbuycare #clickbuycarecom#suachuaclickbuy #trangchuclickbuycare #reviewclickbuycare Email: suachuaclickbuy@gmail.com  0905524580 377 Hoàng Văn Thụ, P.2, Q.Tân Bình [https://clickbuytips.com/](https://clickbuytips.com/)
هک تلگرام
Published: 2024-02-16 00:33:41

## راهنمای کامل برای مقابله با [هک تلگرام](https://xspy.pro/): استراتژی‌های ایمن‌سازی حساب کاربری

تلگرام، با جامعه کاربری گسترده‌ای متشکل از بیش از 500 میلیون نفر در سرتاسر دنیا، به عنوان یکی از برترین بسترهای پیام‌رسان اجتماعی شناخته می‌شود. امنیت، که همواره یکی از اولویت‌های اصلی کاربران این پلتفرم بوده، گاه به چالش کشیده می‌شود، خصوصاً با شنیده‌شدن خبرهایی از هک شدن حساب‌های کاربری تلگرام. این مقاله با هدف ارائه راهنمای جامع درباره شناسایی روش‌های هک و ارائه استراتژی‌های مقابله با آن نوشته شده است.

### [تکنیک‌های رایج در هک تلگرام](https://xspy.pro/)

- **کلاهبرداری اینترنتی:** مهاجمین از طریق ارسال پیام‌های فریبنده به دنبال به دست آوردن اطلاعات شخصی و کلمات عبور هستند.
- **جاسوس‌افزارها:** این نرم‌افزارها به طور مخفیانه بر روی دستگاه نصب می‌شوند و اطلاعات کاربر را به سارقین اطلاعات منتقل می‌کنند.
- **استفاده از ضعف‌های امنیتی:** برخی هکرها از نقاط ضعف امنیتی تلگرام برای دستیابی به حساب‌های کاربری سوءاستفاده می‌کنند.

### استراتژی‌های ایمن‌سازی حساب تلگرام

- **ایجاد رمز عبور محکم:** استفاده از رمزهای عبور قوی و منحصربفرد برای [افزایش امنیت حساب تلگرام](https://xspy.pro/).
- **فعال‌سازی تایید دو مرحله‌ای:** این ویژگی از دسترسی به حساب شما بدون داشتن کد تایید ارسالی به تلفنتان جلوگیری می‌کند.
- **هوشیاری در برابر پیام‌های فریبنده:** از کلیک بر روی لینک‌های ناشناس و اشتراک‌گذاری اطلاعات شخصی با افراد ناشناخته خودداری کنید.
- **نصب نرم‌افزار [آنتی‌ویروس](https://xspy.pro/):** محافظت از دستگاه در برابر نرم‌افزارهای مخرب و جاسوس‌افزارها.
- **به‌روزرسانی مداوم تلگرام:** استفاده از آخرین نسخه تلگرام برای بهره‌مندی از جدیدترین امکانات امنیتی.

### عملیات پس از هک شدن

- **تغییر فوری رمز عبور:** اولین اقدام پس از مشاهده هرگونه فعالیت مشکوک.
- **ارتباط با پلیس فتا:** گزارش دهید تا اقدامات لازم انجام شود.
- **حفاظت از حساب‌های مرتبط:** مراقبت از حساب‌های دیگری که ممکن است تحت تاثیر قرار گیرند، مانند ایمیل و حساب‌های بانکی.

### منابع اطلاعاتی بیشتر

برای افزایش دانش خود در مورد مقابله با هک تلگرام، می‌توانید از منابع معتبر وب سایت‌هایی مانند جرایم سایبری، دیجیاتو و [makeuseof ](allsafee.com)بهره‌مند شوید، که اطلاعات جامعی در این زمینه ارائه می‌دهند.

با ارتقاء آگاهی عمومی و به‌کارگیری استراتژی‌های ایمن‌سازی، می‌توانیم در برابر تهدیدات سایبری مانند هک تلگرام مقاومت کنیم. همچنین، ضروری است که سرویس‌های آنلاین نظیر تلگرام، امنیت کاربران را به عنوان اولویت اصلی خود قرار دهند و به طور مداوم برای رفع آسیب‌پذ
Angular 17 & .NET 8 JWT Authentication 🔐 Navbar | HomePage Design Part 3
Tags: angular, webdev, jwt, dotnetcore
Published: 2024-02-29 01:55:25

[Angular 17 & .NET 8   JWT Authentication 🔐 Navbar | HomePage Design  Part 3](https://youtu.be/2UMuH-dN7d8)
SyntaxError: Identifier 'e' has already been declared Nextjs
Published: 2024-02-29 00:49:45


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

If you are trying to build a next js code and you keep on facing this error just know that this error is caused by a package you probably installed or imported.

If you search your .next build files for `var e` you would discover that it is declared twice in the code . So check the bot declaration of the e variable and see which dependencies they are connected to . For me it was an injective-sdk dependency.

Note that in some occasion this could be you just declaring the `e` variable twice in you code.
Recover lost bitcoin sent to wrong wallet or scam
Published: 2024-02-29 00:48:29

In the ever-evolving world of cryptocurrencies, losing Bitcoin can be a distressing and very common occurrence. Whether due to human error, technical complications, or cyber attacks, thedisappearance of valuable digital assets can leave people feeling helpless and discouraged. However, an innovative solution has emerged amidst the challenges: A1 wizard  hackes. This article delves into the remarkable story of Bitcoin's loss and the transformative power of A1 wizard hackes in its successful recovery. By exploring the complexities of Bitcoin loss, understanding the innovative recovery process, and sharing a compelling success story, we aim to shed light on the effectiveness of A1 wizard Hackes and restore faith in the security and potential of cryptocurrencies.You can simply send an em-ail or W h a t s a pEm-ail: A1wizardhackes ( @ ) cyberservices . com
W h a t s a p  : + 1 6 7 8 4 3 9 9 7 6 0