teleren/devto huggingface dataset:
Postgres Enterprise Manager(PEM): A quick overview.
Tags: postgres, database, servers
Published: 2023-07-14 14:16:47

**Introduction**

Server monitoring is done to gain insight on activities of users of a platform. One of such tools used in achieving this is the Postgres Enterprise Manager. Postgres Enterprise Manager(PEM) is used in monitoring instances of PostgreSQL and EDB Postgres Advanced server. EDB Advanced server was built on Postgres but with extended features such as enhanced SQL capabilities and database administration. When I talk of Postgres in subsequent paragraphs, I technically refer to these two.

**PEM can monitor the following.**
- A Host which is a server (physical or virtual) running an instance of Postgres or, in my case, my local machine with Postgres installed inside.
- Database server, an instance of Postgres running on a host or several Hosts, again in my case my downloaded Postgres.
- Databases created inside the Postgres installed in my machine or in the Postgres Instance running on a Physical or Virtual server.
PEM have support for different operating systems and can be installed in a different number of ways.

**PEM COMPONENTS AND ARCHITECTURE.**

**PEM Server**: This is made up of an instance of Postgres, a database (known as PEM) which is used for storing monitored data and then an instance of Apache web server(HTTPD) that enables us to view everything on a browser. 

**PEM Agent**: The PEM Agent executes tasks and is responsible for gathering information from the host (Virtual server or, in my case, my operating system) and the instances of Postgres being monitored. An agent can monitor numerous Postgres instances and their bound host, whether the PEM Agent was installed in the same server as the host was or a remote host. The agent can also be installed in a different location from the PEM Server. The agent collects different information from the monitored server and transmits it to the PEM server to be stored. 

**PEM Web Client**: This is a browser based console that connects to the PEM Server. It provides a user interface for managing a server. It makes it easier to access the robust features of PEM such as the REST API integration, dashboard and log manager.

**SQL Profiler**:  This is an optional feature which is quite useful for recording monitored data and query plans for PEM.

In my next blog post, I will write in detail how to install the PEM server and PEM agent on Windows operating system.
Noticed any mistake in this blog post? Please contact me @onumajurubenedicta@gmail.com.

**References**
https://www.enterprisedb.com/docs/pem/latest/pem_architecture/
Getting comfortable with PostgreSQL
Published: 2023-07-14 14:09:58

In this post i will talk about some Postgres basics.
I will assume you have already installed Postgresql.11+ and that you have basic terminal skills.

## Utilities
First, navigate into the postgres directory where it exists, you'll find many files and directories, but we're concerned with the `bin/` directory, which is where you'll find postgres utilities that we'll be using.

## Clusters
Next, run the `initdb` utility inside the `bin/` directory and provide the name for your database cluster using the -D flag
`bin/initdb -D your-cluster-name`

