teleren/devto huggingface dataset:
Working with people > Working for people
Tags: python, career, freelance
Published: 2023-07-31 09:03:26

I recently switched career and I had to decide between staying an employee or going freelance.

The decision was not easy, but it was liberating!



![bank notes with à papier where it’s written job security](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qksokdgq23cirp6an5zw.png)
## 🔐 The security

When I did my professional retraining, I think I will be better a salaried employee in a tech company.

That's what I had done since I started working.

That represents for me: security, facility, support…

I searched and tried for several months.

I passed some technical tests, some interviews...

But nothing.

My profile didn't match what companies searched.

And deep inside me, something told me I had to do something else…


![a lot of grey question marks with just one yellow](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ww7jvzk5fmfw3r5god2e.png)
## 🤔 The questioning

After trying to find a secure job, I passed a period of questions about my future career.

I didn’t know if I really want to find a salaried job…

And at this moment, I received a salaried job proposition, but I felt bad thinking about that…

My feeling was that I was just lazy, not courageous enough to begin a new job…

It was very complicated to understand that feeling: I wanted to work, but I didn’t want that job…

After working with a friend of mine, I understood: In fact, I wanted to be an independent developer.

I needed to try this journey and create my dream job!

It became obvious!


![newspaper telling that Karine has done the best choice](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tp4q0n29n6hk2xjpu03g.png)
## 🗽 The decision

This day, I declined the proposal.

That was the best day of a very long period!

I understand what I really wanted: I wanted to work _with_ people but not _for_ people.

This day was the first day of this big choice.

Many of the developers I’ve spoken told me that I should find salaried employment first, for 2 or 3 years, because it’s simpler because I will be supported by seniors.

Each of them has his opinion and gave it to me.
These opinions stressed me, but finally, they encouraged me to continue even if it was more difficult.

I didn’t choose simplicity.

I made a life choice.


![learning picture](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g77674fil2a7c7fbj22s.png)
## 👩🏻‍🏫 What I’ve learned

Only the future will tell me if I was right.

But the only thing I want to tell you is to listen to your needs.

What do you really want, deep inside you?

Follow your dreams.

Believe in your capacities.

## 💕 What's YOUR dream?

**What does your heart tell you?**

