teleren/devto huggingface dataset:
How to install and configure Golang
Tags: go, beginners, devops
Published: 2024-07-11 13:44:25

In this article, you will see how to install Golang and configure it to use the private GitHub repositories of your company.

## Right to the point

> BE SURE TO REPLACE `{VERSION}` WITH THE DESIRED VERSION THAT YOU WANT!!!

### Download Go

```bash
curl -OL https://golang.org/dl/go{VERSION}.linux-amd64.tar.gz
```

### Install Go

```bash
sudo tar -C /usr/local -xvf go{VERSION}.linux-amd64.tar.gz
```

### Configure Go

```bash
sudo nano ~/.profile
# Or with zsh:
sudo nano ~/.zprofile
```

Paste this at the end of the file, replacing `{YOUR COMPANY ALIAS}` with your company alias:

```bash
# Golang
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export GOPRIVATE=github.com/{YOUR COMPANY ALIAS}/*
export PATH=$PATH:$GOROOT:$GOPATH:$GOBIN
export PATH="$PATH:$(go env GOPATH)/bin"
```

Run this to update your terminal and apply the changes:

```bash
source ~/.profile
# Or with zsh:
source ~/.zprofile
```

### Configure SSH key on GitHub

Run this, and remember to replace \`{YOUR EMAIL}\` with your email:

* Run this and only press enter until the command stop
    
* The ssh key **MUST NOT** have a password
    

```bash
ssh-keygen -t ed25519 -C "{YOUR EMAIL}"
```

```bash
eval "$(ssh-agent -s)"
```

```bash
ssh-add ~/.ssh/id_ed25519
```

```bash
cat ~/.ssh/id_ed25519.pub
```

Copy the content displayed on your terminal, including your email. **COPY EVERYTHING** that the previous command returned.

Go to GitHub and follow [this tutorial](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account#adding-a-new-ssh-key-to-your-account) to add the SSH key.

### Configure Git

```bash
sudo nano ~/.gitconfig
```

Paste this at the end of the file:

```bash
[url "ssh://git@github.com/"]
	insteadOf = https://github.com/
