teleren/devto huggingface dataset:
If you are interested in micro services then I promise you won't regret here...
Tags: webdev, microservices, nestjs, javascript
Published: 2023-02-06 10:33:08

Hello Everyone. I started learning micro-services and now I am sharing it on my channel. I am using NestJS for it because building micro services using nodejs, nestjs makes it so easy nowadays. there is a lot what you can do with micro services if you are making it with nestjs. 

I started a series called **Microservices based project setup and CRUD operations for any project** with NestJS. I have video on my channel and I am constantly uploading videos on my channel with a detailed explanation 


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

[](https://youtube.com/shorts/vg-ZC8PX0V8?feature=share)
[](https://youtu.be/e3sYnAeXbUk)
[](https://youtu.be/cURMY9DGGx0)
[](https://youtu.be/Uojr2L0ICVU)

Have a look at all this and I promise you won't regret this. It is worthy to spend your time there. 
Thank you so much.
What is ReactJs?
Tags: webdev, react, beginners, tutorial
Published: 2023-02-10 16:58:46

React is a `JavaScript `library for building user interfaces. It allows you to build reusable UI components and manage the state of your application efficiently. Here's a beginner's tutorial for ReactJS using examples:

**_Setting up a React environment:_**
To start building with React, you need to set up a development environment. You can do this using tools like `CodeSandbox `or you can set up a local environment using npm and a text editor like `Visual Studio Code`.

**_Creating a React component:_**
A `component `in React is a piece of UI that can be reused multiple times in an application. You can create a component in React using JavaScript `functions `or `classes`. Here's an example of a functional component:

```
import React from "react";

function MyComponent() {
  return <h1>Hello, World!</h1>;
}

export default MyComponent;
```

And here's an example of a class component:

```
import React, { Component } from "react";

class MyComponent extends Component {
  render() {
    return <h1>Hello, World!</h1>;
  }
}

export default MyComponent;
```

**_Rendering a component:_**
To render a component in React, you need to import it into a file and use the `<MyComponent />` syntax to render it. Here's an example:

```
import React from "react";
import MyComponent from "./MyComponent";

function App() {
  return (
    <div>
      <MyComponent />
    </div>
  );
}

export default App;
```

**_Props and State:_**
In React, you can pass data to components using props and manage the state of a component using the state object. Props are properties that are passed to a component from its parent component. The state is an object that holds data that can change within a `component`. Here's an example:

```
import React, { useState } from "react";

function Counter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>Increment</button>
    </div>
  );
}

export default Counter;
```

**_Event handling:_**
You can handle events in React components using event handlers. An event handler is a function that is executed when an event occurs, such as a button click. Here's an example:

```
import React, { useState } from "react";

function Toggler() {
  const [isToggled, setToggled] = useState(false);

  return (
    <div>
      <p>Toggled: {isToggled.toString()}</p>
      <button onClick={() => setToggled(!isToggled)}>Toggle</button>
    </div>
  );
}

export default Toggler;
```

These are the basics of ReactJS. Visit [React Docs](https://reactjs.org/) for more. You can use these concepts to build more complex applications and learn advanced topics as you progress.
Follow @bakardev for more. ✌
Prediksi Syair Togel sgpHari ini
Published: 2023-02-11 12:39:01

bocoran nomor keluaran sgp dan **[prediksi sgp](https://riano.org/)** 4d 3d 2d terjitu hari ini di Riano.org. Semoga prediksi dan forum kode syair bisa membantu anda untuk JP
Software buatan anak bangsa
Tags: programming, magangsrdkomatik2023
Published: 2023-02-14 14:21:27


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tkz3e87vnb89c0fs20on.png)
**Latar Belakang**
Kini teknologi sudah semakin maju dan juga penggunaan software semakin banyak, akan tetapi kita sering menggunakan software-software buatan negara lain dan juga pendiri software buatan indonesia pun masih sedikit yang digunakan secara massal, maka dari itu mungkin kita bisa mulai memajukan negara kita dalam teknologi dan pembuatan software agar dapat bersaing dengan yang lainnya

**Tujuan dan Manfaat**
Majunya teknologi pada zaman sekarang membawa angin segar bagi banyak pihak, seperti pembuat aplikasi,web,programmer, dan juga start up yang ada. Kita dapat membuat aplikasi dan digunakan oleh banyak orang juga, dengan banyaknya user yang memakai software kita juga akan membantu kita secara finansial dan juga membuka banyak lowongan kerja baru di negara kita, dan bisa saja software buatan kita dapat bersaing dengan perusahaan software raksasa lainnya yang sudah lebih dulu dikenal dan digunakan banyak orang. Semakin majunya bidang teknologi dalam negara tersebut, secara tidak langsung akan memajukan bidang lainnya dikarenakan pada saat ini hampir semua pekerjaan membutuhkan teknologi dibelakangnya untuk membantu pekerjaannya. Manfaat yang didapatkan dari berkembangnya industri software sangat banyak seperti memajukan ekonomi, membuka lowongan pekerjaan baru, dan masih banyak lagi.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1tv6cwi7xzpoeok7do4p.png)
**Batasan**
Tidak ada batasan dalam pengembangan software buatan kita sendiri, karna sebenarnya ide dan solusi didatangkan dari diri kita sendiri akan membuat software apa yang dapat menjawab masalah-masalah banyak orang dan dapat membantu banyak orang.
Whatsapp Bot Reminder : whatsapp bot yang terintegrasi dengan google calendar.
Tags: magangsrdkomatik2023, mobile, idea, programming
Published: 2023-02-15 05:29:38

Fitur baru whatsapp yang memungkinkan kita untuk memberi pesan untuk diri sendiri banyak dimanfaatkan untuk menuliskan to do list atau daftar kegiatan yang ingin dilakukan, menuliskan tenggat dari suatu tugas, hingga menuliskan tanggal ulang tahun teman. Pemilihan whatsapp disini karena aplikasi ini senantiasa dibuka setiap saat oleh user. Dengan membuat catatan disini, jadwal kegiatan yang kita miliki bisa lebih terstruktur dan mudah dikelola sehingga kita tahu prioritas mana yang harus segera dilaksanakan. 

Namun dengan menuliskan catatan seperti ini, kita cukup kesulitan mengingat detail dari batas waktu dari masing-masing kegiatan karena tidak ada fitur pengingat/reminder disana. Cara manual yang dapat dilakukan yaitu membuka dan membaca kembali pesan yang sudah kita tulis sebelumnya dan tentu saja cara ini tidak efisien dan memakan banyak waktu. 

Dengan perkembangan teknologi yang semakin canggih, masa kini kita mengenal yang namanya perkembangan perangkat lunak atau software development. Dari permasalahan sebelumnya dan pengimplementasian software development, maka saya memiliki sebuah ide untuk membuat yang namanya “Whatsapp Bot Reminder”. Berikut gambaran singkat “Whatsapp Bot Reminder” :


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

Jadi cara kerja dari “Whatsapp Bot Reminder” ini adalah user menuliskan nama kegiatan dan tanggal pelaksanaannya lalu dikirim ke whatsapp chatbot. Oleh whatsapp chatbot, pesan yang kita tulis dikirimkan, ditangkap lalu diproses, diterjemahkan dan diekstrak data-datanya. Karena chatbotnya terintegrasi/terhubung dengan google calendar, maka data-data hasil terjemahan tadi diintegrasikan ke google calendar sehingga pada saat sudah mencapai tanggal dan jam yang kita tuliskan maka google calendar akan memberikan peringatan/reminder kepada kita melalui notifikasi ponsel kita masing-masing. 

Contohnya seperti ini, pada chatbot yang sudah kita buat, kita dapat menuliskan pesan sesuai dengan format yang sudah dibuat. Misal formatnya :

/set judul kegiatan | tanggal dan waktu kegiatan

Contoh :

/set Deadline Laprak Pemrograman | 16/2/2023 23:59

Jadi, nanti pada tanggal 16 Februari 2023 jam 23:59 pada user akan muncul notifikasi dari google calendar. 

Dengan adanya peringatan dari google calendar ini, maka kemungkinan untuk melewatkan suatu kegiatan atau keterlembatan dalam mengerjakan sesuatu menjadi lebih minim dan to do list yang  dibuat dapat berjalan seperti yang diharapkan oleh user. 

Namun, Whatsapp Bot Reminder ini memiliki keterbatasan diantaranya:
1. Ponsel yang digunakan harus selalu terhubung dengan internet.
2. Pada software ini hanya terbatas menggunakan whatsapp dan google calendar saja. Software ini belum support untuk messaging apps lain misal telegram dan line dan juga belum support untuk calendar lain misal apple calendar dan microsoft calendar.
Networking on AWS - Part 3
Published: 2023-02-14 19:50:50

In the previous parts, we discussed the basics of networking on AWS and how to set up and configure a VPC on AWS. In this part, we will take a closer look at advanced networking concepts on AWS.

VPC Peering

VPC peering allows you to connect two VPCs, allowing instances in one VPC to communicate with instances in the other VPC. This can be useful if you have multiple VPCs that need to communicate with each other but are not part of the same network.

VPC peering is secure, and the traffic between the two VPCs is encrypted. You can also use VPC peering to connect VPCs across different regions.

Transit Gateway

Transit Gateway is a service that allows you to connect multiple VPCs and on-premises networks. It acts as a hub that connects all your networks, allowing you to manage traffic between them centrally.

Transit Gateway is highly available, and you can scale it to support up to 5,000 VPCs. You can also use it to connect VPCs across different regions.

VPC Endpoints

VPC endpoints allow you to connect to AWS services without the need for an internet gateway or NAT gateway. This improves security by reducing the number of entry points to your VPC.

VPC endpoints are available for many AWS services, including S3, DynamoDB, and Lambda. When you create a VPC endpoint, you can specify which service it connects to and which VPCs can access it.

Elastic Load Balancing

Elastic Load Balancing is a service that distributes incoming traffic across multiple instances in your VPC. This improves performance and availability by balancing the traffic load across multiple instances.

Elastic Load Balancing is available in three flavors: Application Load Balancer, Network Load Balancer, and Classic Load Balancer. Each load balancer type is optimized for specific use cases.

Conclusion

In conclusion, AWS provides advanced networking capabilities that allow you to create highly available and secure architectures for your applications. VPC peering, Transit Gateway, VPC endpoints, and Elastic Load Balancing are just a few of the many features available on AWS.

By leveraging these features, you can create complex and highly available network architectures that meet the needs of your applications. It is essential to have a solid understanding of the basics of networking on AWS and to keep up-to-date with the latest features and best practices to ensure that your deployments are secure, reliable, and performant.
SceneDelegate
Tags: ios, swift, swiftui
Published: 2023-02-14 20:03:19

In iOS, the SceneDelegate is a class that is responsible for managing the scenes in your app. A scene is a discrete unit of your app's user interface, such as a window or tab. The SceneDelegate class provides methods that are called at various points in the lifecycle of a scene, such as when a scene is about to be displayed, or when a scene is about to be destroyed.

The SceneDelegate class is typically used to manage the state of a scene and to respond to events that affect the scene. For example, the SceneDelegate class might be used to manage the size and position of a window, or to respond to changes in the device's orientation.

In general, the SceneDelegate class is an optional part of the iOS app architecture, and you do not need to use it in your app unless you need to manage multiple scenes. If you only have one scene in your app, you can use the AppDelegate class to manage the lifecycle of your app instead.

Remove the SceneDelegate

There might be some reason we probably don't want the SceneDelegate class. To remove the SceneDelegate class from your iOS app, you can follow these steps:

1. Open your project in Xcode and in the Project Navigator, navigate to the SceneDelegate.swift file and delete it.
2. In the Project Navigator, navigate to the AppDelegate.swift file.
3. In the AppDelegate class, remove the UISceneDelegate protocol from the class declaration.
4. In the AppDelegate class, remove the var window: UIWindow? property.
5. In the AppDelegate class, remove the following methods:

```swift
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions)

func sceneDidDisconnect(_ scene: UIScene)

func sceneDidBecomeActive(_ scene: UIScene)

func sceneWillResignActive(_ scene: UIScene)

func sceneWillEnterForeground(_ scene: UIScene)

func sceneDidEnterBackground(_ scene: UIScene)
```
6, In the Info.plist file, remove the UISceneManifest key and its associated dictionary.

After completing these steps, the SceneDelegate class will be removed from your app, and the AppDelegate class will be the only class responsible for managing the lifecycle of your app. However, note that removing the SceneDelegate class will also remove the ability to manage multiple scenes in your app, so you should only do this if you do not need this functionality.

For more detalis: https://needone.app/scenedelegate-in-swift/
ChatGPT $18 trial credit
Tags: chatgpt, blog
Published: 2023-02-14 20:13:04

[ChatGPT](https://helloacm.com/how-chatgpt-impacts-ugc-user-generate-content/) offers $18 free trial credit, which is about to be exhausted soon.

!ask Write me a HTML page that shows a heart in animation using Javascript to my wife as a Valentine's gift. Could you make sure it can be viewed nicely on the mobile?

```html
<!DOCTYPE html>
<html>
<head>
  <title>Valentine's Gift for My Wife</title>
  <style>
    body {
      background-color: #FFC0CB;
    }
    #heart {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 200px;
      height: 200px;
      background-color: #FF1493;
      border-radius: 50%;
      animation: heart-beat 1s infinite;
    }
    @keyframes heart-beat {
      0% {
        transform: scale(1);
      }
      50% {
        transform: scale(1.2);
      }
      100% {
        transform: scale(1);
      }
    }
    @media (max-width: 600px) {
      #heart {
        width: 100px;
        height: 100px;
      }
    }
  </style>
</head>
<body>
  <div id="heart"></div>
</body>
</html>
```

Well, not a heart, [but a circle](https://zhihua-lai.com/v2023.html)


ChatGPT Plus in UK is not out yet - on waiting list though.

![image.png](https://cdn.steemitimages.com/DQmVabWqs3D79eEUMk3SbUGQBMxbJSmpsUDsZKvGwdZbRaH/image.png)

<hr/>

### [Steem](https://steemyy.com) to the Moon!
You can swap the STEEM/SBD to USDT (TRC-20) via [Steem2USDT](https://steemyy.com/steem2usdt.php)
How To Install Ubuntu Server on Virtual Machine
Published: 2023-02-15 07:14:28

`cout << "Calzy Akmal - 2101569";`

First, open up the link down below and select the button to download the Ubuntu Server.iso on your computer.

![Ubuntu Server Download Landing Page](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6z7z2sma77fyrr543zlq.png)

If you have finished downloading, I assume you have already installed the Virtual Box (if you haven't, open this link to see on how to install the Virtual Box: https://dev.to/calzkmal/how-to-install-ubuntu-os-on-virtual-machine-364i).

Now open up the Virtual Box to proceed to the next step.

![Virtual Box Landing Page](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5jttsf9kt69oezth2ngd.png)

Click the 'New' button to create a new Virtual Machine (VM) on your desktop.

![Basic Settings](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hau7i34wo2kwgwiyxd39.png)

Fill up the required field to complete the initial setup. Give your VM a name, select where do you want to put the VM on your desktop, and select where the .iso is located. After that, press next to proceed.

![Name and Password Setup](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i1e6ivnvs257x2c9d4ik.png)

Fill out the 'Username' and 'Password' columns according to your own preferences, and change the 'Hostname' and 'Domain name' columns if you wanted to. After that, press next to proceed.

![Memory Allocation](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8e9ndcxl39a59h4558yu.png)

After that, allocate the memory needed for the machine to work on your desktop. Recommended amount for the 'Base Memory' is around 8192 MB, and 4 CPU for the 'Processors'.

![Storage](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3qzl676v9ovvifqir9z1.png)

Lastly, allocate the storage amount for the server to operate on the VM. Around 25 GB of storage is enough for the machine to work.

![Summary](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kk26ippoouei6t9nh05j.png)

There you go! If you have finished all the steps required on the VM installation, the last thing to do is to see all the summaries of the settings that you have set before. Press the 'Finish' button if you feel good enough about the settings.

![Finish installation](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mcmaxv194yzrncrlfop.png)

Congratulations! You have succesfully installed the Ubuntu Server on your VM. Now, fire it up to use it.
Merge multiple kubeconfig files
Tags: kubernetes, kubectx, kubectl, kubeconfig
Published: 2023-02-15 07:24:04

We use `kubeconfig` files to organize information about clusters, users, namespaces, and authentication mechanisms. `kubectl` command-line tool itself, uses `kubeconfig` files to source the information it needs in order to connect and communicate with the API server of a cluster.

By default, `kubectl` requires a file named config that lives under `$HOME/.kube` directory. You can multiple cluster entries in that file or specify additional kubeconfig files by setting the `KUBECONFIG` environment variable or by setting the `--kubeconfig` flag.

When you have multiple `kubeconfig` files and you want to merge them in one without using multiple files and switching among them with the `kubeconfig` flag, I personally get a headache because there is no way I remember how to merge those files from the command line. But there is a simpler way so please don’t waste brain cells to remember complicated bash commands.

As we mentioned before the **easy way** is by setting the `KUBECONFIG` environment variable. You can specify there multiple config files divided by the colon symbol (**:**) and `kubectl` will merge those automatically for you.

```
export KUBECONFIG=~/.kube/config:~/.rancher/local:~/.kube/kubeconfig.json
```

> Special treat: You can mix and match YAML and JSON files!

If you want to see now the current merged configuration that your `kubectl` is working with, just issue the command:

```
kubectl config view
```
and if you want to export this configuration for future use as a single file you can do it by running:

```
kubectl config view --flatten > my-config.yaml
```
and then you can replace your `~/.kube/config` file with the file above for permanent effect.

Don’t over-complicate staff, don’t try to memorize staff.

> Photo by Growtika Developer Marketing Agency on Unsplash
30-Day Plan to build a Side Project -For Beginners
Published: 2023-03-06 21:19:47

---
title: 30-Day Plan to build a Side Project -For Beginners
published: True
description: 
tags: 
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-03-06 21:13 +0000
---
Devs, It's the first Monday of the month 🗓️

If you start today, in the next 4 weeks, you can have a working and live side project 🚀

Here is a 30 Day step by step process. 🧵

I have created a detailed Google Sheet of the 30-day plan. Check [Link](https://saaswisdom.com/resources) to access it

Mentioned below is the very trimmed-down version of the plan, just for your high-level understanding and to get you motivated and excited.

You can refer to the mentioned Google sheet that has a detailed plan and tracking (More on that later), but for now, keep reading

Remember you are building in public. Use #buildinpublic in your tweets

Tweet every day and post on LinkedIn about your progress

Keep announcing the wins as well as failures.

Let's begin 🚀

--

Week 1 - Planning 📋

Monday: Brainstorming ideas (Light Activity)
Tuesday: Research ideas
Wednesday: Research existing tools
Thursday: Finalise the idea
Friday: (Get serious) Create product Roadmap & Milestones
Saturday: Continue with the roadmap
Sunday: Create next week's content

Week 2 - Getting Started 🛴

Monday: Take a Break
Tuesday: Setup Dev env, tools & frameworks
Wednesday: Work on the DB & structure
Thursday: Continue with the previous task
Friday: (Get serious) Start with the core logic & functionality
Saturday: Continue with the previous
Sunday: Create next week's content

Week 3 - Build 🛠

Monday: Break
Tuesday: Build core functionalities
Wednesday: Build core functionalities
Thursday: Build core functionalities
Friday: (Get serious) Complete the core functionalities
Saturday: Work on supplementary features
Sunday: Finish supplementary features & content

Week 4 - Ship 🚀

Monday: Take a break
Tuesday: Finish the basic UI and test it
Wednesday: Deploy for beta
Thursday: Allow your connections to test it
Friday: Fix bugs and test
Saturday: Fix bugs and test
Sunday: Release

The next voyage begins once you release your product.
More on that in upcoming posts, but for now...

Enjoy the process as much as you can 🧨

Do whatever, but don't deviate from this plan.

Remember, in 4 weeks you can do something that can have the potential to change your life

Check the link to access the Google Sheet
[Link](https://saaswisdom.com/resources)