teleren/devto huggingface dataset:
Doris Summit 2022 Breakout Session Detailed Agenda(Best Practice)
Tags: devops, programming, opensource, discuss
Published: 2023-01-03 06:32:54

Doris Summit 2022 will be officially held online from January 6th to 7th, 2023. The conference brought together senior technical experts from the world's top cloud vendors, first-tier Internet companies, star startups, and open source organizations to discuss the latest technology in Apache Doris, best practices and applications.

The breakout session: Best Practice will be held all day on January 7, with topics covering Internet, finance, automobile, logistics, gaming, manufacturing and other industries. Data experts from 20 companies will share with you:

- Decision making in choosing a database
- Architecture upgrade
- Optimization in Best Practice

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

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

## Sign Up Now
http://hdxu.cn/PpMyh

## About Doris Summit 
Doris Summit is an annual event of Apache Doris community, which gatheres community members and experts in the field of real-time analysis from all over the world. In the conference, the community will take an overlook on the past developments and a glimpse into the future trends. In addition, technical talks from software leaders push the boundaries and share their ideas as the early adopter of Apache Doris. 

Join us and spend time with global peers and become part of Apache Doris community. We are looking forward to seeing you at the conference!

##About SelectDB

SelectDB is an open-source technology company dedicated to providing the Apache Doris community with a team of full-time engineers, product managers and fully technical support. Meanwhile, SelectDB is willing to prosper the open-source community ecology and create an international industry standard in the field of real-time analytical data warehouses. Based on the new generation of cloud-native real-time data warehouse developed by Apache Doris, SelectDB runs on multiple clouds and provides users and customers with the feature of out-of-the-box.
Answer: What is the difference between pip and conda?
Tags: pip, conda, python
Published: 2023-01-03 06:29:54

{% stackoverflow 20994790 %}


Quoting from the Conda blog:

> Having been involved in the python world for so long, we are all aware of pip, easy_install, and virtualenv, but these tools did not meet all of our specific requirements. The main problem is that they are focused around Python, neglecting non-Python library dependencies, such as HDF5, MKL, LLVM, etc., which do not have a setup.py in their source code and also do not install files into Python’s site-packages directory.
OpenBSD ディスク暗号化: パスフレーズを変更する
Tags: openbsd, disk, encryption, password
Published: 2023-01-03 06:24:17


