teleren/devto huggingface dataset:
An Open letter to a beginner Programmer
Tags: webdev, beginners, javascript, programming
Published: 2023-02-17 10:54:57



As a beginner Programmer, one is usually stuck on which programming language to begin with. There exist several programming languages worldwide, and some are tailored for specific purposes like Kotlin used for mobile app development. However, the question of which language a coding enthusiast should begin with should be more or less of a concern. It all depends on which field one wishes to get to. Computer science is an ocean of its own, you have to choose one war and be patient with it.
But you can't fight a war without a strategy. For instance, the web development field has two fields, the front-end and back-end fields.

 The front end primarily focuses on building a graphic user interface of a website using HTML, CSS, and JavaScript. Learning both fields makes one a full-stack developer. It is not a walk in the park to become a full stack, all you need is commitment, passion, and willingness to learn new concepts now and then. By the way, talk of a code that is not showing errors yet not running!! This is not a field for the egg-hearted fellows. Forget about motivation on how you can become a programmer in 5 days. But you can become a programmer at in anytime you wish. It all depends on a willingness to progress in midst of the chaos that rise when for instance, a YouTube coding tutorial becomes “hard” after twenty minutes of viewing it, yet the full tutorial lasts for seven hours.

For a beginner programmer, knowing what you want to achieve is key. Every language is suited for specific uses, and some languages require knowledge of the other since they are related. For instance, you cannot learn CSS before having HTML basics. It is impossible to learn React JS, which is a JavaScript library without grasping JavaScript concepts. Before chewing a bone, you have to know how to chew steak. You need a plan and stick to it. If you are stuck, seek guidance from those who have already established themselves in the field. This way, you will learn a lot and save time by concentrating on the major skills you want to acquire. I hope you find this article useful.
which is the good Japanese ML model for NER and RE?
Tags: machinelearning, ai, nlp
Published: 2023-02-17 10:45:27

I am exploring resources for Japanese(text) **Named Entity Recognition** and **Relation Extraction** in machine learning. I have found many libraries for **NER**, but there are only a few that support **RE**. Please advise me in the comment section on the best library for <u>NER</u> and <u>RE</u>.
Incorporating static types into dynamic
Tags: webdev, beginners, programming, computerscience
Published: 2023-02-17 10:39:53

Is it possible to incorporate static types into a dynamic language? The answer is not straightforward; some cases may allow it, while others may prove difficult or even impossible.

The primary obstacle lies in the dynamic features of the language, such as 'eval.' In Python, when you evaluate "1 + eval('2')" it returns 3. However, what happens when you evaluate "1 + eval(read_from_the_network())"? The outcome depends on the runtime input received from the network. If the input is an integer, the expression is acceptable. If the input is a string, the expression is unacceptable. Because the type cannot be determined until the code is executed, it is impossible to statically analyze the type.

The unsatisfactory solution is to assign the type 'Any' to eval(). 'Any' is similar to 'Object' in some object-oriented languages or 'interface {}' in Go, in that it can hold any value. However, values of type 'Any' are not restricted, effectively removing the type system's ability to assist with eval-related code. In languages that have both eval and a type system, type safety is abandoned whenever eval is used.

Some languages have optional or gradual typing, which means they are dynamic by default but allow for the addition of static annotations. Recently, Python has introduced this feature, and TypeScript is a superset of JavaScript that includes optional types. Flow performs static type analysis on regular JavaScript code. These languages provide some benefits of static typing, but they cannot provide the same absolute guarantees as a fully static language. Some functions will be statically typed, while others will be dynamically typed, and programmers must always be aware of and cautious about the differences.
#FuzzingWeekly CW7:
Tags: security, fuzzing, cybersecurity, testing
Published: 2023-02-17 10:23:12

cURL Audit: How a Joke Led to Significant Findings: https://www.linkedin.com/pulse/fuzzing-atmpos-protocols-like-boss-karim-reda-fakhir/?published=t

Phylum Discovers Revived Crypto Wallet Address Replacement Attack: https://blog.phylum.io/phylum-discovers-revived-crypto-wallet-address-replacement-attack

boofuzz Network Protocol Fuzzing for Humans
https://www.youtube.com/watch?v=AIpTims5sXI


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ny2ao2f7itwdhl60oqzk.png)
A Guide to React Context API and useContext hook
Published: 2023-02-17 10:08:44

React Context API was introduced a while ago with React version 16.3. It was mainly introduced to solve one of the major problems that React developers like us were facing at that time - prop drilling and component re-rendering. In this article, we will cover the reasons which led to the birth of Context API and a lot more topics related to it, with step-by-step explanations. 