```

## Done!

Now you can work with Golang and private repositories on GitHub with no problems!
Software Analyst Engineer Java - Full remote
Published: 2024-07-11 13:48:00

InRebus Technologies ricerca per azienda cliente uno/a: siamo alla ricerca di uno/a: Software Analyst Engineer 

https://zinrec.intervieweb.it/gruppofos/jobs/software-analyst-engineer-java-full-remote-46064/it/


**Principali attività:**

Come Software Analyst Engineer lavorerai all'interno del team di sviluppo e ti occuperai di supportare il feature lead e l'architetto software nell'analisi e la progettazione del codice applicativo.
Supporterai attivamente il feature lead nelle analisi delle nuove funzionalità, prendendoti in carico il dettaglio di specifici aspetti che documenterai nel documento SRS, fino a scomporre in task l’attività.
Ti occuperai della progettazione, assicurandoti che il software rispetti le linee guida definite dall'architetto software e dal feature lead.
Supervisionerai il team di sviluppo e all'occorrenza ti farai carico di specifici task di sviluppo, diventando quindi responsabile della micro progettazione, dell'implementazione, e del test unitario del task, assicurandoti che il codice sia corretto, manutenibile e performante.
Supporterai il team di QA nel processo di certificazione della funzionalità nei vari ambienti operativi.

**Requisiti:**

-  Architettura software orientata ai microservizi;
-  Analisi dei requisiti;
- Java 8+ (preferenziale è la conoscenza delle ultime feature di java fino alla 17/21);
- Spring Boot;
- GIT;
-  buona padronanza dell'OOP e dei design pattern;
- buona padronanza dei concetti di programmazione concorrente;

**costituiscono un plus:**

- esperienza su Reactive;
-  esperienza con strumenti di CI/CD;
- conoscenza del cloud AWS;

**Contratto**: CCNL da determinare in sede di colloquio

**Sede:** Da remoto
Looking for new opportunities...
Tags: career, webdev, java, springboot
Published: 2024-07-11 13:52:03

Hi everyone,
This is my first post on dev.to community. I am currently looking for a job switch in software development roles in India or remote. I have been searching for opportunities for a long time now and hope that probably posting something here might amount to something.

I am currently working at Cognizant as a Junior Software Developer. I completed my Bachelors in Computer Science Engineering in 2022. I have a total experience of about 2 years 8 months (8 months in internship + 2 years in full-time). My proficiencies are Java, Spring Boot, MySQL. I am currently exploring technologies in frontend like- HTML, CSS, JavaScript and React along with NoSQL Databases like MongoDB.

If you feel that my profile is fit for some role, please feel free to refer me. I have attached my resume if you want to review my skills and experience along with the work I have done. It also has my contact information along with my LinkedIn, you can connect with me if you have any doubts or questions. :)

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

A huge thanks to anyone who refers to me and anyone who can see this post, please share my post with anyone you feel might be able to help. It would really be a huge favor. For anymore follow ups, you can also reach me in my comment box.

Love,
Bhumika Agarwal
Software Developer
How to create a Linux Virtual machine
Tags: virtualmachine, cloudcomputing, deveops, windowsserver
Published: 2024-07-11 13:52:47


A virtual machine (VM) is defined as a computer system emulation, where VM software replaces physical computing infrastructure/hardware with software to provide an environment for deploying applications and performing other app-related tasks. This article explains the steps in creation of a virtual machines. 

login into portal.azure.com and search for virtual machine then select it
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ewordgni6t46akp0ba48.png)
click on create and select Azure virtual machine
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l2vf0uodywh0aj2c73d7.png)
on the project details, select subscription then create the resource group (named UgonnaRG)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/egcsk8m3cmxe1a8rxhi7.png)
In instance details, give virtual machine a name (WednesdayVM). 
Select region as North Europe
leave the rest as default and go to image, then select Ubuntu server 22.04 LTS*64 Gen2.
then select size Standard_B1s - 1 vcpu, 1 GiB memory
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n0241ayu0ji6rnn0dkpm.png)
In Administrator account, in the Authentication type select password.
Then create username and password
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gpuwyidahr6fykc3gs5w.png)
In inbound port rules select, for Public inbound ports leave as default. For Select inbound ports, select SSH (22) and HTTP (80)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ix94az6z8mtv13bmx3iu.png)
on the basic tab, go to monitoring, in the Diagnostics and the in Boot diagnostics select disable
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b77iihrdb95jim56v8zn.png)
to go the tag tab, input name and values
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0ko52p5zdph6jw6jkmwn.png)
click review and create
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/71nortvlg79li62mia64.png)
go to resources, click on the public ip address and extend the timeout to 30minutes
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3ircdzhfvtvys9iw9p9j.png)
Undo Git Commands
Published: 2024-07-11 14:03:22

Hey folks,

I've found a neat way to add an undo feature to Git.

As you all know, Git itself relies on the `.git` folder, which contains all versioning information and metadata for your repository. Every Git command you run, from `git add` to `git commit`, modifies files within this `.git` folder. By using Mercurial (`hg`) to version control the `.git` folder itself, `rgc` (short for risky-git-command) allows you to save these changes and easily revert to this state if something goes wrong.

Here's how it adds in your workflow:

`$ rgc do
$ <perform some risky git command>
Messed up?
$ rgc undo`

Whether you're just starting with Git or have been using it for years, `rgc` can be a valuable tool to aid you in difficult situations.

This is a shell script (`rgc`) that's only 1KB in size. It's designed to be efficient and easy to use. For ubuntu users, I've built a `.deb` package, you can install using `dpkg -i rgc.deb`

Check the repo on Github: https://github.com/0xdsaini/rgc
Who is the owner of MyGlamm India?-81678<~45548..
Tags: javascript, beginners
Published: 2024-07-11 14:04:00

Need Help? Contact us at hello@myglamm.com or you can reach us at081678 45548// 022-62593200 to learn more about our myglammINSIDER program and perks.Need Help? Contact us at hello@myglamm.com or you can reach us at081678 45548// 022-62593200 to learn more about our myglammINSIDER program and perks.
Who is the owner of MyGlamm India?-81678<~45548..
Tags: javascript, beginners
Published: 2024-07-11 14:05:12

Need Help? Contact us at hello@myglamm.com or you can reach us at081678 45548// 022-62593200 to learn more about our myglammINSIDER program and perks.Need Help? Contact us at hello@myglamm.com or you can reach us at081678 45548// 022-62593200 to learn more about our myglammINSIDER program and perks.
What's Next For SWE Students?
Tags: softwareengineering, software
Published: 2024-07-11 14:21:27

What's up SE Nerd!! I'm back with another post. This one won't be as technical as I will be using this one to reflect on my last 15 weeks of a SWE Bootcamp!


First of all, I want everyone reading this to know that I didn't know much about computers or much about technology before I started this program. I was halfway through a SWE degree and decided I was ready to jump into it, crunch as much learning as I can and start getting some experience in this field.


When I first started this course, I didn't know what to expect. After taking the prerequisites to get into this course, I knew it was going to be a challenge, but I also knew that if I put as much time and effort into it I would get results. That's how I approached this from the beginning and I never strayed away from that. I put everything I have into this course. There were times were I would stay up until 3 am debugging or just knowing I had a lot to do to soak up this information in a short amount of time. 


As I continued, the extra time and effort was all I needed to not just succeed, but to push limits of my new skills and knowledge. I would shoot past the moon for any project, I would continue doing labs or challenges to see other ways of doing things and getting better results.


This course has sparked a fire in me. This is what I was built for. I love it and I never want to get off the computer now!!


I want to share what makes this field special for me. I have never been an artistic person, and it's unfortunate because I have a very creative mind. I have never had a job or been involved with anything that I can actually put my creative thoughts into action. This is it, this is my art, this is my comfort zone, this is IT!! I absolutely love putting in so much effort to see amazing results.


I hope my blogs have been a good guide to starting your SWE journey, I will continue to blog about the job process and where this education takes me from here. Good luck to all of you, and it's always good to be a SE Nerd!!
Unlocking the Power of 2-in-1: How to Thrive in Online Business and Network Marketing
Tags: onlinebusiness, networking
Published: 2024-07-11 14:29:08

Introduction

In today's fast-paced digital landscape, [entrepreneurs](https://legenddiamondgeneration.com) are constantly seeking innovative ways to diversify their income streams and maximize their earning potential. Two lucrative opportunities have emerged as frontrunners in the business world: online business and network marketing. But what if you could combine the benefits of both into a single, powerful venture? Welcome to the 2-in-1 approach, where you can leverage the strengths of online business and network marketing to achieve unparalleled success.

Part 1: Building a Strong Online Foundation

- Create a professional website or blog to establish your online presence
- Develop valuable content to attract and engage your target audience
- Utilize social media platforms to expand your reach and build your brand

Part 2: [Network Marketing](https://legenddiamondgeneration.com) Essentials

- Understand the fundamentals of network marketing and its benefits
- Choose a reputable network marketing company that aligns with your values
- Build a strong network by connecting with like-minded individuals

Part 3: Combining Online Business and Network Marketing

- Utilize online marketing strategies to promote your network marketing business
- Leverage your network to drive traffic to your online content
- Create a sales funnel that integrates both online business and network marketing

Conclusion

By embracing the [2-in-1](https://legenddiamondgeneration.com) approach, you can unlock the full potential of online business and network marketing. Remember to stay focused, adapt to changes in the market, and continuously educate yourself on the latest strategies and best practices. Unlock the power of 2-in-1 and thrive in today's digital landscape!**
Place 2 is on it's way!
Published: 2024-07-11 14:30:22

Little teaser for you:

![Place 2 sneak peek](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8h21fp6kxdjc9a9djn4v.png)

It's about 10% done, but could be completed by the end of this year.

Some fun stuff:

Place (v1) will be open sourced! You will be able to run v1 yourself, and have people visit.
Sharing state between unrelated React components
Tags: nextjs, javascript, react
Published: 2024-07-11 14:32:37

Want to show how you can share any serializable data between React components, e.g. client components in NextJS.

We have few unrelated components:

![Example app UI](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8bv8lzxc4423tkizgcvv.png)

Let's create an object that will contain initial state
```typescript
export const state: { count: number } = { count: 0 };
```

We can store data in a `WeakMap`, `state` will be a key to access it. Also, will need a `subscribers` array.
```typescript
const stateMap = new WeakMap<object, object>();
const subscribers: (() => void)[] = [];
```

Now let's write a hook to subscribe to data changes.

```typescript
export function useCommonState<T extends object>(stateObj: T) {
  // more efficient than `useEffect` since we don't have any deps
  React.useInsertionEffect(() => {
    const cb = () => {
      const val = stateMap.get(stateObj);
      _setState(val!);
    };
    // subscribe to events
    subscribers.push(cb);

    return () => {
      subscribers.slice(subscribers.indexOf(cb), 1);
    };
  }, []);
}
```

Now let's add logic related to get and set state
```typescript
  // all instances of hook will point to same object reference
  const [state, _setState] = React.useState<typeof stateObj>(() => {
    const val = stateMap.get(stateObj) as T;
    if (!val) {
      stateMap.set(stateObj, stateObj)
      return stateObj
    }
    return val
  });

  const setState = React.useCallback((newVal: object) => {
    // update value
    stateMap.set(stateObj, newVal);
    // notify all hook instances
    subscribers.forEach((sub) => sub());
  }, []);

  return { state, setState };