A Database Cluster is a collection of databases. Each cluster is managed by a PostgreSQL server which runs on a single host.
Clusters are stored as a directory referred to as base directory. You can refer to my [guide](https://dev.to/yosefahab/postgresql-summary-pt1-4131) for more information if you're interested.

This will initialize a database cluster which we will be using to create databases.

## pg_ctl
The `pg_ctl` utility is used to manage Postgres servers and processes.
Run `bin/pg_ctl -D your-cluster-name` to start the Postgres server for the cluster you just created. By default, Postgres will use port 5432

## psql
The `psql` utility is used to start an interactive shell with your database cluster so that you can use SQL like you would with any other DBMS.
Run `bin/psql -l` to list all available databases in your cluster. In Postgres version 11+ clusters are created with 3 default databases: `Postgres, Sample0, Sample1`
Run `bin/psql postgres`.
- you can exit this shell using \q
- type 'help' to see the help prompt

## SQL commands
Let's create a new database using the command
`CREATE DATABASE your-database-name;` (Don't forget the semicolon!)
now run `\l` to view all the databases again (from inside the shell this time), you can see the new database was created.
Now instead of exiting and reconnecting to the new database, you can instead use `\c your-database-name` to directly switch to it.

This should be enough to get you started exploring Postgres.
Basic intro about Interface class in Java
Tags: java, abstract, oops, programming
Published: 2023-07-14 14:08:22

Why should we used Interface class?

Usually an Abstract method inherited other abstract class properties and method but it doesn't inherited a constructor. So, then we use interface class and it doesn't have any properties. It have only methods. it only inherited interface constructor. if we inherit a interface class to other class we should use implements keyword.

Parent Class:

```
public interface class Animal {   
//Statement
public interface walk();

}
```

Child Class:

```
public class Dog implements Animal {   

public interface walk(String name, String email){
//Statement
}

}
```
[Desafio] - Agregação de Registros
Published: 2023-07-14 14:04:26

> Conteúdo original em https://twitter.com/zanfranceschi/status/1679497149732585472

---

Ei dev,

Pega esse desafio de agregação de registros!

Dado registros granulares que contêm data e quantidade, crie uma função que os agregue por data em um dicionário e some os atributos "qtd". O código a seguir explica melhor o desafio.

```Python
# dado os seguintes registros
registros = [{"data" : "2023-07-13", "qtd" : 12},
             {"data" : "2023-07-14", "qtd" : 30},
             {"data" : "2023-07-13", "qtd" : 4},
             {"data" : "2023-07-14", "qtd" : 98},
             {"data" : "2023-07-12", "qtd" : 4},
             {"data" : "2023-07-12", "qtd" : 8},
             {"data" : "2023-07-12", "qtd" : 31},
             {"data" : "2023-07-15", "qtd" : 74},
             {"data" : "2023-07-13", "qtd" : 12},
             {"data" : "2023-07-12", "qtd" : 1},
             {"data" : "2023-07-17", "qtd" : 3},
             {"data" : "2023-07-16", "qtd" : 35}]

# desenvolva uma função de agrupamento
resultado = agrupar(registros)

# que retorne o seguinte resultado
{"2023-07-13" : 28,
 "2023-07-14" : 128,
 "2023-07-12" : 44,
 "2023-07-15" : 74,
 "2023-07-17" : 3,
 "2023-07-16" : 35}`
```

---

Se alguém tiver curiosidade sobre como isso poderia ser feito em Clojure, aí está.

```Clojure
(defn agrupar
  [registros]
  (into {} (map (fn [i]
                  [(first i)
                   (->> (map :qtd (second i))
                        (reduce +))])
                (group-by :data registros))))

(agrupar [{:data "2023-07-13", :qtd 12}
          {:data "2023-07-14", :qtd 30}
          {:data "2023-07-13", :qtd 4}
          {:data "2023-07-14", :qtd 98}
          {:data "2023-07-12", :qtd 4}
          {:data "2023-07-12", :qtd 8}
          {:data "2023-07-12", :qtd 31}
          {:data "2023-07-15", :qtd 74}
          {:data "2023-07-13", :qtd 12}
          {:data "2023-07-12", :qtd 1}
          {:data "2023-07-17", :qtd 3}
          {:data "2023-07-16", :qtd 35}])
```
How to Add Firebase to Flutter App (ANDROID, IOS) 2023
Tags: flutter, firebase, ios, android
Published: 2023-07-14 13:51:28

In this Video, I show you How to Add Firebase Setup to Flutter app for Android & IOS 2023.

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

If you have any doubt Or FeedBack, Do let me know in the comments Section.

Thank You :-)
The WebXGuild Chronicles - #01C01: The Symphony of Seamless Integration
Tags: webdev, devjournal, github, opensource
Published: 2023-07-14 13:30:00

Dear reader, as our story continues to unfold, we find Vincent, our Octocat-loving protagonist, in the midst of an exciting development. Maxime Kubik, known as "mkubdev," responds to Vincent's post with an infectious enthusiasm, expressing support and sharing a few ideas for consideration.

Maxime's first idea dances around the concept of "Seamless Integration." Like a skilled conductor leading an orchestra, Maxime envisions the harmony between WebXGuild and popular collaboration and project platforms such as GitHub, GitLab, and Discord. Ah, the sweet melody of integration!

Vincent, with his trademark wit, responds, acknowledging the brilliance of Maxime's suggestion. He envisions the possibilities of bringing these platforms together, creating a symphony of collaboration and streamlined communication. As he ponders the idea, a mischievous glimmer appears in his eyes.

---
> DISCLAIMER: This content was made via Google Translate (an AI tool used to translate languages, you may have forgotten so I reminded it). Why should there be this disclaimer? Because I always considered ChatGPT!!!
BlazingCDN vs BunnyCDN: Which CDN is Right for You?
Tags: cdn, blazingcdn, bestcdn, cdns
Published: 2023-07-14 13:19:01

When it comes to choosing a content delivery network (CDN), there are a number of factors to consider, such as price, performance, features, and support. Two of the most popular CDNs on the market are BlazingCDN and BunnyCDN.

[**BlazingCDN**](https://blazingcdn.com/)
BlazingCDN is a high-performance CDN that offers a variety of features, including global caching, DDoS protection, and analytics. BlazingCDN is known for its fast speeds and reliable delivery.

[**BunnyCDN**](https://bunny.net/)
BunnyCDN is a budget-friendly CDN that offers a basic set of features, including global caching and DDoS protection. BunnyCDN is a good option for businesses that are looking for a CDN without a lot of bells and whistles.

Comparison

Here is a comparison of BlazingCDN and BunnyCDN:

```
[**BlazingCDN**	](https://blazingcdn.com/)
Price	Starts at $0.005/GB
Performance-Fast

[**BunnyCDN**](https://bunny.net/)
Starts at $0.007/GB
Performance-Good
```

The best CDN for you will depend on your specific needs and budget. If you are looking for a high-performance CDN with a wide range of features, BlazingCDN is a good option. If you are looking for a budget-friendly CDN with a basic set of features, BunnyCDN is a good option.

Conclusion

Both BlazingCDN and BunnyCDN are good CDNs, but they offer different features and pricing plans. If you are looking for a high-performance CDN with a wide range of features, BlazingCDN is a good option. If you are looking for a budget-friendly CDN with a basic set of features, BunnyCDN is a good option.

Why BlazingCDN is the best choice

BlazingCDN is the best choice for a number of reasons, including:

- Fast speeds: BlazingCDN is one of the fastest CDNs on the market.
- Reliable delivery: BlazingCDN has a high uptime and a low rate of downtime.
- Global network: BlazingCDN has a global network of servers that can deliver content to users all over the world.
- Affordable pricing: BlazingCDN offers a variety of pricing plans to fit any budget.
- Great features: BlazingCDN offers a wide range of features, including global caching, DDoS protection, and analytics.
- Excellent support: BlazingCDN offers 24/7 support.

If you are looking for a high-performance, reliable, and affordable CDN, BlazingCDN is the best choice.
Basic Structure of HTML
Tags: beginners, html, webdev, tutorial
Published: 2023-07-14 13:17:42

Hyper Text Markup Language(HTML) is in my candid opinion a very straightforward markup language. As a beginner programmer, I can not really boast of having encountered a variety of programming languages (though HTML is a markup language meaning it is rendered by the browser), let's take a look at its structure which literally spells out itself.

The structure of HTML begins with a “document type declaration” which is usually specified first. This tag has no closing tag and is not visible on the web page but it helps to define the document to the browser and the developer as an HTML document. This is then followed by the opening html tag which is stated as <html> it may include a language attribute, to specify language preference,   hence it will look like this <html lang=”en”>.

Next up on the basic structure, we will have the  Head tag which is stated <head>. It is within this head tag that the title tag is found, which specifies the name which the developer chooses to attach to the document in the browser, thus it will be in this format <title>page title</title> after which the head tag closes thus </head>. Also found within the head tag is the meta tag which gives information about the HTML document. Not to be outdone in importance, we have the body tag which is the visible part of the HTML document. It includes tags and any visible element that appears on the browser.

The HTML document is then ended by the Html closing tag, to complement the opening html tag which comes after the document declaration. 


   

```
 <!DOCTYPE html>
    <html lang="en">
      <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <title>Document</title>
      </head>
      <body>
          <header>
              <img src="gechi.jpg">
              <h1 id="harold">free pik</h1>
              <ul>
                  <li>vectors</li>
                  <li>photos</li>
                  <li>Ai images</li>
                  <li>Icons</li>
                  <li>Videos</li>
                  <li>PSD</li>
                  <li>3D</li>
                  <li>Fonts</li>
                  <li>Categories</li>
              </ul>
          </header>
      </body>
    </html>
```
How to Save Budget for a New CTO/CEO by Simply Updating Non-Critical Infrastructure and Changing CDN Provider
Published: 2023-07-14 13:12:25

As a new CTO or CEO, you may be looking for ways to save money. One of the best ways to do this is to review your company's non-critical infrastructure and identify areas where you can make improvements. One area that often overlooked is the content delivery network (CDN). A CDN is a network of servers that are distributed around the world. CDNs are used to deliver content to users more quickly and reliably by caching that content on servers that are closer to the user.

If your company is currently using a CDN, you may be able to save money by switching to a different provider. There are a number of different CDNs available, and each one offers its own set of features and pricing options. When choosing a CDN, it is important to consider your company's specific needs and budget.

One of the best CDNs for saving money is [BlazingCDN](https://blazingcdn.com/). BlazingCDN offers a variety of pricing plans to fit any budget. You can start with a free plan and upgrade as your needs grow. BlazingCDN also offers a number of features that can help you save money, such as:

Global network of servers: [BlazingCDN](https://blazingcdn.com/) has a global network of servers that can deliver content to users all over the world. This can help you improve the performance of your website or application for users in different regions.
Caching: BlazingCDN caches content on servers that are close to users. This can help improve the performance of your website or application and reduce the amount of bandwidth that you use.
DDoS protection: BlazingCDN offers DDoS protection to help protect your website or application from attacks. This can help you save money on security costs.
If you are looking for a way to save money on your company's CDN, BlazingCDN is a great option. [BlazingCDN](https://blazingcdn.com/) offers a variety of pricing plans to fit any budget, and it offers a number of features that can help you improve the performance of your website or application.

Here are 8 other CDNs that you may want to consider:

1. [**BlazingCDN - Best price-quality ratio**](https://blazingcdn.com/)
2. [**Cloudflare**](https://www.cloudflare.com/)
3. [**Akamai**](https://www.akamai.com/)
4. [**Amazon CloudFront**](https://aws.amazon.com/cloudfront/)
5. [**Google Cloud CDN**](https://cloud.google.com/cdn)
6. [**Microsoft Azure CDN**](https://azure.microsoft.com/en-us/products/cdn)
7. [**Fastly**](https://www.fastly.com/)
8. [**KeyCDN**](https://www.keycdn.com/)
9. [**StackPath**](https://www.stackpath.com/)

When choosing a CDN, it is important to compare the different providers and their features to find the best option for your company.
Custom Error Handling in GraphQL — with examples
Tags: webdev, javascript, graphql, programming
Published: 2023-07-14 13:11:27

Error handling is a critical aspect of building robust and reliable GraphQL APIs. As developers, we need to ensure that error responses are informative, consistent, and easy to handle on the client side.

In this article, we will explore advanced error-handling techniques in GraphQL. By leveraging these techniques, you can enhance user experience, provide meaningful error messages, and improve debugging.

We will use [GraphQLError](https://github.com/graphql/graphql-js/tree/main/src/error) class of [GraphQL](https://github.com/graphql/graphql-js) to play with errors. 

By customizing error messages, implementing validation rules, and centralizing error-handling logic, you can provide informative and consistent error responses. 

Plus, advanced error-handling techniques allow you to catch and handle errors in nested resolvers and test different error scenarios.

## Table of contents

- GraphQLError
- Customizing Errors
- Custom error interface
- Global Error Handling
- Error Bubbling and Error Handling in Nested Resolvers
- Conclusion

This post shows you the basics of error handling in GraphQL using GraphQLError class. Using this, we can easily customize errors whether it's database, validations, or any other errors.

For detailed explanation with examples, check out our [Canopas Blog.](https://blog.canopas.com/custom-error-handling-in-graphql-with-examples-8daad20181d0)
What is a CDN and Why Should Startups Use It?
Tags: cdn, startup, video, softwareengineering
Published: 2023-07-14 13:02:44

A content delivery network (CDN) is a network of servers that are distributed around the world. CDNs are used to deliver content to users more quickly and reliably by caching that content on servers that are closer to the user. This can be a great way to improve the performance of your website or web application, especially if you have a large number of users in different parts of the world.

There are a number of different CDNs available, but not all of them are created equal. Some CDNs are more expensive than others, and some CDNs offer better performance than others. If you're a startup, you're probably on a tight budget, so you'll want to find a CDN that is both affordable and reliable.

One of the best budget CDNs for startups is BlazingCDN. BlazingCDN offers a variety of features that are perfect for startups, including:

- Affordable pricing: [**BlazingCDN**](https://blazingcdn.com/pricing/) offers a variety of pricing plans to fit any budget. You can start with a free plan and upgrade as your needs grow.
- High performance: [**BlazingCDN**](https://blazingcdn.com/pricing/) has a global network of servers that deliver content quickly and reliably.
- Reliable delivery: [**BlazingCDN**](https://blazingcdn.com/pricing/) has a high uptime and a low rate of downtime.
- Customization options: [**BlazingCDN**](https://blazingcdn.com/pricing/) offers a number of customization options that allow you to optimize your delivery.

If you're a startup looking for a CDN that is both affordable and reliable, BlazingCDN is a great option.

**Here are some of the benefits of using a CDN for startups:**

1. Improved performance: A CDN can help to improve the performance of your website or web application by delivering content from servers that are closer to your users. This can reduce latency and improve the user experience.
2. Increased reliability: A CDN can help to increase the reliability of your website or web application by distributing content across multiple servers. This can help to prevent downtime and improve the user experience.
3. Reduced costs: A CDN can help to reduce the costs of hosting your website or web application by caching content on servers that are closer to your users. This can reduce the amount of traffic that your servers need to handle.

If you're a startup, using a CDN can be a great way to improve the performance, reliability, and security of your website or web application.
What is container, close and open containers and security of both containers
Published: 2023-07-14 13:00:05

Containerization is a technology that allows applications and their dependencies to be packaged together in a lightweight, isolated environment called a container. Containers provide a consistent and reproducible runtime environment, enabling applications to run reliably across different computing environments.

**Open Containers:**
Open containers refer to container runtimes that adhere to open industry standards. The most widely adopted standard is the Open Container Initiative (OCI), which provides specifications for container formats (OCI Image) and container runtimes (OCI Runtime). Examples of open container runtimes include Docker, containerd, and CRI-O. Open containers promote portability and interoperability between different container platforms and tooling.

**Closed Containers:**
Closed containers, on the other hand, typically refer to container runtimes or platforms that have their own proprietary formats and tooling. These closed container solutions may have additional features and customizations specific to the platform but might lack the same level of interoperability and portability as open container solutions.

**Container Security:**
Container security is a critical aspect of containerization. Both open and closed containers have security considerations:

**Open Containers:**
Open container runtimes benefit from a larger community of contributors, resulting in frequent security updates and patches.
Vulnerabilities in open container runtimes are often identified and addressed more quickly due to the collaborative nature of open-source development.
However, the security of open containers relies heavily on proper configuration and best practices by users.

**Closed Containers:**
Closed container solutions may have additional security features and customizations specific to the platform.
These solutions often undergo rigorous testing and security assessments before release.
Closed containers may have a dedicated security team responsible for addressing vulnerabilities and providing updates.

**Automated Containers:**
It seems you mentioned "auto containers" in your question, but the term is not clear. If you meant automated containerization, it refers to the process of automatically packaging applications into containers using tools like Dockerfile, Kubernetes, or container orchestration platforms.

Automated containerization provides benefits such as reproducibility, scalability, and easier deployment. It allows developers to define the application's runtime environment and dependencies in code, making it easier to manage and deploy applications across various environments.

In summary, containerization improves application deployment and scalability. Open containers promote portability and interoperability, relying on community contributions for security updates. Closed containers may have additional security features and customizations specific to the platform. Automated containerization streamlines the process of packaging and deploying applications into containers.