teleren/devto huggingface dataset:
How To Use HTTP Requests in Flutter
Tags: flutter, ios, programming, tutorial
Published: 2024-01-18 17:17:47

In Flutter, you can make HTTP requests using the `http` package. To make a request to an HTTP URL without SSL (no HTTPS), you can follow these steps:

1. Add the `http` package to your `pubspec.yaml` file:

```yaml
dependencies:
  http: ^0.13.3
```

Make sure to run `flutter pub get` to fetch the package.

2. Use the `http` package to make the HTTP request in your Dart code:

```dart
import 'package:http/http.dart' as http;

void makeHttpRequest() async {
  String url = "http://example.com";  // Replace with your HTTP URL

  try {
    http.Response response = await http.get(Uri.parse(url));

    // If the request was successful (status code 200)
    if (response.statusCode == 200) {
      print("Request successful");
      print("Response content:");
      print(response.body);
    } else {
      print("Request failed with status code ${response.statusCode}");
    }
  } catch (e) {
    print("Error making the request: $e");
  }
}

void main() {
  makeHttpRequest();
}
```

Replace `"http://example.com"` with the actual URL you want to request.

Keep in mind that making HTTP requests without SSL may have security implications, and it is generally recommended to use HTTPS for secure communication. If possible, consider using HTTPS instead of HTTP.

Also, be aware that many modern platforms and services may require HTTPS, and some platforms might restrict or discourage the use of unsecured connections.

Always consider the security implications and requirements of your application when making these decisions. If your server supports it, consider enabling HTTPS for a more secure communication channel.
Shepard Funeral Chapel
Published: 2024-01-18 17:10:50

**Products and Services**: 

funeral home, funerals, funeral services, cremations, cremation services, cremation with memorial service, direct cremations, burials, pre-need funeral services, pre-planning funeral services, life celebrations, memorial ceremonies, caskets, vaults, memorials, urns, honoring life, grief resources, veteran services, military honors, donation to science, flameless cremation, water cremation, aquamation, alkaline hydrolysis, celebration of life, Jefferson Barracks National Cemetery Services, receptions, luncheons, repass, keepsakes, jewelry, fingerprint jewelry, aftercare, ship outs, ship-out services, ship-in services, limousine and motorcycle escort services, catering services, graveside services

**Professional Associations**: 

Association of St. Louis Owned and Operated Funeral Homes, Spirit of St. Louis County Rotary Club (Rotary International), Overland Business Association, Missouri Funeral Directors and Embalmers Association (MFDEA), National Funeral Directors Association (NFDA), Missouri Funeral Trust

**Credentials**: 

Established in 1906, Licensed Funeral Director, Licensed Preneed Director, Serving Families for Over 100 Years
Understanding the "Omit" Utility Type in TypeScript
Published: 2024-01-18 17:09:00

TypeScript offers a variety of utility types to work with. One of these is the `Omit` utility type, which allows us to remove certain properties from types.


### How does it work ?

The `Omit` utility type takes a type and properties as arguments, then removes them from the given type. For instance, if you have a type `UserResponse`:


```typescript
type UserResponse = {
    id: string;
    name: string;
    age: number;
    createdAt: string;
    updatedAt: string
}

```

And you want to remove createdAt and updatedAt, you can use the Omit utility type as follows:

```typescript
type User = Omit<UserResponse, "createdAT" | "updatedAt">
```

Now, `createdAt` and `updatedAt` are no longer part of the `User` type.

I hope this helps clarify the usage of the `Omit` utility type in TypeScript.
📌 How to Use the Azure DNS Resolver for Private Network DNS Management?
Tags: network, azure, design
Published: 2024-01-18 17:00:00

## ❶ Description

Azure DNS Private Resolver enables you to query Azure DNS private zones from an on-premises environment and vice versa without deploying VM based DNS servers. This is a first-party service that eliminates the need for the IaaS system to be the DNS forwarder for the private endpoint name resolution.

## ❷ Architecture components

