teleren/devto huggingface dataset:
The software developer best quality
Tags: beginners, tutorial, productivity
Published: 2024-01-03 13:45:15

I was thinking on how many qualities you need to be a good software developer. I am talking of the best developer, or -at least- a very good one. I mean, you don’t need to be a star, do not need to be Messi; but you must be on that list of selected players that go to the championship.

## Why am I thinking on that kind of developer?

Because I imagine a developer who loves his job and wants to be as good. So, he tries to go further and learns something new every day. It is a job, you will be paid, of course; however, you also had to train yourself and push harder and harder to get better all the time. 
When you love something, you try to do more than your best. Please take note on this: You must try for you, only for you, who cares about the others could say. 
If you are that kind of developer or want to be on the list of selected players like I mentioned before, you will understand what I mean. 

## But what do I need to be among the best?

Many of us, may think we need to go behind the last frameworks technology, or best practices, have an Apple computer or using Linux. These are just tools. **The software developer best quality is problem solving.**

Yes, it is as simple as that. And I tell you why.

Software development is part of Engineering. This is the practice of using natural science to solve technical problems, increase efficiency and productivity, and improve system (Definition copied and pasted from Wikipedia). 
By definition, you will solve technical problems, or -more kind- will fix issues. 
If you can develop this quality, you will always have job. It will not matter technologies changes or fashion frameworks. You won’t have to take care about AI, copilot or chat GPT. All of them are just tools. Humans have imagination, empathy, and emotions; tools don’t.

## Does that mean that I don’t have to learn any language or framework?

Of course not. You need to be prepared.
If you want to be good at problem solving, you need many tools. The most you have the easier you will be successful. 
Therefore, the only way to have tools in this job is you never stop learning. Any course you take is an important knowledge you will need.
However, we should never forget that our focus is to solving problems. We are not prophets of any framework. We are using them, not the other way around. Don’t forget they are just tools, not the law.
I love NextJS, but if I need to do it with a no-code tool because it is what my client needs, I will have to.

In any case, there are always more complex problems. Don’t worry. They will find you if you have the reputation of being so good.
String in C programming.
Tags: string, beginners, programming, tutorial
Published: 2024-01-03 13:44:41

String is a collection of characters that are used to represent textual data.
```
int main() {
    char str[] = "Sujith";
    printf("%s", str);
    return 0;
}
```
- Use `%s` format specifier for printing string.
- Every string in c ends with \0. This null character helps the compiler to know the end of the string. So actual size of the string will be 1 greater than the total no;of character in the string. 

## String Input
```
int main() {
    
    char str[20];
    
    printf("Enter your name here: ");
    
    scanf("%s", str);
    
    printf("%s", str);
    
    return 0;
}
```
In order to take the input, we don't need to use `&` for string because `str` is an array and it already points to the first element of `str`.

The scanf method can only take input until it encounters white spaces. So not possible to take input like "Steve Jobs". So to take all the inputs we can use:
`fgets(str, sizeof(str), stdin) `
str - string name
sizeof(str) - size of string.
stdin - it means standard input. It denotes we are taking input from the keyboard. 

## Access characters of string
```
int main() {
    
    char str[] = "Sujith";
    
    printf("%c", str[0]); 
    
    return 0;
}
```
Since we are only printing single character use %c format specifier

## Changing elements of a string.
```
int main() {
    
    char str[] = "Sujith";
    
    str[2] = 'J';
    str[4] = 'T';
    
    printf("%s", str);
    return 0;
}
```
Unlock Your Email Marketing Potential with These Top 3 Free Tools!
Published: 2024-01-03 11:30:09

Are you ready to level up your email marketing game without breaking the bank? Look no further! We've curated a list of the [3 best free email marketing tools and services lookinglion](https://www.thenewssources.com/3-best-free-email-marketing-tools-and-services-lookinglion/) to elevate your communication strategy. 🚀📧

Mailchimp 🐵💌

A household name in email marketing, Mailchimp's free plan is perfect for startups and small businesses.
Enjoy features like customizable templates, audience segmentation, and basic reporting.
User-friendly interface for creating engaging campaigns without a steep learning curve.
Sendinblue 🚀📬

Sendinblue's free plan offers impressive functionalities, making it a go-to for budget-conscious marketers.
Benefit from advanced automation, transactional emails, and comprehensive analytics.
A versatile platform suitable for both beginners and experienced marketers.
MailerLite 🌐✨

