teleren/devto huggingface dataset:
Ask R&D: Natural Syntax and Runtime
Tags: restapi, syntax, runtime, mainframe
Published: 2023-11-16 10:05:41

---
title: Ask R&D: Natural Syntax and Runtime
published: true
date: 2023-10-19 11:44:14 UTC
tags: restapi, syntax, runtime, mainframe
canonical_url: https://tech.forums.softwareag.com/t/ask-r-d-natural-syntax-and-runtime/285050
---

{% embed https://www.youtube.com/watch?v=MbmOZl-RIP0 %}

### About this video

Get insights from the pros who develop Natural! The R&D team for Natural for z/OS shares practical tips on using the Natural syntax and runtime features in this virtual International User Group event: [See Ask Research and Development: Natural Syntax and Runtime at Software AG Groups International Adabas & Natural User Group](https://groups.softwareag.com/events/details/software-ag-international-adabas-natural-user-group-presents-ask-research-and-development-natural-syntax-and-runtime/)

R&D shares insights about:

- How to improve performance with STORE / UPDATE
- What Is the difference between READ … THRU and READ … TO
- How to read with Adabas Multi-Fetch
- Understanding COMPRESS with EM
- How to call a REST API from Natural
- How to use the WHICH command

If you have additional topics about Adabas & Natural that you’d like to see covered in a future “Ask R&D” session, simply email your suggestions to [adabas.natural@softwareag.com](mailto:adabas.natural@softwareag.com).

To view the presentation slides, visit [Ask R&D about Natural Event - post your questions here - #2 by Nicole\_Ritchie](https://tech.forums.softwareag.com/t/ask-r-d-about-natural-event-post-your-questions-here/282773/2)


[Read full topic](https://tech.forums.softwareag.com/t/ask-r-d-natural-syntax-and-runtime/285050)
how to prepare for a remote job interview
Published: 2023-10-19 11:42:06


Remote jobs are positions that allow employees to work from a location outside of the company’s physical office.

how to prepare for a remote job interview:

Preparing for a remote job interview is similar to preparing for an in-person interview.

 However, there are some additional factors to consider when preparing for a remote job interview. Here are some tips to help you prepare for a remote job interview:

Test your technology: Make sure you have a reliable internet connection and that your computer, webcam, and microphone are working properly.

Test your video conferencing software ahead of time to avoid any technical issues during the interview.

Dress appropriately: Dress professionally, just as you would for an in-person interview. This will help you feel confident and prepared.

Research the company: Do your research on the company and the position you’re applying for. This will help you answer questions more effectively and show that you’re interested in the company.

Prepare your answers: Prepare answers to common interview questions, as well as questions specific to remote work.

Be ready to discuss your experience working remotely or from home, how you manage your time, and how you stay motivated when working from home.

Have a backup plan: In case of technical difficulties, have a backup plan ready. Make sure you have the interviewer’s phone number or email address so that you can contact them if needed.

negotiate salary for remote job:

Do your research: Research the market rates for remote jobs in your industry using websites like SalaryExpert, Salary.com,

Glassdoor, and Payscale . This will help you understand the range of salaries that are being offered for similar positions.

Know your worth: Determine your worth based on your experience, skills, and qualifications. This will help you negotiate a fair salary that reflects your value to the company.

Consider your cost of living: Take into account the cost of living in your area when negotiating your salary.

Practice your pitch: Practice your pitch and make sure you can clearly articulate why you deserve the salary you’re asking for.

Consider other perks: In addition to salary, consider other perks that may be negotiable such as health insurance, retirement plans, or flexible work hours.

how to find remote jobs in my field:

To find remote job opportunities in your field, you can check out the following websites:

Remote.co
We Work Remotely
LinkedIn
These websites offer a wide range of remote job opportunities in various fields such as software development, customer service, design,

 marketing, and more. You can filter your search based on your preferred job type, location, and experience level.

In addition to these websites, you can also check out job boards specific to your industry or field. For example, if you’re a writer, you can check out the Freelance Writing Jobs job board.
Hacktoberfest-23: Hall of Fame
Tags: hack23contributor
Published: 2023-10-19 11:42:03

<!-- ✨Exciting News✨ -->

### Hacktoberfest- 2023: A Hall of Fame journey
<!-- I am happy to share that all four of my pull requests made it into Hacktoberfest 2023's Hall of Fame. {% https://github.com/thenoobbird %} 
It had been an incredible experience, from the first time contributing to an open-source project to the Hall of Fame of Hacktoberfest- 2023. Thank you #Hacktoberfest -->
Placeholder Maintainer
Tags: hack23maintainer
Published: 2023-10-19 11:32:05

<!-- ✨This template is only meant to get your ideas going, so please feel free to write your own title, structure, and words! ✨ -->

### Intro
<!-- Share a bit about yourself as a maintainer. Is this your first Hacktoberfest, or have you maintained in others? Feel free to embed your GitHub account by using {% embed LINK %} -->

### Project
<!-- Tell us about the repository that you hosted. What processes did you set up to review and merge pull requests? Feel free to embed your GitHub repo by using {% embed LINK %} -->

### Highs and Lows
<!-- What were some of your biggest accomplishments or light-bulb moments this month? Did any problems come up that seemed impossible to fix? How did you adapt in those cases?  -->

### Growth
<!-- What was your skillset before Hacktoberfest 2023 and how did it improve? Have your project goals changed since publicly maintaining it? -->
Placeholder Contributor
Tags: hack23contributor
Published: 2023-10-19 11:31:47

<!-- ✨This template is only meant to get your ideas going, so please feel free to write your own title, structure, and words! ✨ -->

### Intro
<!-- Share a bit about yourself as a contributor. Is this your first Hacktoberfest, or have you contributed to others? Feel free to embed your GitHub account by using {% embed LINK %} -->

### Highs and Lows
<!-- What were some of your biggest accomplishments or light-bulb moments this month? Did any problems come up that seemed impossible to fix? How did you adapt in those cases?  -->

### Growth
<!-- What was your skillset before Hacktoberfest 2023 and how did it improve? Have your learning or career goals changed since working on these new projects? -->
The Unrivaled Strength of Java in Powering Backend Technologies
Tags: java, softwaredevelopment, backend, security
Published: 2023-10-19 11:16:52

In the dynamic realm of backend development, the choice of technology plays a pivotal role in determining the success and efficiency of web applications. Java, with its robust features, extensive libraries, and proven scalability, stands out as a formidable force in the backend development landscape. Here are compelling reasons why Java remains a preferred choice for backend technology:

**1. Platform Independence:**

Java's "Write Once, Run Anywhere" philosophy makes it platform-independent. Code developed in Java can run seamlessly on different operating systems without modification. This portability is a significant advantage, especially in enterprise environments with diverse IT infrastructures.

**2. Scalability:**

Java's scalability is renowned in the industry. Its ability to handle a large number of concurrent users and transactions makes it an ideal choice for building scalable backend systems. This scalability is particularly crucial for applications experiencing rapid growth or unpredictable spikes in traffic.
3. Multithreading and Concurrency:
Java's built-in support for multithreading enables developers to create applications that can efficiently execute multiple tasks concurrently. This is vital for optimizing performance and responsiveness, especially in applications handling numerous user requests simultaneously.

**4. Extensive Ecosystem:**

Java boasts an extensive ecosystem of libraries and frameworks that simplify and accelerate the development process. Frameworks like Spring and Hibernate have become industry standards, providing solutions for aspects ranging from dependency injection to data persistence.

**5. Security:**

Security is a top priority in backend development, and Java's security features contribute significantly to its popularity. The Java Virtual Machine (JVM) includes security features such as classloaders, bytecode verifiers, and a security manager, ensuring a robust and secure runtime environment.

**6. Mature and Stable:**

Java has been around for more than two decades, and its maturity is reflected in its stability. Many large-scale enterprise applications and systems rely on Java due to its proven track record of stability and reliability.

**7. Community Support:**

The Java community is vast and active, with a wealth of resources available for developers. From online forums to documentation, developers can easily find support and solutions to challenges they may encounter during the development process.
8. Object-Oriented Paradigm:
Java's object-oriented programming (OOP) paradigm promotes modularity, reusability, and maintainability of code. This makes it easier for developers to design and implement complex backend systems with a clear and organized structure.

**9. Backward Compatibility:**

Java has a strong commitment to backward compatibility. This means that applications written in older versions of Java can run on newer versions without modification. This commitment ensures that investments in existing codebases remain protected and viable.
How to configure SSR in Nuxt3 and deploy it with Serverless Architecture
Tags: nuxt, serverless, webdev, tutorial
Published: 2023-10-19 11:14:02

**Serverless:** In a serverless architecture, developers write and deploy code in the form of functions or services without the need to manage servers or worry about infrastructure scaling.

**Server-Side Rendering (SSR):** It is a technique used in web development to render web pages on the server and then send the fully rendered HTML to the client(browser).

Using **Nuxt3** for SSR with a serverless architecture combines the benefits of a powerful SSR framework with the ease of serverless deployment.

## Table of Contents

- Why SSR(Server-Side-Rendering)?
- Why a serverless approach?
- Prerequisites
- Nitro Overview
- AWS Lambda Configuration using Nitro
- Add your code to s3
- Create Cloudformation stack using AWS CLI
- Create AWS Lambda Execution Role
- Create AWS Lambda function using Cloudformation
- Create API Gateway resource using Cloudformation
- Create API Gateway method, resource, and proxy using Cloudformation
- Lambda permission
- Configure custom domain to access API Gateways using Cloudformation
- Sitemap
- Conclusion

## Why Serverless Approach?

The **serverless** approach offers a more efficient and scalable way to develop and deploy applications. 

It eliminates the need to manage server infrastructure, allowing developers to focus solely on writing code. 

**Serverless** also brings cost advantages by charging only for actual usage, making it an attractive option for businesses looking to optimize resources and deliver applications with greater agility.

By optimizing performance and scalability, you're not just creating a website; you're crafting a digital experience that's fast, reliable, and ready for the future. 

So why wait?

Take your **Nuxt3** project to the next level with **SSR** and **Serverless**, and watch your website thrive. 

For more in-depth insights and step-by-step guidance on this exciting journey, visit to **[Canopas Blog](https://blog.canopas.com/how-to-configure-ssr-in-nuxt3-and-deploy-it-with-serverless-architecture-f86e63ae8b8d)**.

Follow **[Canopas](https://canopas.com/)** for our latest technical blog posts!
Deploying ArgoCD on Minikube with Terraform and Helm: A Step-by-Step Guide
Tags: argo, terraform, kubernetes, helm
Published: 2023-10-19 11:09:41


---

**Prerequisites**

Before diving into deploying ArgoCD on Minikube, make sure you have the following prerequisites installed on your system:

- Docker
- Minikube
- Terraform
- Helm
- kubectl

For this guide, we're using a two-node cluster on Minikube, although one node should suffice.

Start Minikube with two nodes using this command:

```sh
minikube start --nodes 2 -p argocd-helm
```

Verify your Minikube setup with:

```sh
kubectl get nodes
```

Next, set up your project directory:

```sh
mkdir -p terraform/values
cd terraform && touch provider.tf main.tf
cd terraform/values && touch argocd.yaml
```

Now, let's configure Terraform to deploy ArgoCD using Helm.

**`terraform/provider.tf`**

```hcl
provider "helm" {
  kubernetes {
    config_path = "~/.kube/config"
  }
}
```

**`terraform/main.tf`**

```hcl
resource "helm_release" "argocd" {
  name = "argocd"

  repository       = "https://argoproj.github.io/argo-helm"
  chart            = "argo-cd"
  namespace        = "argocd"
  create_namespace = true
  version          = "3.35.4"

  values = [file("values/argocd.yaml")]
}
```

In `terraform/values/argocd.yaml`, you can override some default ArgoCD Helm chart values:

```yaml
global:
  image:
    tag: "v2.6.6"

server:
  extraArgs:
  - --insecure
```

After setting up your Terraform configuration, execute the following commands in your terminal:

```sh
terraform init
terraform apply --auto-approve
```

![terraform init](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nyyf80yi3ytvy4tzxmlv.png)

Verify the ArgoCD deployment with:

```sh
kubectl get pods -n argocd
```
![kubectl get pods -n argocd](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mu8ubjfvbd0nyodx4bu6.png)
To access the ArgoCD web UI, you'll need to port forward to the `argocd-server` service:

```sh
kubectl port-forward svc/argocd-server -n argocd 8080:80
```

![kubectl port-forward ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zn8ck0j07mx81cz7mqz8.png)
Now, open your browser and navigate to `localhost:8080`. You should see the ArgoCD login page.

The default username is `admin`. Retrieve the password from the secret using:

```sh
kubectl get secrets argocd-initial-admin-secret -o yaml -n argocd
```


![kubectl get secrets](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vm5to3ofnupbsq7ic6vf.png)
Copy the password and decode it with the base64 utility:

```sh
echo "copied_password_here" | base64 -d
```
![echo "copied_password_here" | base64 -d](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vm5to3ofnupbsq7ic6vf.png)
Now, paste the decoded password without the `%` sign at the end into the password field on the login page.

Voila! You've successfully deployed ArgoCD on Minikube.



---
4: Installing tools
Published: 2023-10-19 11:00:11

_Day 3 | Self-study, 2 hours_
Today was a very tech day!
As a part of the pre-class work, I had to install the following:

1. xcode
2. Homebrew
3. VSCode

With some help from my tutors and classmates online, I managed to get 1-3 done. I was hesitant here and there, a bit confused at times, and was also reading up a bit on the different terms used in the instructions. 

If you would like to see the detailed steps I followed to install 1-3, please check it on my Hashnode blog:

- [xcode](https://emanoj.hashnode.dev/4-installing-xcode)
- [Homebrew](https://emanoj.hashnode.dev/5-installing-homebrew)
- [VSCode](https://emanoj.hashnode.dev/6-installing-vscode)

2 hours of study, 8 hours of full-time work, fitness workout, and meal times! Phew! Time to take a break and get ready for the evening 2 hours of LIVE class!
Enhancing Javascript with Assets using VS Code
Published: 2023-10-19 10:57:55

Title: Enhancing JavaScript with Assets using VS Code

Introduction:
In the world of web development, JavaScript is a powerful language that allows us to create dynamic and interactive elements on websites. While JavaScript itself provides a wide range of functionalities, we can further enhance our projects by incorporating assets such as images, stylesheets, and fonts. In this blog, we will explore how to efficiently add assets to your JavaScript projects using Visual Studio Code (VS Code) - a popular and versatile code editor.

1. Organizing your Project Structure:
Before adding assets, it's essential to have a well-structured project. A clean and organized project structure makes it easier to manage and locate your assets. Create a dedicated folder for your assets, such as "assets" or "resources," at the root level of your project. Within this folder, you can further categorize assets into subfolders based on their types (e.g., "images," "styles," "fonts").

2. Adding Images:
Images are a common asset type in web development. To add an image to your JavaScript project using VS Code, follow these steps:
   a. Place your image file in the "images" or relevant subfolder within the assets folder.
   b. In your HTML or JavaScript file, reference the image using the correct file path relative to the root of your project. For example, `<img src="./assets/images/myImage.jpg" alt="My Image">`. 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4hthjv6biq5pg9ufakdl.png)

3. Incorporating Stylesheets:
Stylesheets (CSS) play a crucial role in designing and styling web pages. To add a CSS file to your JavaScript project using VS Code:
   a. Put your CSS file in the "styles" or appropriate subfolder within the assets folder.
   b. Link the CSS file to your HTML file using the `<link>` tag. For example, `<link rel="stylesheet" href="./assets/styles/myStyles.css">`.

4. Utilizing Fonts:
Fonts can have a significant impact on the visual appeal of a website. To add custom fonts to your JavaScript project using VS Code:
   a. Place the font file (commonly in .otf or .ttf format) in the "fonts" or relevant subfolder within the assets folder.
   b. Declare the font-face in your CSS file using `@font-face`. For example:
      ```css
      @font-face {
        font-family: "MyCustomFont";
        src: url("../fonts/myFont.otf") format("opentype");
      }
      ```
   c. Apply the font to specific elements using the `font-family` property in your CSS class selectors.



Conclusion:
By adding assets such as images, stylesheets, and fonts to your JavaScript projects, you can elevate their visual appeal, enhance user experience, and make your code more modular and maintainable. VS Code, with its user-friendly interface and comprehensive features, makes the process of incorporating assets into your JavaScript projects a breeze. Remember to organize your project structure, reference assets correctly, and optimize them for optimal performance. Happy coding!
Getting Started with the React Badge Component
Tags: webdev, react
Published: 2023-10-19 10:30:20

Learn how to create and configure the Syncfusion React Badge component in a React application using Visual Studio Code. The Badge is a CSS-based component that indicates a status or notification in different shapes and sizes and is often used in messenger apps. In this video, you will see how to create a React app and add the Badge component. You will see the different shapes and types of badges. I will also show you how to integrate the badge with other UI components. An easily customizable, pure HTML5/CSS notification Badge is commonly used to display a notification count or status information in different sizes and contextual color variants. 

The Syncfusion React Badge component offers a wide range of customization possibilities. You have the flexibility to adjust the badge's content, position, and appearance, and manage click events. This adaptability allows you to seamlessly integrate the Badge component with other Syncfusion components or external libraries, and create dynamic and engaging user interfaces within your React application. The default shape of a badge typically appears as a rounded rectangular or square design, offering a standard look. 

However, it's possible to transform the badge into a circular shape when needed by adjusting the component's properties. Circular badges are commonly employed for displaying notifications or status indicators. In the Syncfusion React Badge component, various badge types are available, each crafted to serve distinct use cases and visual styles. Furthermore, event handling, including click events on the badge, is possible using prop-based event handlers. 

Syncfusion components are known for their theme support, enabling you to harmonize the badge's look and feel with the overall design of your application. You can style the Badge component according to your preferences with ready-made themes or craft custom ones. 

**Tutorial video:** https://www.syncfusion.com/tutorial-videos

**Download the example from GitHub:** 
https://github.com/SyncfusionExamples/getting-started-with-the-react-badge-component

{% youtube XgSqJH3aqc4%}
Key not recognized in rotp rails gem when scanning with Google Authenticator
Tags: webdev, ruby, rails
Published: 2023-10-19 10:30:01

Yesterday I was updating my rails project with "bundle update" and rotp gem goes haywired. The previous otp_secret of User(Devise Model) is something like this 

`{\"p\":\"7+cOhwxYt9UJxLgaMBnY0K1vJI0LS2vT\",\"h\":{\"iv\":..."`

and after updating to rotp 6.3.0, the Google Authenticator didn't recognized the  generated QR code anymore.

It is because in the newer version the otp_secret must only be the string, no json or whatsoever. Something like this

`"7+cOhwxYt9UJxLgaMBnY0K1vJI0LS2vT"`

The above string can be generated using class method called ```ruby 
User.generate_otp_secret
```

Following is the way to return svg to show in the view

```ruby
	def qrcode
		issuer = "My Application Name"

		# Generate a TOTP provisioning URI with the issuer
		totp = ROTP::TOTP.new(current_user.otp_secret, issuer: issuer)
		provisioning_uri = totp.provisioning_uri(current_user.email)
		qrcode = RQRCode::QRCode.new(provisioning_uri)

		@svg = qrcode.as_svg(
		  offset: 0,
		  color: '000',
		  shape_rendering: 'crispEdges',
		  module_size: 3,
		  use_path: true,
		  file: nil
		)	

	end

```
Then you can show the svg in the view easily

```html
    <div class="text-center">
      <p>Scan the Below QR Code with Google Authenticator or Microsoft Authenticator.</p></br>
      <%= raw @svg %>
  </div>
```