1. **RGS:** Containers for organizing related Azure services. We defined 2 RGS, one for the hub and one for the spoke.
2. **VNets** are used to create isolated networks within Azure. The configuration defines a hub network and a spoke network.
3. **Subnets** are subdivisions of a VNet. There are several subnets defined, including those for outbound DNS resolution, inbound DNS resolution, the default subnet for the hub, the subnet for Azure Firewall, and the default subnet for the spoke.
4. **DNS Resolver** provides DNS resolution within the VNet. There are resources defined for inbound and outbound endpoints, as well as forwarding rules.
5. **Azure Firewall and Firewall Policy** provide network security and filtering for the resources within the VNet.
6. **Private DNS Resolver DNS Forwarding Ruleset and Forwarding Rule** define how DNS queries are forwarded by the Azure DNS Resolver.
7. **VMs** are computing resources on which you can run applications and services. The configuration defines virtual machines for both the hub and the spoke.
8. **PostgreSQL Server** is a managed DB service that provides a PostgreSQL server in the spoke resource group.
9. **Private Endpoint** allows a private connection from the virtual network to Azure services, such as the PostgreSQL server.
10. **VNet** **Peering** establishes connectivity between the hub and spoke virtual networks.
11. **Network Interfaces** are attached to VMs or other resources to enable network connectivity.

🛡️ Once you clone this architecture from the template catalog, you can also scan it with the native CI/CD engine of Brainboard.co to know its security posture, its cost, before you deploy it.

😍 Also, when you communicate with your colleagues, it's much easier to show the architecture and explain. Not everyone is a Terraform guru.

🚀 You can get it here: https://app.brainboard.co. 


![design to code](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ucj25v9h63ciqj93z78q.png)


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


![Terraform variables](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4ztzlgjujml8yd7nssl5.png)


![CI/CD](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yewffydc7jxa8b089xf3.png)
Scrolling Secrets: Make Your Website Awesome!
Tags: ux
Published: 2024-01-18 16:28:10



Hey there, web designers! Let's dive into some cool tricks to keep people scrolling on your website. We want users to have a blast as they scroll down, so here are some easy tips to make your designs stand out and beat the competition.

### Picture Perfect: Use Awesome Images

Sprinkle your page with cool pictures all the way down. This keeps things interesting and makes users remember your site. Think of it like telling a story with pictures – super fun!

### Tell a Story: Keep Things Flowing

Imagine your website is a storybook. Arrange things in a way that makes sense, so users keep reading. This not only keeps them interested but also helps your website show up higher on Google searches.

### Fun Stuff: Let Users Play Along

Make your website like a game. Add quizzes or polls as users scroll. This gets them involved and helps your site get noticed more by search engines. Win-win!

### Stay Put: Stick with Users as They Scroll

Ever get lost on a webpage? Avoid that! Make a menu that stays at the top while users scroll. It's like a navigation superhero – always there when you need it.

### Mobile Magic: Make It Work Everywhere

Remember, lots of people use phones to surf the web. So, make sure your design looks awesome on phones too. This not only keeps users happy but also impresses search engines.

### Say "Click Me!": Create Awesome Buttons

At the end of your page, put buttons that say things like "Subscribe" or "Explore More." These are like invitations for users to do cool stuff on your site. It's like the grand finale!

By trying out these scroll secrets, you'll turn into a web design superstar. Make every scroll count and leave users wanting more. Your journey to becoming a web design pro starts with each scroll – so let's make it a fun one! 🚀
Hey Siri: Update Siri; Activate ChatGPT with Siri
Tags: tutorial, ai, productivity
Published: 2024-01-18 16:20:04




Hey Dev.to community!

I hope you're all doing great! Today, I'm here to share a nifty trick for boosting productivity: **activating ChatGPT with Siri**.


_Or more eloquently put: Replacing Siri for all your questioning needs! It's about time to Update Siri ourselves!_
 
As a software architect running my own business, efficiency is the name of the game, and this combo has been a game-changer for me.
And between you and me, it's surprising that Siri didn't get this upgrade sooner. We've been waiting for it like Apple CEO Tim Cook took a long lunch break. Hah-hah-hah. *insert snooze emoji*

## The Solution Is Here 
_Important Note: This tutorial is tailored for iPhone users running the iOS operating system with the Siri voice assistant. Devices running alternative operating systems or featuring different voice assistants might have their unique tricks. This tutorial may not be applicable in those cases._

**0. Install ChatGPT (The Official version by OpenAI on App Store: BEWARE FAKES)**

**1. Shortcut Magic**

Head to your Siri **Shortcuts** ("Hey Siri open Shortcuts") app and add ChatGPT with a "start voice conversation" prompt to your library. Customize the phrase to something memorable – I went with "Update Siri." Because I find it terribly funny.
- Author note: You can also use the default built-in command "Hey Siri Ask ChatGPT" 


**2. Invoke the Power**

Now, whenever you need your virtual assistant (read: ChatGPT), say your chosen trigger phrase to Siri. For me, it's "Siri, Update Siri."

**3. Ask Away:**