An intuitive and feature-rich platform, MailerLite's free plan includes automation and landing pages.
Enjoy drag-and-drop builders, subscriber management, and detailed campaign analytics.
Ideal for businesses looking for a seamless, no-frills email marketing solution.
Remember, while these tools offer robust free plans, it's essential to evaluate your specific needs and growth potential. Explore, experiment, and find the perfect fit for your email marketing journey! 🌟💻 #EmailMarketing #MarketingTools #FreeToolsForSuccess 📈🔧
How to Install Docker on Linux 2024
Tags: docker, linux, devops, developers
Published: 2024-01-03 13:30:00

Hello, since Rumble had some issue in code and stopped uploading videos, I needed to recreate my channel now it all works and the Devs checked so republishing my videos:

{% embed https://rumble.com/v44bohq-how-to-install-docker-on-linux-2024-how-to-shorts-docker-learn-technology.html?mref=2xhj9j&mc=cm8uy %}

Follow for more on 
YouTube: [Link](https://www.youtube.com/@valters_eu)
Twitter: [Link](https://twitter.com/valters_eu)
Rumble: [Link](https://rumble.com/c/c-5535633)
Website: [Link](https://www.valters.eu/)

Thanks
My personal #DEVResolutions2024
Tags: devresolutions2024
Published: 2024-01-03 13:29:01

I want to use this to share my personal goals. This is stuff which I want to get done in 2024. As background information I am a backend web developer but my goals aim more on private dev goals than on goals for my career.

### **Personal Goals:**

1. **Goal:** Develop an own game.
2. **Action Steps:** In the last year I have developed a visual novel game by the use of Ren'Py. This year I want to learn Godot to develop bigger games.
The plan is at first to start with the documentation.
The next step will be challenge projects from [the 20 games challenge](https://20_games_challenge.gitlab.io/).
After this I should earned the knowledge to start with a own game.
3. **Timeline:** To reach this goal I will nearly need the complete year 2024 and probably parts of the next year.

### **Personal Aspirations:**

1. **Aspiration:** To be up to date.
2. **Why it Matters:** For me it is important to be up to date. This means that I can read and learn new things right then when they appear. So it can support me in my daily job to know about the newest 'shit' like Blockchain or AI.
3. **Support System:** To reach this I will read more tech news and will be a more active reader on DEV.to.

### **DEV Community Contributions:**

1. **Contribution Goal:** Be more part of the DEV.to community.
2. **Collaboration Plans:** I will publish more posts and use DEV.to as first source to solve my programming issues and to rise my knowledge.
3. **Measuring Impact:** Feedback from the community is very important to see if I could help anyone to solve their issues or problems. One reaction or comment are enough for me to see that someone could benefit from my post.
🎉 Unwrap the joy of the season with Devart's Spectacular Offers!
Tags: mysql, oracle, postgressql, mariadb
Published: 2024-01-03 13:15:21

The festivities continue as we extend the celebration with exclusive discounts on Devart's premium database tools. Only until January 11, 2024, dive into a world of savings, with discounts of up to 50% on each selected product.  

🚀 Explore our Special Devart Offers:  

🌐 dbForge for MySQL – Elevate your MySQL and MariaDB database experience with a dazzling 15%-50% off. Unleash the power of industry-leading tools for efficient development, management, and administration.  

🔥 dbForge for Oracle – Ignite your Oracle Database journey with comprehensive tools renowned for their potency and user-friendly design. Enjoy a sizzling 20%-50% off during this festive period.  

🌟 dbForge for PostgreSQL – Conquer any PostgreSQL and Amazon Redshift database challenge with expertly crafted solutions, now available at an exclusive 20%-30% discount.  

💻 dbForge Edge – Experience the ultimate solution for major database management systems – SQL Server, MySQL/MariaDB, Oracle, and PostgreSQL. Secure your 20% discount on dbForge Edge and empower your database endeavors.  

🎁 Your moment to embrace the power of dbForge database tools is here! Seize the opportunity: https://www.devart.com/happy-new-year.html
Fix blurry or bold fonts on a Mac
Tags: fonts, ide
Published: 2024-01-03 13:12:06

Holy moly, an often forgotten, simple, yet effective tip worth sharing:

I forgot how turning off font smoothing makes the world of difference on retina/high PPI screens. If using a non-apple external monitor, especially those with the less adopted formats, on a mac, font smoothing will make your fonts more bold or blurry, disabling is a must for programmers as it's probably making your code fonts less readable.

Since Big Sur, font smoothing can be adjusted in two ways.

### Via the terminal

`defaults -currentHost write -g AppleFontSmoothing -int 0`

- "0" disables font smoothing
- "1" enables light font smoothing
- "2" enables default medium smoothing
- "3" enables strong smoothing
- Thus, If you wish to revert to the default setting simply replace the "0" at the end of the command with a "2".

### Via a helper app

Luckily, if you're not comfortable changing setting via the command line, someones kindly made a helper app (a little overkill but makes it super easy). 

https://www.fontsmoothingadjuster.com

### Learn more

Nikita Prokopov (the chap behind Fira Code) wrote a super in-depth post regarding font smoothing, displays, pixels and resolutions. Check it out for more context.

---

Have a good'un.

Sam.
"Day 2: Excel Essentials Unveiled - Sharing Today's Insights on My Learning Adventure! 📊🚀 #ExcelSkills #LearningJourney"
Tags: data, excel, analyst
Published: 2024-01-03 13:09:52

EXCEL - 1

INTRODUCTION TO EXCEL

Excel is way more handy than google sheets. You can find all the options in Excel near your eye sight but in the case of google sheets you have to find it in a lengthy way.. 

In this tutorial we will use google sheets because it is available to everyone for free.

Ribbon:
The Ribbon is the strip at the top of the Excel window that houses all the tools and commands you need to perform various tasks. It's designed to make it easier to find the commands you need.
The Ribbon is divided into tabs, each representing a category of related commands.
Tabs:
Tabs are the main categories on the Ribbon, each representing a specific set of tools and functions. Common tabs include
 "Home,"
 "Insert,"
 "Page Layout,"
 "Formulas,"
 "Data,"
 "Review,"
 and "View."
Each tab is organised into groups. For example, the "Home" tab may include groups like "Clipboard," "Font," "Alignment," etc.





Commands:
Commands are the individual tools or actions you can perform in Excel. They are organised within groups on each tab.
For instance, in the "Home" tab, you have commands like "Copy," "Paste," "Bold," "Italic," and other formatting options in various groups.
Cells, Rows, Columns:
Cells:
A cell is the intersection of a row and a column in an Excel spreadsheet. It is identified by a unique cell reference, which is the combination of its column letter and row number (e.g., A1, B2).
Each cell can contain data such as numbers, text, formulas, or functions.
Rows:
Rows in Excel are horizontal collections of cells identified by numbers (1, 2, 3, ...). Row 1 is typically reserved for column headers.
You can perform various operations on rows, such as inserting, deleting, hiding, or formatting them. The row number is indicated on the left side of the worksheet.
Columns:
Columns in Excel are vertical collections of cells identified by letters (A, B, C, ...). The first 26 columns are labelled with letters (A to Z), and subsequent columns use combinations like AA, AB, etc.
Similar to rows, you can perform operations on columns, such as inserting, deleting, hiding, or formatting them. The column letter is indicated at the top of the worksheet.

These things are basic IF you want to learn with me just learn about that topic which I am posting everyday.



LEARNING IS AN EVERYDAY PROCESS SO, i will be updating previous learning with new tips and tricks. 


Follow me on this where every day will be added if i learn something new about it  :- https://dev.to/nitinbhatt46



THANK YOU
Django environment variables
Published: 2024-01-03 13:09:50

As per the [twelve-factor app methodology](https://12factor.net/) it is important to store config outwith the program that can be injected in at runtime. 

Not only does this keep sensitive information secure such as our passwords and API keys. Additionally it allows us to make us of a single `settings.py` file to load either out local or production environments variables.

There are many options for doing this, but the Django community seems to like [environs](https://github.com/sloria/environs) as it comes with additional Django support built-in. 

To install it via pip: 

```
python3 -m pip install "environs[django]"==9.5.0
```

Then add these three lines to the top of yout `project/settings.py` file: 

```
from environs import Env 

env = Env()
env.read_env()
```

## Database config using environment variables

An example use case is configuring our project to use a SQLite database locally, but a PostgreSQL database in production. 

The environs package comes installed with [dj-database-url](https://github.com/jazzband/dj-database-url). A package that allows us to set a `DATABASE_URL` that is utilised by most PaaS providers.

With a very small amount of code in our `project/settings.py` file, we can configure our project to try to access a `DATABASE_URL` environment variable. If it exists it will be used and our project will access our 'production' PostgreSQL database, if one can't be found then it will default to SQLite, e.g. locally. 

Change the default 'DATABASES' section in your `settings.py` file from this:

```
DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": BASE_DIR / "db.sqlite3",
    }
}
```
To this: 

```
DATABASES = {
    "default": env.dj_db_url("DATABASE_URL", default="sqlite:///db.sqlite3"),
}
```

## Configuring as PostgreSQL database in Django

In order to use a PostgreSQL database we need an adapter that allows Python to communicate with a PostgreSQL database. The community seems to favour [Pyscopg](https://www.psycopg.org/) for this. 

If you are on a Mac like me, you will also need to have installed PostgreSQL via homebrew first: 

```
brew install postgresql
python3 -m pip install "psycopg[binary]"==3.1.8
```
Pillow Library-Python GUI
Published: 2024-01-03 13:02:35

Unlock the potential of the Python **[Pillow library](https://pythongui.org/how-to-make-more-than-20-chatgpt-prompts-work-with-python-gui-builders-and-pillow-library/
)** for image processing with our comprehensive guide. Dive into a world of versatile image manipulation, editing, and enhancement capabilities. Whether you're a beginner or an experienced developer, our Pillow Library tutorial provides valuable insights to elevate your image processing skills. Explore the power of Pillow now to enhance your Python projects effortlessly. Visit us at Python GUI  for expert guidance on maximizing the Pillow library's capability.
Config - The Twelve Factor App Methodology
Tags: beginners, tutorial, cloud, architecture
Published: 2024-01-03 13:00:00

## Store config in the environment

Welcome back to our journey through the Twelve Factors in Software Development. In this installment, we'll unravel Factor 3: Config. Config, short for configuration, plays a pivotal role in making your application adaptable and portable across various environments.

## Config: Keep Settings Separate from Code

The Config factor advocates for storing configuration settings separately from your code. Configuration includes variables such as API keys, database connection strings, and other settings that might vary between different deployment environments.

### Why It Matters

Separating configuration from code enhances flexibility. It allows you to change settings without modifying the codebase. This is particularly crucial when deploying an application in different environments, such as development, testing, and production.

### How to Implement

Use environment variables to store configuration settings. Modern platforms and cloud services provide a way to manage these variables easily. For instance, in a Node.js application, you might use the `dotenv` package:

```javascript
// Load environment variables from a .env file
require('dotenv').config();

// Access the API key
const apiKey = process.env.API_KEY;
```

This way, your application can adapt to various environments by adjusting the environment variables.

### Example in Action

Consider an application that connects to a database. Instead of hardcoding the database connection string in your code, store it as an environment variable. This ensures that when the application moves from a development environment to production, the database connection can be easily configured without touching the code.

```javascript
// Database connection using environment variable
const dbConnection = process.env.DATABASE_CONNECTION_STRING;
```

By following the Config factor, you enhance the maintainability and security of your application, as sensitive information remains separate from the codebase.

Stay tuned for Factor 4: Backing Services, where we'll explore the importance of treating backing services (databases, caches, etc.) as attached resources and delve into best practices for connecting to them.
Top Frequent K Elements in C#
Tags: webdev, csharp, algorithms, datastructures
Published: 2024-01-03 12:54:31


Happy New Year Everyone!

Today we'll be solving LeetCode question [347](https://leetcode.com/problems/top-k-frequent-elements/), in C#

Let's Dive in.

**Problem Statement:** Given an integer array `nums` and an integer `k`, return _the_ `k` _most frequent elements_. You may return the answer in **any order**.

**Example 1:**

**Input:** nums = [1,1,1,2,2,3], k = 2
**Output:** [1,2]

Now, the way we will solve this is by using a dictionary and a PriortyQueue. If You don't know how to use a PriorityQueue you can review it [here](https://www.javatpoint.com/priority-queue-c-sharp). The idea is to insert every element we have in the nums array as a Key in the dictionary, and the frequency of the items as the Value. Then, Initialize our PriorityQueue to take in elements in descending order, enqueue those items from the dictionary, and then dequeue them into our result array. We will take all these step by step with explanations at every operation.

The first thing we need to do is Initialize our Dictionary, PriorityQueue, and result Array

```cs
        Dictionary<int,int> map = new ();
        int[] result= new int[k];
        PriorityQueue<int, int> queue = new PriorityQueue<int,int>  (Comparer<int>.Create((a,b)=> b-a));
```

Remember, we are initializing our PriorityQueue to take in the frequency of Elements in descending order.

Next, We loop over our nums array and add the items as keys in our dictionary and the number of times they appear as the values

```cs
   for(int i =0; i < nums.Length; i++){
            if(!map.ContainsKey(nums[i])) map.Add(nums[i], 1);
            else map[nums[i]]++;
     }
```

Next, we are going to loop over our dictionary and Enqueue our PriorityQueue with the item key and item value(remember this is in descending order, so it will start with the highest frequency first)

```cs
foreach(var item in map){
            queue.Enqueue(item.Key, item.Value);
        }
```

After this, we want to dequeue(remove) the items from our queue into our result array, we are only looping over the queue until i < k

```cs
        for(int i =0;  i < k; i++){
            result[i] = queue.Dequeue();
        }
```

Then, we simply return the result.

```cs
return result;
```

And so, putting it all together, your solution should look something like this

```cs
public int[] TopKFrequent(int[] nums, int k) {
        Dictionary<int,int> map = new ();
        int[] result= new int[k];
        PriorityQueue<int, int> queue = new PriorityQueue<int,int>(Comparer<int>.Create((a,b)=> b-a));
        for(int i =0; i < nums.Length; i++){
            if(!map.ContainsKey(nums[i])) map.Add(nums[i], 1);
            else map[nums[i]]++;
        }
        foreach(var item in map){
            queue.Enqueue(item.Key, item.Value);
        }
        for(int i =0;  i < k; i++){
            result[i] = queue.Dequeue();
        }
        return result;
    }
```
Thanks for reading, I look forward to solving more Leetcode( and general Algorithmic) problems using C# in the future. Happing coding.
Odoo : how to add a field before address field
Tags: odoo
Published: 2024-01-03 12:54:06

In odoo, it is often a requirement to add a custom field before the address field in the contact form. This is a bit tricky since the xml template is super hard to figure out with divs. Here the below snippet will insert a custom field before address field 

```
<xpath expr="//div[@class='oe_title mb24']" position="after">
<group>
<field name ="contact_reference"/>
</group>
</xpath>
```
How to Recover Recently Closed Tabs in SSMS Using SQL Complete
Tags: sql, sqlserver, dbforge, devart
Published: 2024-01-03 12:46:45

There's always a chance that work you haven't saved will be lost when working with any form of document in an editor. Unexpected crashes, for instance, can happen, and human mistakes cannot be disregarded either.

The same principle applies to SQL Server Management Studio; it is imperative that tabs and documents that have recently been closed in SSMS be recovered. In this post, we'll look at how to recover data using both SSMS's built-in tools and outside programs like dbForge SQL Complete.

Read more: https://blog.devart.com/recovering-closed-tabs-in-ssms.html
#DEVResolutions2024
Tags: devresolutions2024
Published: 2024-01-03 12:31:26

<!-- ✨ Feel free to customize this template to suit your needs—adjust the title, structure, and wording as you see fit! ✨ -->

### **Professional Goals:**

1. **Goal:** Give an international tech talk. 
2. **Action Steps:** Apply for as many CFPs as possible. 
3. **Timeline:** It can literally be at any moment during the whole year.

### **DEV Community Contributions:**

1. **Contribution Goal:** Write an article per month or at least one every 2 months.
2. **Collaboration Plans:** Some of those articles have to be for the JavaScript Chile community.
Update my Stack #DEVResolutions2024
Tags: devresolutions2024
Published: 2024-01-03 12:29:46

I want begin use Symfony in my personal projects and professional... I'm a long time using Laravel and Phalcon, and I feel that need change it.

I need change my projects to a stack with docker, no just on development environment, but too in production.

I'm PHP developer and my choice by Symfony is because community, market and _I'm tired of use always Laravel hehehe_.