```

And now can use it in 3 components like
```typescript
import { state as myState } from './state';
//...

const { state, setState } = useCommonState(myState);

<button
  onClick={() => setState({ count: state.count + 1 })}
  className="p-2 border"
>
  +
</button>
// ...
Component A<div>Count: {state.count}</div>
```

![Final app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ezs79hh5m9xhtbtb099s.gif)


You can see how it works here https://stackblitz.com/~/github.com/asmyshlyaev177/react-common-state-example
Or here https://codesandbox.io/p/github/asmyshlyaev177/react-common-state-example/main
Or in github https://github.com/asmyshlyaev177/react-common-state-example


Check out my library for NextJS based on this principle https://github.com/asmyshlyaev177/state-in-url

Tnx for reading.
Episode 24/27: SSR Hybrid Rendering & Full SSR Guide
Tags: webdev, javascript, programming, angular
Published: 2024-07-11 14:44:37

We got a new RFC focusing on "hybrid rendering" and a full SSR guide.

{% embed https://youtu.be/a4ABBJAwj0Y %}

## RFC SSR Hybrid Rendering

Although Angular 18.1 was released this week (coverage will follow in the next episode), a new RFC lays out future features for SSR. 
The RFC foresees a separate router configuration file where we can define the rendering strategy per route.

That could be 

- Pre-rendering (**SSG**): The rendering happens already during the build.
- Server-side rendering (**SSR**): The rendering occurs on the server on demand.
- Client-side rendering (**CSR**): This is without server, everything happens in the browser.

That's also why this RFC is called "hybrid rendering," not to be confused with hybrid change detection, which we have since Angular 18.

Pre-rendering will also allow users to define the routes dynamically via an asynchronous function. The RFC should fix some issues that users raised in the past.

RFC means that we are all invited to provide feedback.

Alan Agius, the author of the RFC, also mentioned that File-Based routing, as we find it in Analog, is not off the table but a topic for the future.

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

## Full SSR Guide

Alexander Thalhammer has written an article that covers everything you need to know when you want to start using SSR.

Starting with the configuration, how to debug it, and things you have to be aware of. For example, the two render hooks that only run on the browser and how to work around the missing document or window object on the server.

He also mentions the meta-framework analog and how SSR and Micro Frontends work together.

{% embed https://www.angulararchitects.io/blog/complete-guide-for-server-side-rendering-ssr-in-angular/ %}
Getting Started with OLA Maps Python package
Tags: python
Published: 2024-07-11 14:57:29

Recently OLA announced their new [Maps platform](https://maps.olakrutrim.com/) and they're giving it away for free for a year. If you're planning to use it in your project, I've built a new Python package that makes it easy to integrate OLA Maps functionality into your Python projects. Let's explore how to use this package.

## Installation

First, install the package:

```bash
pip install olamaps
```

## Authentication

Before you can use the OLA Maps API, you need to authenticate. The package supports two methods:

1. Using an API key:

```python
import os
os.environ["OLAMAPS_API_KEY"] = "your_api_key"