## Index
1. What is React Context API?
2. What is Prop Drilling?
3. How does React Context API work?
4. Understanding React Context API
5. What is useContext hook?
6. React Context API VS Redux
7. Summary
8. Frequently Asked Questions

## What is React Context API
Context API in React JS is an in-built API feature of React that manages props and states globally. Simply said, it is a way of passing the data from the parent to the child component - its final destination, without going through every other child component.
Imagine a situation where we have to pass down data from a parent component to the last child component. One way is to manually pass down the data in the form of props to every other child component until it has reached the last child component - where it has to be used. This process is called prop drilling and it complicates our overall code and can even make it ugly.
What we can do to avoid prop drilling is we can make a global state variable with the help of the createContext() function of React, store and fetch all state management variables from it using methods like Provider and Consumer and we can even use a hook to make things even simpler as they are globally stored. See the image below to understand.

## What is Prop drilling?

In a typical React Application, we use props to pass down the data from parent to child, but sometimes it can become a hassle as it can create a lot of complex codes mainly when we are dealing with some pretty heavy coding stuff like creating a UI Theme, Authenticating user credentials, etc. 

In cases like these, if we use the same method of passing props from parent to child component until it has reached its final destination, it will not become a thing of beauty but will become something so complicated that sometimes we, who have written it, might get confused, and this is called prop drilling.

Prop Drilling is a situation where data is passed down from a parent component to multiple child components until it has reached its final destination. Prop Drilling not only complicates our code but also consumes a lot of space and can sometimes be the root of re-rendering.

This is simply because whenever we pass a prop down the component, our App gets re-rendered and in the case of prop drilling, there can be multiple re-renders. To avoid this, the concept of Context API was introduced in both class and functional components. In this article, we will mainly see how to use React Context API with functional components.