[フルディスク暗号化](https://obsd.solutions/ja/blog/2023/01/03/openbsd-full-disk-encryption-on-virtualbox/index.html) (Full Disk Encryption, FDE) を OpenBSD サーバーに設定した後に、そのパスフレーズを変更することは可能でしょうか ?

はい、可能です !! この記事でその方法を示します。[bioctl](https://man.openbsd.org/bioctl) を用いた非常にシンプルな手順です。

まずサーバーにログインします。そして次のコマンドを実行します:

```console
$ doas bioctl -P sd1
```

なお今回の例において、`sd1` とは [softraid](https://man.openbsd.org/softraid) が制御する CRYPTO (暗号化された) ボリュームです。(`sd0` がオリジナルのディスクです。) 別の言い方をすると、ここでの `sd1` は、インストーラーで OpenBSD を実際にインストールした場所です。

次のようにたずねられるでしょう:

```console
Old passphrase: 
New passphrase: 
Re-type passphrase:
```

それぞれ入力してください。それで終わりです !!!

マシンを再起動すると、新しいパスフレーズで続行できるようになっています。
I hate making resumes so much that I made a resume builder, and it was a blast.
Tags: productivity, opensource, career, news
Published: 2023-01-03 06:22:59

Hello everyone, this is Kei.

How do you make your resume when you are looking for a new job?

I think it's important to have a good resume design, so every time I change jobs, I have to redesign my resume, but it's a lot of work.

There are services that can create resumes for you, but it's hard to find a service that is suitable for me because, design-wise, they are either not suitable for the culture of the country or too classic.

Even if you want to modify an existing template a little, you have to learn how the template works from scratch, which is not easy.

So, I thought it would be nice if I could use a template that is super simple to manage resumes and easily customizable, and since I had some free time during New Year's, I made one myself from scratch.

[This](https://resume-builder-k.netlify.app/) is what I made.


![Preview](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/imq3ag3eu8i1dagxijxg.gif)

## About Features

The functions available are all basic: creating the basic information needed for a resume. Saving. Loading.

One of the unique features is that as long as you load a theme that is compatible with resume builder by URL, you can use that theme immediately.

Each theme can use its own attribute values, and if the values corresponding to the theme are set in the custom attributes, the values will be automatically applied when the theme is changed.

The information entered in the biography can be saved, so there is no need to enter custom attributes for each theme again as long as the data is loaded from the next time onward.

Incidentally, the background data is saved in JSON format, so it will be more convenient if you save it in github or other file system.

## About Themes

Themes can be applied by entering a URL in the input form or selecting one from the dropdown.

Currently, only one theme is available since this application itself was created during the New Year's holiday, but the [theme repository](https://github.com/tonton-k37/resume-builder-themes) is open to the public, so we would be happy if anyone who thinks he/she is the one to create a theme would open it to the public.

I am also planning to create a theme when I can take the time.

Have a great job search, everyone!
Algorand price prediction 2023-2025
Tags: cryptocurrencymarket, cryptopriceprediction, bitcoin, algorand
Published: 2023-01-03 05:55:51

Algorand is listed by the most prominent exchanges like Binance, coinbase and others. It is said to have a lot of strengths and has managed to make its way into the portfolios of  investors. Is it time to invest in this?
ALGO price could reach a potential high of $0.445 by the end of 2023
ALGO with a potential surge could go as high as $2.684 by the end of 2030 
According to Coinpedia's formulated ALGO price prediction There will be an Algo-based blockchain with a series of events being launched. This seems to be a good investment opportunity in the current uncertain market.
The network launches an upgrade called liquidity mining and staking. If the network fails to carry out that plan, then the price may hit $0.445. If the network doesn't carry out that plan, then the price can go in the wrong direction and drop to $0.274 as a result.
Check complete [Algorand price prediction](https://coinpedia.org/price-prediction/algorand-algo-price-prediction/) on Coinpedia.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xfdvbginf02jw7ob5i7e.jpg)
The Future of Software Development: Top Trends for Developers in 2023
Tags: future, webdev, trends
Published: 2023-01-03 05:54:57

As the field of software development continues to evolve, it's important for developers to stay up-to-date with the latest technologies and best practices. Here are a few trends that developers may want to pay attention to in the coming years:

Increased use of artificial intelligence and machine learning: The integration of artificial intelligence and machine learning capabilities into software is likely to be a major trend in the coming years. These technologies allow developers to build more intelligent, data-driven applications that can learn and adapt over time. Developers who are skilled in AI and machine learning technologies such as TensorFlow, PyTorch, and scikit-learn will be in high demand.

Continued growth of cloud computing: Cloud computing, which allows users to access and use computing resources over the internet, has already seen significant growth in recent years. This trend is likely to continue, with more companies moving their applications and data to the cloud to take advantage of its scalability and cost-effectiveness. Developers who are skilled in cloud technologies such as AWS, Azure, and GCP will be in demand.

Rise of low-code and no-code platforms: Low-code and no-code platforms, which allow developers to build applications without writing traditional code, are becoming increasingly popular. These platforms are likely to continue to grow in popularity, as they allow non-technical users to build basic applications and allow developers to build prototypes and MVPs more quickly. Developers who are familiar with platforms such as Appian, OutSystems, and Mendix will have an advantage in the job market.

Continued evolution of existing programming languages: Many of the programming languages that are widely used today, such as Java, Python, and C++, will continue to evolve and be updated with new features and capabilities. Developers will need to stay up-to-date with these changes in order to take advantage of the latest features and best practices.

Increased focus on security: As cyber threats continue to evolve, the importance of security in software development will continue to be a top concern. Developers who are skilled in secure coding practices and technologies such as encryption and authentication will be in high demand.

These are just a few of the trends that developers may want to pay attention to in the coming years. The field of software development is constantly evolving, so it's important for developers to stay up-to-date with the latest technologies and best practices.
Python Programming Bootcamp #12 - solving exercises
Tags: python, programming, beginners, tutorial
Published: 2023-01-03 05:32:09

---
title: Python Programming Bootcamp #12 - solving exercises
published: true
description: 
tags: python, programming, beginners, tutorial
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-01-03 05:30 +0000
canonical_url: https://code-maven.com/programming-bootcamp-for-scientists-12
series: bootcamp
---


{% youtube mMpHc5Ol2LA %}

* 00:00 Nóra solves the [exercises](https://code-maven.com/slides/python/exercise-print-all-the-locations) of the [Loops chapter](https://code-maven.com/slides/python/python-loops).
* 02:00 Solution for exercise: Print all the locations in a string
* 16:27 Solution for exercise: Number guessing game.
* 40:40 Solution for exercise: Count unique characters. (also using sets)
* 45:10 What is the difference between == and the "is" operator?
944. Delete Columns to make sorted
Tags: leetcode, java
Published: 2023-01-03 05:21:59


You are given an array of n strings strs, all of the same length.

The strings can be arranged such that there is one on each line, making a grid. For example, strs = ["abc", "bce", "cae"] can be arranged as:

abc
bce
cae
You want to delete the columns that are not sorted lexicographically. In the above example (0-indexed), columns 0 ('a', 'b', 'c') and 2 ('c', 'e', 'e') are sorted while column 1 ('b', 'c', 'a') is not, so you would delete column 1.

Return the number of columns that you will delete.

 

Example 1:

Input: strs = ["cba","daf","ghi"]
Output: 1
Explanation: The grid looks as follows:
  cba
  daf
  ghi
Columns 0 and 2 are sorted, but column 1 is not, so you only need to delete 1 column.
Example 2:

Input: strs = ["a","b"]
Output: 0
Explanation: The grid looks as follows:
  a
  b
Column 0 is the only column and is sorted, so you will not delete any columns.
Example 3:

Input: strs = ["zyx","wvu","tsr"]
Output: 3
Explanation: The grid looks as follows:
  zyx
  wvu
  tsr
All 3 columns are not sorted, so you will delete all 3.
 

Constraints:

n == strs.length
1 <= n <= 100
1 <= strs[i].length <= 1000
strs[i] consists of lowercase English letters.
```
class Solution {
    public int minDeletionSize(String[] strs) {
        int count = 0; // number of columns to delete
        for (int i = 0; i < strs[0].length(); i++)// loop through each column
         {
            for (int j = 0; j < strs.length - 1; j++)//// loop through each row
             {
                if (strs[j].charAt(i) > strs[j + 1].charAt(i)) // compare the current column with the next column
                {
                    count++;// if the current column is not sorted, increment the count
                    break;
                }
            }
        }
        return count;// return the number of columns to delete
    }
}
```
The Future of Code: Predictions for the Next 10 Years
Tags: webdev, future, programming, discuss
Published: 2023-01-03 05:20:57

The field of programming languages is constantly evolving, and the next decade is likely to see a number of significant changes and developments. Here are some trends and predictions for the future of programming languages:

1. Continued growth of functional programming: Functional programming languages, which emphasize the use of functions to manipulate data rather than objects, have been gaining popularity in recent years. This trend is likely to continue, with functional languages such as Elixir, Haskell, and F# becoming more widely used.

2. Rise of low-code and no-code platforms: Low-code and no-code platforms allow developers to build applications without writing traditional code, using visual tools and pre-built components. These platforms are becoming increasingly popular as they allow non-technical users to build basic applications, and they are likely to continue to grow in popularity over the next decade.

3. Increased use of artificial intelligence and machine learning: The integration of artificial intelligence and machine learning capabilities into programming languages is likely to become more widespread in the coming years. This will allow developers to build more intelligent and sophisticated applications, and may lead to the development of new programming languages specifically designed for these purposes.

4. Growing demand for web assembly: Web assembly, a low-level language that can be run in web browsers, has gained traction in recent years as a way to build high-performance applications that can run in the browser. As the capabilities of web assembly continue to improve, it is likely to become an increasingly important language for web development.

5. Continued evolution of existing languages: Many of the programming languages that are widely used today, such as Java, Python, and C++, will continue to evolve and be updated with new features and capabilities. These languages will likely remain popular for the foreseeable future, as developers continue to rely on their proven track records and large developer communities.

Overall, the future of programming languages is likely to be marked by a combination of new developments and the continuation of existing trends. As the needs and capabilities of software continue to evolve, programming languages will continue to adapt and change to meet these needs.
Step-by-Step Guide: How to Build a Serverless Application from Scratch
Tags: serverless, aws, programming, webdev
Published: 2023-01-03 05:02:51

Serverless applications are a type of software architecture that allows developers to build and run applications without having to worry about the underlying infrastructure. This means that you can focus on writing code and building features, while the cloud provider handles the deployment, scaling, and maintenance of your application.

There are several benefits to building a serverless application, including lower costs, increased scalability, and improved reliability. In this article, we'll walk through the steps for building a serverless application from scratch, using a popular cloud platform as an example.

Step 1: Choose a Cloud Provider

The first step in building a serverless application is to choose a cloud provider. There are several options to choose from, including Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). Each provider offers a range of services and pricing plans, so it's worth doing some research to find the one that best meets your needs.

Step 2: Choose a Serverless Platform

Once you've chosen a cloud provider, you'll need to decide on a serverless platform. This is the framework or set of tools that you'll use to build and deploy your application. Some popular options include AWS Lambda, Azure Functions, and Google Cloud Functions.

Step 3: Set Up Your Development Environment

Next, you'll need to set up your development environment. This typically involves installing the necessary software and tools, such as an Integrated Development Environment (IDE) and the cloud provider's command-line interface (CLI).

Step 4: Write Your Code

With your development environment set up, it's time to start writing code. The specifics of this step will depend on the language and platform you're using, as well as the requirements of your application.

Step 5: Test and Debug Your Code

As you're writing code, it's important to regularly test and debug your application to ensure it's functioning correctly. This may involve running unit tests, setting up a testing environment, or using a debugging tool.

Step 6: Deploy Your Application

Once you've written and tested your code, you're ready to deploy your serverless application. This typically involves using the cloud provider's CLI to package and upload your code, as well as setting up any necessary resources, such as databases or APIs.

Step 7: Monitor and Maintain Your Application

Finally, it's important to monitor and maintain your serverless application once it's up and running. This may involve using the cloud provider's monitoring and logging tools, as well as making updates and enhancements to your code as needed.

That's it! By following these steps, you can build a serverless application from scratch using a popular cloud platform. While there are many details to consider and technologies to learn, the benefits of building a serverless application make it a valuable investment for many developers.
All You Need To Know About Django Logging
Tags: webdev, programming, python
Published: 2023-01-03 04:43:28

Django is a powerful web framework for Python that makes it easy to build web applications quickly. One important aspect of any web application is logging, which allows you to track events and errors that occur while the application is running. Django provides a built-in logging system that is flexible and easy to use.

To use the Django logging system, you will first need to configure it in your Django settings file. You can specify the logging level, the format of the log messages, and the location of the log file. For example:


```
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
        'simple': {
            'format': '%(levelname)s %(message)s'
        },
    },
    'handlers': {
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': '/path/to/django.log',
            'formatter': 'verbose'
        },
    },
    'loggers': {
        'django': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}
```

Once you have configured the logging system, you can use the logger object in your Django code to log messages. For example:


```
import logging

logger = logging.getLogger(__name__)

def view_function(request):
    logger.debug("Received request from %s", request.user.username)
    # ...
```

You can also use the logging module directly to log messages at different levels, such as debug, info, warning, error, and critical.

In addition to logging messages, Django also provides support for logging errors using the exception method of the logger. This will automatically log the stack trace along with the error message.

```
try:
    # code that may throw an exception
except Exception as e:
    logger.exception("An error occurred: %s", e)

```
It is important to keep in mind that the Django logging system is separate from the system logs on the server. You should not use the Django logging system to log system-level events such as server startup and shutdown, as this information should be logged by the operating system.

Overall, the Django logging system is a powerful and flexible tool that can help you track events and errors in your web application. By configuring the logging system and using the logger object or the logging module, you can easily log messages and exceptions to help debug and understand what is happening in your application.
How to create infinite scroll with fetch data from api in ReactJS
Tags: react, javascript, productivity, programming
Published: 2023-01-03 04:49:54

**What is infinite scroll**

Infinite scroll is a web design technique that allows a website to load new content continuously as the user scrolls down the page, eliminating the need for pagination. As the user approaches the bottom of the page, the next batch of content is automatically loaded, creating the illusion of an endless stream of information. This can be a convenient way to present a large amount of content to the user without overwhelming them with pagination links, but it can also make it difficult for users to locate specific content or navigate back to previous content.

**Example**

First, create a component called “InfiniteScroll” that will handle the infinite scroll functionality:

```
import React, { useState, useEffect } from 'react';
const InfiniteScroll = ({ fetchData, renderData, hasMore }) => {
  const [page, setPage] = useState(1);
  useEffect(() => {
    window.addEventListener('scroll', handleScroll);
    return () => window.removeEventListener('scroll', handleScroll);
  }, []);
  useEffect(() => {
    if (hasMore) {
      fetchData(page);
      setPage(page + 1);
    }
  }, [page]);
  const handleScroll = () => {
    if (
      window.innerHeight + document.documentElement.scrollTop
      === document.documentElement.offsetHeight
    ) {
      fetchData(page);
      setPage(page + 1);
    }
  };
  return <div>{renderData()}</div>;
};
export default InfiniteScroll;
```

Next, create a component that will use the InfiniteScroll component and handle the API fetching:

```
import React, { useState, useEffect } from 'react';
import InfiniteScroll from './InfiniteScroll';
const DataList = () => {
  const [data, setData] = useState([]);
  const [hasMore, setHasMore] = useState(true);
  const fetchData = (page) => {
    fetch(`https://api.example.com/data?page=${page}`)
      .then((res) => res.json())
      .then((res) => {
        if (res.length === 0) {
          setHasMore(false);
        } else {
          setData([...data, ...res]);
        }
      });
  };
  const renderData = () => {
    return data.map((item) => (
      <div key={item.id}>{item.name}</div>
    ));
  };
  return (
    <InfiniteScroll
      fetchData={fetchData}
      renderData={renderData}
      hasMore={hasMore}
    />
  );
};

```

Finally, use the DataList component in your main component:

```
import React from 'react';
import DataList from './DataList';
const App = () => {
  return (
    <div>
      <DataList />
    </div>
  );
};
export default App;

```

This will create an infinite scroll component that fetches data from an API and renders it as the user scrolls down the page. The component will stop fetching data when there are no more results to be fetched from the API.