And me, I still have a lot to learn,  (https://dev.to/karine_bauch/asking-how-can-i-become-better-2l6n)[can you help me to become better?]
Apache AGE: Exploring the Capabilities
Published: 2023-07-30 19:53:05

In today's data-driven world, businesses and organisations are faced with the challenge of managing complex and interconnected data. Traditional relational databases often struggle to efficiently handle relationships and connections between data points. This is where graph databases come into play, providing a powerful solution for representing and analysing highly connected data.

One such graph database is Apache AGE (Apache Graph Extension), a cutting-edge open-source project that brings graph database capabilities to the PostgreSQL ecosystem. In this blog post, we will delve into the world of Apache AGE, exploring its key features, benefits, and use cases.

Integration with PostgreSQL:
Its simple interaction with current PostgreSQL infrastructure and tooling is one of Apache AGE's key features. Utilising their knowledge with PostgreSQL, organisations that already use PostgreSQL may quickly integrate Apache AGE into their current systems.

Scalability & Flexibility:
Any database system must have scalability and dependability, and Apache AGE meets these needs. It offers horizontal scalability, enabling enterprises to successfully manage increasing data volumes. For handling networked data, PostgreSQL and Apache AGE together provide a solid and dependable base.

Apache AGE's flexibility and extensibility are also among its many advantages. Users may combine the strength of relational and graph databases by combining SQL and graph queries, enabling a variety of use cases and offering flexibility in data modelling and analysis.

Use Cases:
There are numerous domains and use situations where Apache AGE is used. It can assist in finding important connections and producing individualised recommendations, for instance, in social networks and recommendation systems. The graph features of Apache AGE help to spot trends and abnormalities in fraud detection and cybersecurity. Additionally, it can be utilised for network analysis, semantic data management, and supply chain optimisation.

Community:
The Apache AGE community is active and helpful, providing tools, documentation, and development that is driven by the community. The ecosystem is improved through integration with other tools and frameworks, which also gives consumers access to more possibilities.

Conclusion:
Apache AGE is a powerful graph database solution that integrates seamlessly with PostgreSQL. Its native graph support, flexibility, performance optimisations, and integration with existing PostgreSQL infrastructure make it an attractive choice for managing highly connected data. With Apache AGE, businesses can unlock valuable insights and leverage the power of graph databases in a familiar and scalable environment.
Mastering RAML Resource Naming: Best Practices for a MuleSoft Marvel! 💻🚀
Tags: mulesoft, raml
Published: 2023-07-31 08:52:02

Hey there, MuleSoft Community! Are you ready to take your RAML skills to the next level and become a resource-naming ninja? In this blog post, we'll dive into some exciting and easy-to-follow best practices for naming resources in RAML. Let's make your APIs look sleek, professional, and super easy to work with!

## Embrace the Power of Plural Nouns 🌟
When you're representing collections of objects, let's keep it simple and use plural nouns for resource names. Trust me, it just makes sense! When you access the "/customers" resource, it's crystal clear that you're dealing with multiple customers. It's intuitive and user-friendly, which is precisely what we want!

Example:

👎 Avoid: `/customer`

👍 Embrace: `/customers`

## No Verbs Allowed - Keep it Clean and Clear 🧹
Remember, resources are all about the "what" and not the "how". Let's avoid using verbs in our resource names. Save those action words for the HTTP methods like GET, POST, PUT, and DELETE. By doing this, your resource names will be concise, descriptive, and much easier to understand.

Example:

👎 Say no to: `/getCustomers`

👍 Say yes to: `/customers`

## Hyphenate for Multi-Word Resources 🌐
Got a resource name with multiple words? No worries, we've got a neat solution! Let's hyphenate those multi-word names to make them more readable. For instance, if you have a "customer zone," we can transform it into "customer-zone." And hey, don't forget to keep it consistent across your entire organization for that polished and professional look.

Example:

👍 `/customer-zone`

## Keep it Down, Lowercase Style 🔤
In the world of URLs, lowercase is king! Let's align with web standards and keep all our resource names in lowercase. It may seem like a small detail, but it goes a long way in maintaining consistency and making your API more user-friendly.

Example:

👍 `/customers`

## Nested Resources for Ultimate Clarity 🎯
Sometimes, you need to delve deeper into your API hierarchy, and that's where nested resources come to the rescue! Let's say you have customer zones for specific customer IDs. We can create a nested resource like "/customers/{customerId}/customer-zone" to keep everything organized and tidy.

Example:

👍 `/customers/{customerId}/customer-zone`

### 🚨 Important Note: Why Use Plural Nouns?
Using plural nouns for resources helps indicate that the resource represents multiple instances of the entity. It's all about clarity and intuitiveness, making it easier for developers to understand the purpose of each resource.

### Share Your Resource Naming Tips! 📝
Do you have any other nifty resource naming tips? Share them in the comments below and let's grow together as a MuleSoft Community! Happy coding! 😄🚀
Building a Go linter from scratch
Tags: go
Published: 2023-07-31 08:47:50

🤔 Ever wonder how linters work in Go? ❓

In my latest video, I go through Denis Isaev's tutorial "Writing Useful go/analysis Linter", to learn how to build a linter myself to learn what's involved.  Follow along and see if you can learn something, too...

{% youtube https://youtu.be/ycU-GXL_ix4 %}
How to download Facebook reals ?
Published: 2023-07-31 08:08:01

"Facebook Reals" is not a specific feature or app. It's possible that Facebook has introduced a new feature or changed its terminology since then. However, if you are referring to downloading or saving videos from Facebook, here's a general guide on how to do it:

Please note that downloading Facebook videos might violate the platform's terms of service, so proceed at your own risk, and always respect copyright and privacy laws.

1. Use a Video Downloader Website:

   Go to the Facebook video you want to download.
   Copy the URL of the video from the browser's address bar.
   Visit a video downloader website that supports Facebook, such as "[http://reels-download.com/](http://reels-download.com/)"
   Paste the video URL into the downloader's input field.
Choose the video quality and format you prefer (if available).
   Click the "Download" or "Download Video" button.
Using a Browser Extension:

2.Install a browser extension like "Video DownloadHelper" for Firefox or "Social Video Downloader" for Chrome.
Navigate to the Facebook video you want to download.
Click the video downloader extension icon in your browser.
Choose the video quality and format you want (if applicable).
Start the download.
Mobile Apps:

3.If you're on a mobile device, you can use apps that are specifically designed to download Facebook videos. Search for "Facebook video downloader" in your app store.
Install the app of your choice, open it, and paste the URL of the Facebook video you want to download.
Follow the app's instructions to initiate the download.
Remember that downloading videos from Facebook or any other platform should be done responsibly and with permission when applicable. Some videos may be copyrighted material, and downloading them without permission can lead to legal consequences.

Always be cautious when using third-party websites or apps for downloading content, as they may come with security risks or violate Facebook's terms of service. Additionally, these methods might not work for newer versions of Facebook or if the platform has implemented additional security measures.
Who Doesn't Fit Developer Positions?
Tags: hiring
Published: 2023-07-31 08:05:11

Hello World! Today we are going to discuss such an important theme as working as a programmer. How to understand: Am I good for this or not?
The first point is that a lot of people when they hear the term “IT”, think about coding. But this is not the only option you can choose. There are many positions for people who cannot code and prefer communication more than writing scripts for programs. For example, lead gen manager, talent acquisition specialist, sales manager, product manager, content manager, it-recruiter, etc. 

From my point of view, recruitment, lead gen positions, and talent acquisition specialist are the best positions to begin your IT career with if you are a people person. Let's see, if you:

- You want to practice your skills of diplomacy
- You like to communicate with new people from different countries and different nationalities 
- You like to spend time learning the details of the task to be professional in it
- You don’t like math and coding (but you will have to understand the technical base of the position you need to end up with )

If you fit all these - congratulations, all these positions fit you and of course don’t forget that each of them has its peculiarity. 

I would like to speak more about recruiting as I'm a recruiter.
So, if you decide to begin your career as a recruiter you need to know what are you going to do: 
- learn new ways of searching candidates (not just putting positions in Google) 
- learn x-ray and boolean search to make full cycle of recruiting(from *intro to close the position)
- giving feedbacks (positive and negative)
- struggle with misunderstandings between you and candidates
- being diplomatic in any situation (remember, you are the face of the company)

It’s also good to begin as a recruiter (in case after recruiting you decide to start writing codes you already know the info about different program languages and which one will be better for you, which is more useful, easier\more difficult, as you will have your personal experience hiring people who work with these languages.

By the way, after working as a recruiter you will know how the hiring process works and which unpredictable questions you may be asked by employees. Apart from this, you know how to behave and what is good to say and do and what is not good. 

But don’t think that being a recruiter is just to have a list of questions which you should ask the candidate-and that’s all. It doesn’t work like this. But we will discuss recruiting in my next article.
It's important to note that just because writing code may not suit some people, it doesn't mean they can't be the best at other information technologies. Many different events occur with software development that do not require direct coding.
Getting Started with the .NET MAUI Numeric Entry Control
Tags: dotnet, csharp, dotnetmaui
Published: 2023-07-31 07:24:49

Learn how to create and configure the Syncfusion .NET MAUI Numeric Entry control in a .NET MAUI project using Visual Studio 2022. This control provides users with an intuitive and touch-friendly interface to input numeric values in different formats. It allows the restriction of input by setting minimum and maximum values. Additionally, the control supports placeholders and includes an up-down button, making it convenient for users to adjust values. 

In this video, you will learn how to add a.NET MAUI Numeric Entry control to a .NET MAUI app and how to edit values, change their formats, restrict null values, and limit values within a specific range. Additionally, I will show you how to disable editing values and how to modify the value using up-down buttons. 

The .NET MAUI Numeric Entry control is designed to accept only numeric inputs. You can apply custom formats to specify precise decimal digits and add prefixes and suffixes to the entered values. Moreover, the control allows you to increase or decrease the value using the arrow keys, Page Up, and Page Down keys. Additionally, the values of the .NET MAUI Numeric Entry control are automatically formatted according to regional or cultural settings. 

**Product Overview**: https://www.syncfusion.com/maui-controls/maui-numeric-entry

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

**Download the getting started example from GitHub**: https://github.com/SyncfusionExamples/maui-numericentry-samples

{% youtube BHw8UpoUmoM %}
JavaScript vs TypeScript: Unraveling the Battle of the Scripting Languages
Published: 2023-07-31 07:23:31

JavaScript and TypeScript are two essential programming languages in the world of web development. JavaScript, often considered the cornerstone of modern web development, was introduced in 1995. Since then, it has become a widely-used scripting language, powering both frontend and backend applications. Its advantages include being ubiquitous, running natively in all modern web browsers, facilitating quick prototyping due to its simplicity and dynamic nature, and having a vast ecosystem of libraries and frameworks that simplify development. However, JavaScript lacks static typing, which can lead to runtime errors and make maintaining large codebases challenging.

In response to JavaScript's limitations, TypeScript was developed by Microsoft and released in 2012. TypeScript is a superset of JavaScript, offering static typing and additional features. This addition of static typing allows developers to catch type-related errors during compilation, leading to more robust code. TypeScript also enhances code quality by providing improved IDE support and better code analysis with its type annotations, making codebases easier to understand and maintain.

Despite its advantages, TypeScript does have a learning curve, especially for developers more accustomed to JavaScript's dynamic nature. Additionally, the transpilation process required to convert TypeScript code to JavaScript might slightly slow down the development process.

When deciding between JavaScript and TypeScript, project requirements and team expertise are crucial factors to consider. JavaScript is ideal for smaller projects or quick prototypes, and when the team is more comfortable with its dynamic nature. On the other hand, TypeScript is a strong contender for larger, complex projects with multiple developers, as it helps catch potential bugs early on through static typing. Moreover, TypeScript allows for incremental adoption, enabling developers to add type annotations gradually to existing JavaScript codebases.

In conclusion, both JavaScript and TypeScript serve vital roles in web development. JavaScript's simplicity and ubiquity make it accessible for quick development and smaller projects, while TypeScript's static typing and advanced features contribute to improved code quality and maintainability, especially in larger and more complex endeavors. Understanding the strengths and weaknesses of both languages will guide developers in making informed decisions that align with their project's specific needs and team expertise.
Introduction to Creating Extensions in PostgreSQL with C : Part-2
Published: 2023-07-31 07:14:54

1. Setting up the Development Environment is the first step.
Ensure that PostgreSQL and the required development libraries and headers are installed. You may install them using the package manager on the majority of systems.
Also, add a PostgreSQL binary path to your environment, to ensure that pg_config is there in the path. 

2. Now we will create an extension 'addtwonumbers' that will add two numbers.

`$ mkdir addtwonumbers`


3. Now for building the extension we will create a Makefile.

4. We also need a control file addtwonumbers.control with the following content:
```
comment = 'Simple number add function'
default_version = '0.0.1'
relocatable = true
module_pathname = '$libdir/addme'
```

5. And then prepare the function and run the following command to make the file

```
#include "postgres.h"
#include "fmgr.h"
 
PG_MODULE_MAGIC;
 
PG_FUNCTION_INFO_V1(addme);
 
Datum
addtwonumbers(PG_FUNCTION_ARGS)
{
int32 arg1 = PG_GETARG_INT32(0);
int32 arg2 = PG_GETARG_INT32(1);
 
PG_RETURN_INT32(arg1 + arg2);
}

`$ make`
```

6. And now we can install the extension:
`$ sudo make install`

Reference: https://www.percona.com/blog/postgresql-simple-c-extension-development-for-a-novice-user/
Posgresql Optimization Techniques
Tags: apacheage, postgres
Published: 2023-07-31 05:39:24

Performance of a database can be impacted by both internal factors and external factors. Internally, database settings and structure, indexing design and implementation, they all affect the database performance in one way or another.
Externally, the physical database design like data file and log file distribution, underlying operating system, they can also form unexpected bottle neck if not well
configured.

## Database Configuration Optimization

In Postgres configuration settings, there are many parameters affecting the performance of the database system
The default configuration in Postgres is meant for wide compatibility instead of high availability. So if running
default installation without tuning necessary parameter, the Postgres database system cannot benefit much from system resource. 
Most tunable parameters are in a file called `postgresql.conf` which is located under Postgres `data directory`. 

### max_connections
This number determines the maximum number of concurrent connections allowed in Postgresql database server. The default setting is normally 100 connections, but could be less depending on the operating system‟s kernel settings. Since every time when opening a new connection will cause some overhead to the database and bears a part of shared memories, it is not encouraged to set this number higher than actually needed. If more than a thousand concurrent connections are needed, it is recommended to use connection pooling software to reduce overhead. 

In the next article, we will consider `shared_buffers` which is another important parameter we can tune.
Enhance your application security with a high-accuracy, multi-functional SaaS scanner- AIAST
Tags: security
Published: 2023-07-31 07:08:28

Using AIAST, you can simulate attacks, such as injection attacks or cross-site scripting, to test the application's security controls. It can also provide detailed reports on the vulnerabilities discovered.

Demo site:
https://zeroday.co.uk/#/demo
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5w4w6llfj0zl8c208wio.jpg)
Introduction to Creating Extensions in PostgreSQL with C : Part-1
Published: 2023-07-31 07:02:13

Worldwide, developers utilise PostgreSQL, an open-source relational database management system (RDBMS) that is robust and adaptable. Extensions support is one of the most important features of PostgreSQL, it gives programmers the capabilities to expand the database through introduction of custom data types and functions.  

C, C++, Python, and more programming languages are supported by PostgreSQL for extension development. While other languages are simple and convenient, there are several important benefits to adopting C for extensions:

1. One may create highly optimised and effective programmes using the low-level programming language C. This is especially important for extensions that need to do complex computations because it allows for seamless integration with the core of PostgreSQL for improved performance.

2. One can have complete control over memory management, data structures, and system resources while using C, allowing you to optimise extension's performance.

3. Since many of PostgreSQL's key features are implemented in C, extensions that require close interaction with the database's internals frequently use it.
Does Ruby's Focus on Developer Happiness Drive Its Project Success?
Tags: discuss, ruby
Published: 2023-07-31 07:00:00

Ruby's focus on developer happiness and productivity is often highlighted. How do you think this philosophy contributes to the success of Ruby in various projects?

Follow the DEVteam for more discussions and online camaraderie!

{% embed [https://dev.to/devteam](https://dev.to/devteam) %}