Once Siri recognizes your prompt, ChatGPT springs into action. Ask any burning questions or seek insights on your latest coding challenge. Siri will not only send your inquiry to ChatGPT but will also read out the response loud and clear.
- Autor note: Alternatively, you can make a custom shortcut that opens a direct voice conversation with ChatGPT - Pending a phone unlock.


![screenshot of iPhone iOS Shortcuts screen setting up ChatGPT to work with Siri Voice commands](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jzlr6fle1wgdw79fw3ow.png)


**4. Chat Aloud, Learn, Inquire:**

Siri's old tricks of leaving you in the dark, struggling with basics, and playing the silent treatment are so last season. Enter ChatGPT – your upgraded assistant, the genius Siri wishes it could be. ChatGPT takes the wheel.

Stay sharp, stay curious!

Cheers,
S3
Passionate About Updating Siri


![image of an eagle, hand drawn with pencil or ink, black and white 2024](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/onocytrkw8gi98gs8i5g.jpg)

_Dev.To Disclaimer. This post has been in some part, to some degree intelligently composed and refined with the assistance of AI or LLM technology. It in no way replaces or undermines the creative prowess of the original author, but merely assists in finding a common voice and formatting that is friendly for all readers_
Pag-unlad ng Kaalaman sa Filipino
Published: 2024-01-18 15:59:44