[Continue Reading...](https://tekolio.com/a-guide-to-react-context-api-and-usecontext-hook/)
Flight Tickets Online
Published: 2023-02-17 10:02:51

"MTN Bookings" is a pioneer online travel solution provider based in [Tamilnadu](https://www.mtnbookings.com/), India, leading online travel management company operates the website www.mtnbookings.com. Using highly evolved Algorithm to help you get the best real-time prices for your Booking. Our specially designed technology scans through millions of data to get the best available offer. The company provides information, pricing, availability, and booking facility for domestic and international air tickets, domestic and international hotel bookings, holiday packages. As leading online travel agents of India, we help to find out the cheapest flight ticket by searching millions of flights.
Digital media marketing in Chennai at best rate
Published: 2023-02-17 10:01:55

Signmedia Infotech is a first-class full-service software development company that provides Website Design, Web and Mobile Application Development, eCommerce, Software Testing and [Digital Marketing services in chennai](https://www.signmediainfotech.in/) for your online business needs with high-quality services to a global clientele and helps you to achieve significant growth in your business.

We are a state-of-the-art digital agency with a team of skilled developers working tirelessly to achieve the desired results.
The Power of Relationships: An Introduction to Relational Databases
Published: 2023-02-17 10:00:00

Relational databases are one of the most widely-used and powerful tools for managing and storing data. They are based on the relational model, which represents data as a series of tables, with each table containing rows and columns. In this article, we'll explore the basics of relational databases, their advantages, and how they are used in the real world.

---

## **What is a Relational Database?**

A relational database is a type of database that is based on the relational model. It stores data in a series of tables, with each table containing rows and columns. The tables are related to each other through a series of relationships, which allow for the data to be easily queried and manipulated.

## **Advantages of Relational Databases**

Relational databases have several advantages over other types of databases:

- **Data Integrity**: Relational databases enforce data integrity through the use of constraints and keys, ensuring that the data is accurate and consistent.
- **Data Accessibility**: Relational databases make it easy to access and retrieve data through the use of SQL (Structured Query Language), a standard language used to query and manipulate relational databases.
- **Scalability**: Relational databases are highly scalable, making them suitable for handling large amounts of data.
- **Flexibility**: Relational databases can be easily modified and updated to meet changing business needs.

## **Real-world Applications**

Relational databases are used in a wide variety of applications, including:

- **e-commerce**: Online stores use relational databases to store and manage customer information, product information, and order information.
- **banking**: Banks use relational databases to store and manage customer information, account information, and transaction information.
- **healthcare**: Hospitals and clinics use relational databases to store and manage patient information, medical history, and treatment information.
- **social media**: Social media platforms use relational databases to store and manage user information, friend connections, and posts.

---

Relational databases are powerful tools for managing and storing data. They are based on the relational model, which represents data as a series of tables, with each table containing rows and columns. They are widely used in a variety of applications due to their advantages such as data integrity, data accessibility, scalability and flexibility. With the increasing volume and complexity of data, the importance of relational databases will continue to grow in the future.
virtual environment
Tags: 0env
Published: 2023-02-17 09:56:48

In Python, "env" or "environment" refers to the environment where a Python program runs. This environment includes environment variables, Python packages, and dependencies that are available when the program is executed.

In the context of software development, the use of a "virtual environment" is highly recommended to avoid dependency issues and configuration errors. A virtual environment is an isolated environment in which Python packages and other dependencies can be installed separately from the system's global environment. This allows developers to work on multiple projects with different dependencies without worrying about conflicts between them. Python provides tools such as virtualenv and venv to create and manage virtual environments.

Here are the steps to create and use a virtual environment using the built-in venv module in Python:

1. Make sure that Python is already installed on your computer. You can check this by `running` the command `python --version` in the terminal.

2. Open a terminal or command prompt and navigate to the directory where you want to create the `virtual environment`.

3. Run the command `python3 -m venv myenv` to create a new virtual environment named `"myenv"`. You can replace `"myenv`" with any name you like.

4. Once the virtual environment is created, activate it by running the command `source myenv/bin/activate` on Linux or macOS, or `myenv\Scripts\activate` on Windows.

5. You should now see the name of your virtual environment in the command prompt or terminal, indicating that it is `active`.

6. Install any packages or dependencies that you need for your project using the pip package manager. For example, you can run `pip install numpy` to install the `NumPy package`.

7. When you're done working in the virtual environment, you can deactivate it by running the command deactivate.

By creating and using virtual environments, you can avoid conflicts between packages and dependencies, and ensure that your project works correctly regardless of the system environment.
Tatpix.ru: история создания сайта, посвященного татуировкам
Tags: tattoo, webdev, php, sql
Published: 2023-02-17 09:36:47

Как программист, я всегда искал новые проекты для реализации своих навыков. Идея создания сайта, посвященного татуировкам, возникла у меня, когда я сам стал увлекаться этим видом искусства.

Я начал работать над сайтом [tatpix.ru](https://tatpix.ru/), собирая лучшие картинки и фотографии татуировок со всего мира. С каждым днем сайт становился все популярнее, и я продолжал развивать его, добавляя новые функции и улучшая его дизайн.

Сейчас на сайте [tatpix.ru](https://tatpix.ru/) вы найдете тысячи красивых и оригинальных татуировок, а также много разнообразных картинок, связанных с татуировками. Мы стараемся делать наш сайт максимально удобным и информативным для всех любителей этого искусства. Наша цель - помочь каждому найти свою идеальную татуировку и воплотить ее в жизнь.
[Micro frontends] Resources
Tags: programming, beginners, opensource, devjournal
Published: 2023-02-17 09:31:45

As I'm focusing more and more on micro frontends and combining different libraries and frameworks in the same application, I want to share some great resources that I found on the topic:

### Github repositories:
- [Angular MF SSR + NX](https://github.com/Coly010/nx-angular-mf-ssr-example)
- [Multi framework module federation](https://github.com/ilya-isupov/multi-framework-module-federation)
- [Angular Microfrontend](https://github.com/incora-dev/Microfrontend-Angular)
- [React Microfrontend](https://github.com/harshmons/micro-front-end-react-application)
- [React + Vue + NX Microfrontends](https://github.com/nabeel-shakeel/react-vue-microfrontend)
- [Module federation plugin](https://github.com/angular-architects/module-federation-plugin/blob/main/libs/mf-tools/tutorial/index.md)
- [Vue Js app](https://github.com/manfredsteyer/vue-js)

---

### Articles:
- [Angular Architects]( https://www.angulararchitects.io/aktuelles/the-microfrontend-revolution-module-federation-in-webpack-5/)
- [NX Microfrontend architecture](https://nx.dev/more-concepts/micro-frontend-architecture)
- [NX Module Federation Guide](https://nx.dev/recipes/module-federation/faster-builds)
- [Micro frontends Module Federation](https://www.youtube.com/watch?v=s_Fs4AXsTnA)
- [Angular Module Federation Micro-FE Speed Run](https://www.youtube.com/watch?v=EzJF0IUoYhQ)

---

### Courses:
- [Microfrontends Architecture](https://app.pluralsight.com/library/courses/micro-frontends-architecture/table-of-contents)

I'm going to keep this article up-to-date with all the interesting stuff that I'm finding!!!

Until next time, thank you for reading! 🐾
Artificial Intelligence and Machine Learning
Tags: ai, machinelearning, webdev, beginners
Published: 2023-02-17 09:24:33

Artificial Intelligence and Machine Learning: Revolutionizing the Future of Technology

Artificial Intelligence (AI) and Machine Learning (ML) are two of the hottest buzzwords in the tech industry. They are transforming the way we live, work, and interact with the world around us. From virtual assistants like Siri and Alexa to self-driving cars, AI and ML are driving the future of technology.

AI and ML are closely related but have different functions. AI is the ability of machines to perform tasks that would normally require human intelligence, such as recognizing speech, making decisions, and understanding natural language. ML is a subset of AI that uses algorithms and statistical models to enable machines to learn from data without being explicitly programmed.

The potential applications of AI and ML are endless. They are already being used in fields such as healthcare, finance, and marketing to make predictions, automate processes, and improve customer experiences. For example, AI and ML are being used in healthcare to help diagnose diseases, identify potential risks, and develop personalized treatment plans. In finance, they are being used to detect fraud, analyze financial data, and provide personalized investment advice.

[CronJ is one of the leading tech companies that specializes in AI and ML](https://www.cronj.com/). They have a team of expert developers who are well-versed in the latest tools and technologies. They provide customized solutions to businesses of all sizes, helping them harness the power of AI and ML to improve their operations and achieve their goals.

If you're looking to integrate AI and ML into your business, there are several high volume keywords that you should consider using. These include:

Artificial Intelligence
Machine Learning
Deep Learning
Neural Networks
Natural Language Processing
Predictive Analytics
Data Mining
Computer Vision
Big Data
Business Intelligence
By using these keywords in your content, you can improve your search engine ranking and increase your visibility to potential customers.

In conclusion, AI and ML are revolutionizing the future of technology. They are driving innovation, creating new opportunities, and transforming the way we live and work. With the help of companies like [CronJ](https://www.cronj.com/), businesses can leverage the power of AI and ML to improve their operations and stay ahead of the competition.
I made a tool for Github "wfh", create remote repository and add, commit, push from your local directory by one line command.
Tags: tooling, git, github, opensource
Published: 2023-02-17 09:06:25

---
title: I made a tool for Github "wfh", create remote repository and add, commit, push from your local directory by one line command.
published: true
description: 
tags: #tooling,#Git,#Github,#OSS
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-02-17 09:00 +0000
---

https://github.com/shunak/wfh
Config Nvim on ubuntu 22.0
Tags: nvim, ubuntu, beginners, tutorial
Published: 2023-02-17 08:26:36

* get lua config file
```
https://gist.githubusercontent.com/socool/44f99e2798440fc6ac8d93ced7930005/raw/ed15025a95243dd3ad8718887506ae8d5434ca51/init.lua
```
* move config to config path
```
mkdir -p ~/.config/nvim
cd ~/.config/nvim
curl https://gist.githubusercontent.com/socool/44f99e2798440fc6ac8d93ced7930005/raw/ed15025a95243dd3ad8718887506ae8d5434ca51/init.lua -o init.lua
```
* install nvim from source
* Install build prerequisites on your system
```
sudo apt-get install ninja-build gettext libtool libtool-bin autoconf automake cmake g++ pkg-config unzip curl doxygen
```
and pip
```
sudo apt install python3-pip
```
* Clone project
```
git clone https://github.com/neovim/neovim
```
* Switch to stable version
```
git checkout stable
```
* Install
```
rm -r build/  # clear the CMake cache
make CMAKE_EXTRA_FLAGS="-DCMAKE_INSTALL_PREFIX=$HOME/neovim"
make install
export PATH="$HOME/neovim/bin:$PATH"
```

[https://github.com/neovim/neovim/wiki/Building-Neovim]

* if found error 
```
Ign:5 https://pkg.jenkins.io/debian-stable binary/ InRelease                                                           Err:6 https://pkg.jenkins.io/debian-stable binary/ Release                                                          Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate.  Could not handshake: Error in the certificate verification. [IP: 199.232.66.133 443] Hit:7 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic InRelease         Reading package lists... Done E: The repository 'https://pkg.jenkins.io/debian-stable binary/ Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. 
```

Fixing this issue you need to install/update ca-certificates
```
sudo apt install ca-certificates
```