# OR
client = Client(api_key="your_api_key_here")
```

2. Using client ID and client secret:

```python
import os
os.environ["OLAMAPS_CLIENT_ID"] = "your_client_id"
os.environ["OLAMAPS_CLIENT_SECRET"] = "your_client_secret"

# OR
client = Client(client_id="your_client_id", client_secret="your_client_secret")
```

## Basic Usage

Here's how to use the main features of the package:

```python
from olamaps import Client

# Initialize the client
client = Client()

# Geocode a text address
geocode_results = client.geocode("MG Road, Bangalore")

# Reverse geocode a latitude-longitude pair
reverse_geocode_results = client.reverse_geocode(
    lat=12.9519408,
    lng=77.6381845
)

# Get directions
directions_results = client.directions(
    origin="12.993103152916301,77.54332622119354",
    destination="12.972006793201695,77.5800850011884"
)
```

## Conclusion

The olamaps package provides a simple way to integrate OLA Maps functionality into your Python projects. Whether you need to geocode addresses, reverse geocode coordinates, or get directions, this package has you covered.

Find this project on [PyPI](https://pypi.org/project/olamaps/) and on [GitHub](https://github.com/adayush/olamaps-python) (Would love some ⭐️)

Remember, this is an unofficial package and is not endorsed by OLA. Always make sure you comply with OLA's terms of service when using their API.

Happy mapping!
Creating an Azure Virtual Network with subnets
Tags: azure, network, subnet, tutorial
Published: 2024-07-11 15:11:32

Setting up virtual networking in Azure involves creating and configuring an Azure Virtual Network (VNet), which allows you to securely connect Azure resources to each other. 

Here's a step-by-step guide to setting up virtual networking in Azure:

**Step 1: Sign in to the Azure Portal:**
Go to portal.azure.com

**Step 2: Create a Virtual Network:**
- In the Azure portal, click on Create a resource.
- In the search box, type Virtual Network and select it.
- Click on Create.

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

**Step 3: Configure the Virtual Network:**
- Basics: Provide the necessary details such as Subscription, Resource group (you can create a new one or use an existing one), and Name for your VNet.
- Region: Select the region where you want to deploy your VNet.

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

**Step 4: Click on Next - IP Addresses:**
Address space: Define the IP address range for your VNet. We will be using 192.148.30.0/26 in this article.

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

Note: If you are creating more than 1 subnet, click on Add IPV4 Address space.
You can also delete or edit the default subnet to add yours.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wt39n5xmcis3pq73ft8y.png)

**Step 5: Create Subnets**
- In the Subnets tab, click on + subnet.

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

- Enter your subnet name and enter your IPV4 address range which is 192.148.30.0/26, starting address and size.

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

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

**Note:** You can create multiple subnets by repeating the above step. 

We will be creating 4 subsets in this post.
Below image is another sample of the subnet i created using SALES as the name.

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

Also note that the IPv4 address range and starting address will change.
After adding your subnets, click Review + Create.

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

Then click on Create.

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

Click on Go to resources when deployment is done.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/84ivv8uez1zorp6ifyik.png)
From the Overview page, navigate to the subnets from the settings pane.

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

I hope this guide provides an overview of setting up a virtual network in Azure.