Sa pag-unlad ng ating wika, maraming bahagi ang nagiging sentro ng pagsusuri upang mapalalim ang ating pag-unawa sa kahalagahan ng bawat elemento. Isang aspeto na madalas na hindi napagtuunan ng sapat na atensiyon ay ang mga pang-abay na ingklitik. Sa artikulong ito, tatalakayin natin ang kahalagahan ng pagsusuri sa **[mga ito sa wika](https://kahalagahan.com/ingklitik-halimbawa)** ng Filipino.

Ang Ingklitik sa Wika: Ano nga Ba ito?

Ang mga ingklitik ay bahagi ng pagsasalita na karaniwang kaakibat ng mga salitang nauuna nito. Sa Filipino, kadalasang ginagamit ang mga ito upang magbigay-diin, magbigay-linaw, o magbigay-dagdag na impormasyon sa pangungusap. Ang pang-abay na ingklitik ay may malaking bahagi sa pagpapahayag ng damdamin, pagsasaad ng kaakit-akit na paraan, at pagbibigay ng kahulugan sa mga pahayag.

Kahalagahan ng Pagsusuri sa Pang-abay na Ingklitik: Pag-unlad ng Komunikasyon

Sa pagsusuri sa pang-abay na ingklitik, bukas ang pinto ng ating kaalaman sa mga subtil na nuansya ng wika. Ang maayos na pag-unawa sa paggamit ng mga ito ay nagbibigay daan sa mas mabisang komunikasyon. Ang mga ingklitik, sa kanilang simpleng anyo, ay may kakayahang magdulot ng malalim na pag-unawa sa mensahe ng isang pahayag.

Halimbawa ng Pang-abay na Ingklitik: Isang Gabay

-ng: Ginagamit ang pang-abay na ito upang magbigay-linaw sa relasyon ng dalawang salita. Halimbawa, "gusto ng bata" kung saan ang "-ng" ay nagpapahayag ng ugnayan sa pagitan ng "gusto" at "bata."

-ng mga: Ang pagdagdag ng "mga" sa pang-abay ay nagbibigay ng diin sa pangkat o dami ng bagay. Halimbawa, "bahay ng mga bulaklak" kung saan ang "-ng mga" ay nagbibigay-diin sa dami ng bulaklak sa bahay.

Kung Paanong ang Pagsusuri ay Nakakatulong sa Ating Pagsasalita

Sa pag-unlad ng ating kaalaman sa pagsusuri ng pang-abay na ingklitik, mas nagiging malinaw ang ating pagsasalita. Nagiging mas masigla at mas eksaktong nailalarawan natin ang ating mga kaisipan. Ang pag-unawa sa tamang paggamit ng mga ito ay nagpapabuti ng ating abilidad na makipag-ugnayan at magbigay-kahulugan sa bawat pahayag.

Kahalagahan.com: Pundasyon ng Kaalaman

Sa paghahanap ng masusing kaalaman hinggil sa mga aspeto ng wika, maaari tayong dumayo sa isang mapagkakatiwalaang yugto. Ang Kahalagahan.com ay isang online na yugto ng karunungan at kaalaman. Narito ang link patungo sa mas marami pang impormasyon hinggil sa pagsusuri sa pang-abay na ingklitik sa wika: Pagsusuri sa Pang-abay na Ingklitik sa Wika - **[Kahalagahan.com](https://kahalagahan.com)**.

Sa paglalakbay natin tungo sa mas mataas na antas ng kasanayan sa wika, mahalaga ang pag-unlad ng ating kaalaman sa bawat bahagi nito. Sa tulong ng pagsusuri sa pang-abay na ingklitik, nagiging mas bukas ang ating daan patungo sa mas malalim na pag-unawa sa ganda at kayamanan ng Filipino.
VS Code - Fix a task automation issue - `The terminal process failed to launch (exit code: 127)`
Tags: vscode, productivity
Published: 2024-01-18 15:58:10


I like to run a web server automatically whenever I open a web project in VS Code. I use VS Code [tasks](https://code.visualstudio.com/docs/editor/tasks) to do this. Suddenly, this has stopped working, without rhyme or reason! 😓

I was greeted with the following error in the integrated terminal:

```shell
-> Executing task: pnpm dev

zsh:1: command not found: pnpm

The terminal process "/usr/bin/zsh '-c', 'pnpm dev'" failed to launch (exit code: 127).
Press any key to close the terminal
```

Nice to meet you exit code 127! Let's get to know each other! 🤗

## The source of the issue

If you are not familiar with tasks in VS Code, check out [this post](https://www.roboleary.net/vscode/2020/10/19/vscode-task-onstartup.html) that covers this very use case.

The task is running the (p)npm script called "dev". You can see the *tasks.json* file below.

```json
{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Start server on startup",
      "type": "shell",
      "command": "pnpm dev",
      "presentation": {
        "reveal": "always",
        "panel": "new"
      },
      "runOptions": { "runOn": "folderOpen" }
    }
  ]
}
```

The "dev" script is running the [eleventy](https://www.11ty.dev/) server in dev mode. The details of the script are not important for this discussion, but to round out the background here is an abbreviated version of my *package.json*:

```json
{
  "name": "some-eleventy-website",
  "scripts": {
    "dev": "eleventy --serve --incremental --quiet",
  }
}
```

If I open a new integrated terminal and run `pnpm dev`, it runs the command successfully! It looks like it is *specific* to tasks.

The problem is that tasks are executed with Zsh using `/bin/zsh -c`, which starts a non-login, non-interactive session. This means that *~/.zshrc* and *~/.zprofile* are not sourced by Zsh. In my case, this means that I can't run the necessary local npm packages in a task. The solution should be to have tasks run in an interative shell session. How do we do that?

## The fix

To start an interative Zsh shell session we want to pass the `i` flag to Zsh. After some digging, I found that there is a [task/debug profile setting](https://code.visualstudio.com/docs/terminal/profiles#_configuring-the-taskdebug-profile) that let's you specify the environment for tasks. The setting has a version for each platform (windows/linux/osx) in the form of `terminal.integrated.automationProfile.<platform>`. For example, it would be `terminal.integrated.automationProfile.linux` for linux.

The fix for my linux setup was to add the following to the *settings.json*:

```json
"terminal.integrated.automationProfile.linux": {
    "path": "/usr/bin/zsh",
    "args": ["-i"]
}
```
How to Easily Convert Your MS Access Data to MySQL
Tags: mysql, mariadb
Published: 2024-01-18 15:51:09

Microsoft Access is a relational system for managing databases that is used to create small-scale databases for a single user or small teams. MySQL is a robust open-source relational database management system for more extensive data volumes and web applications.

With the help of dbForge Studio for MySQL, you can easily migrate data from Microsoft Access to MySQL and preserve data and functional integrity. This process will allow you to utilize a more scalable and powerful MySQL infrastructure for convenient management of your database contents.

Read in full to get more info - https://blog.devart.com/how-to-convert-a-database-from-microsoft-access-to-mysql.html
Connecting to the underlying EC2 instance that is running your AWS Batch job
Tags: aws
Published: 2024-01-18 15:47:06

[AWS Batch](https://aws.amazon.com/batch/) is a great service for submitting asynchronous and background work to. It's a managed service that adds job queue and compute scaling functionality to AWS container orchestration services - [ECS](https://aws.amazon.com/ecs/) and [EKS](https://aws.amazon.com/eks/) for these types of workloads. AWS Batch is optimized for jobs that are at least a few minutes long, and I've run days-long processes on it.

Sometimes you need to connect to the underlying EC2 instance to debug, or inspect the outputs of running containers, but the underlying container instance ID is not directly available to you using the Batch API. For processes running on ECS I wrote a small Python script that queries for the underlying instance ID of the job using [`boto3`](https://docs.aws.amazon.com/pythonsdk/) (and a little `regex`) and then prints out a CLI command to connect to the instance using a [AWS Systems Manager session](https://aws.amazon.com/systems-manager/features/#Session_Manager). The script takes in an AWS Batch job ID as a required parameter. 


```python
#!/usr/bin/env python 
import boto3, regex

from argparse import ArgumentParser

# get a job id from the command line
parser = ArgumentParser()
parser.add_argument("job_id", help="The AWS Batch job ID to get the EC2 instance ID on which it ran.")
args = parser.parse_args()

# Get a Boto session 
session = boto3.Session()
# Get a client for AWS Batch 
batch_client = session.client('batch')
# Get a client for AWS ECS
ecs_client = session.client('ecs')

# Describe a batch job
job_description = batch_client.describe_jobs(jobs=[args.job_id])

container_instance_arn = job_description["jobs"][0]["container"]["containerInstanceArn"]

# regex for pulling out the ECS cluster ID and container instance ID from a container instance ARN 
regex_pattern = r"arn:aws:ecs:(?P<region>.*):(?P<account_id>.*):container-instance/(?P<cluster_id>.*)/(?P<container_instance_id>.*)"
match = regex.match(regex_pattern, container_instance_arn)
cluster_id = match.group("cluster_id")
container_instance_id = match.group("container_instance_id")

# Describe a container instance and get the instance ID
container_instance_description = ecs_client.describe_container_instances(cluster=cluster_id, containerInstances=[container_instance_id])

ec2_instance_id = container_instance_description["containerInstances"][0]["ec2InstanceId"]

print("To connect to the EC2 instance use the AWS CLI like so:")
print("aws ec2 connect-to-instance --instance-id " + ec2_instance_id)
```

If you need to find and connect to the underlying EC2 Instance for an AWS Batch job, I hope this script helps. 
   
**_Updated Jan 22, 2024 to use a `boto3.Session` as per advice from [this post](https://ben11kehoe.medium.com/boto3-sessions-and-why-you-should-use-them-9b094eb5ca8e) which I agree with._**
RELIANOID Back on the move!
Published: 2024-01-18 15:45:24

After a necessary break, we are ready to be on the move again! Keep an eye out for our upcoming event announcements. Stay tuned, as we'll be revealing all the exciting details soon. Here's a little hint to pique your interest!

https://www.relianoid.com/about-us/events/

#BackInAction #OnTheMove #EventAnnouncements #StayTuned #ExcitingDetails #ComingSoon #HintDropping #GetReady #RevealIncoming #StayPosted #EventTeasers #KeepAnEyeOut #CantWaitToShare #HintTime #EventRevelation
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lmojh0g9vsqn1s9gojey.jpg)
Mastering Shadow DOM Manipulation with JavaScript and TypeScript
Tags: typescript, dom, javascript, webdev
Published: 2024-01-18 15:33:00

Introduction:
In the world of web development, dealing with Shadow DOM can be both challenging and intriguing. In this post, we'll explore a practical example of overwriting the Shadow DOM using JavaScript and TypeScript. We'll focus on enhancing the appearance of an `ion-range` element by manipulating its Shadow DOM with a concise code snippet.

Code Snippet:
```javascript
const knob: any = Array.from(document.querySelectorAll('ion-range'));

knob.forEach(element => {
  element.shadowRoot.innerHTML = `<style>.range-knob-a > div{background: blue !important;}</style>`;
});
```

Explanation:
The provided code snippet targets `ion-range` elements and overrides their Shadow DOM to customize the appearance. Let's break down the key components:

- **`const knob: any`**: This line selects all `ion-range` elements on the page.

- **`knob.forEach(element => {...}`)**: The `forEach` loop iterates over each selected `ion-range` element.

- **`element.shadowRoot.innerHTML = ...`**: This line directly manipulates the Shadow DOM of each `ion-range`. In this example, it injects a style tag to change the background color to blue.

Benefits and Use Cases:
Understanding how to manipulate the Shadow DOM opens up possibilities for creating highly customized and visually appealing user interfaces. This technique can be applied to various scenarios where you need fine-grained control over the styling of specific elements.

Conclusion:
By delving into the intricacies of Shadow DOM manipulation with JavaScript and TypeScript, you've gained a valuable skill for enhancing the visual aspects of your web applications. Experiment with this approach, and let your creativity flow as you explore the vast possibilities of customizing the Shadow DOM.