teleren/devto huggingface dataset:
Cryptography Course Released on Boot.dev
Tags: crypto, webdev, go, beginners
Published: 2023-01-24 15:54:07

Greetings! We're excited to announce that we've unveiled a brand-new [cryptography course](https://boot.dev/learn/learn-cryptography) on [Boot.dev](https://boot.dev). We're convinced that this new experience is truly one of a kind. If you want to learn cryptography while writing real code in the [Go programming language](https://boot.dev/learn/learn-golang), you should check it out.

You can [get started for free here](https://boot.dev/learn/learn-cryptography).

## Why learn cryptography?

Ever wondered how your data is kept safe online? This course will teach you about encryption, password security, ciphers, and more. After you master the fundamentals, you'll learn how each cryptographic primitive is used in real-world applications.

If you're interested in becoming a valuable back-end engineer, an understanding of cryptography will set you apart from other candidates that will fail to answer basic security questions.

## Chapters

### 1. Symmetric Encryption

Learn the basics of cryptography: encrypting and decrypting a secret message with a key

### 2. Encoding

To be able to work with encrypted data, you need to understand how information is encoded in different formats

### 3. Brute Force

Learn about the most primitive, but most important kind of crypto attack

### 4. Caesar Cipher

Learn about the fundamentals of ciphers, starting with Julius Caesar's famous cipher

### 5. XOR

Study the importance of the XOR operation in cryptography and how it can be used to create the perfect cipher

### 6. Stream Ciphers

Stream ciphers can be used to encrypt data as it flows through a system

### 7. Block Ciphers

Block ciphers are commonly used to encrypt large amounts of data at rest, like entire hard drives

### 8. DES

DES is an older block cipher that's important to understand to appreciate modern block ciphers

### 9. AES

AES is a secure, modern block cipher that's used in many production applications

### 10. Asymmetric Encryption

Asymmetric encryption is used in HTTPS, digital signatures, and anywhere two parties need to securely communicate

### 11. RSA

RSA is one of the most popular asymmetric encryption algorithms

### 12. Hash Functions

Hashing has many applications in cryptography, including password security and message integrity

### 13. Digital Signatures

Digital signatures are a way to prove that a message was sent by a particular party

### 14. KDFs

Key derivation functions are how we derive keys from passwords or other keys securely

## What's inside?

You'll find text and image explanations of all the concepts, as well as video explanations of some of the more visually demanding lessons. You'll be writing real code in Go in most of the exercises, and our system will instantly check your code and provide instant feedback. You'll only enjoy the course if you enjoy an engaging hands-on experience.
F/OSS Spotlight: 🦆 DuckDB
Tags: database, duckdb, sqlite, datascience
Published: 2023-01-24 15:51:58

[DuckDB](https://duckdb.org) ([code](https://github.com/duckdb/duckdb)) is the SQLite of OLAP queries. 

That's high praise, since [SQLite is the most widely deployed database on the planet](https://www.sqlite.org/mostdeployed.html), and is legendary for it's stability, performance (in use-cases that fit) and testing.

DuckDB has lots of platform support:
- NodeJS
- Python
- R
- Java
- Julia
- C++

And it's only growing in popularity. Check out the [DuckDB documentation](https://duckdb.org/docs/) for yourself – it's a well-organized read and should make it easy to understand how DuckDB works.

Much like SQLite, DuckDB has an excellent ["why DuckDB" page](https://duckdb.org/why_duckdb) that you should read.

DuckDB is SQL-based so getting started with it is very familiar (if you know SQL of course), so I won't bore you with that, but jump right into the [docs on loading data](https://duckdb.org/docs/guides/import/csv_import) to get a good feel for how to get started.

This was [originally posted on AWSM FOSS](https://awsmfoss.com/duckdb/)
C# Tutorial – Create a Football Penalty Kick Game in Visual Studio with Win Forms
Tags: gamedev, csharp, visualstudio, football
Published: 2023-01-24 15:51:51

In this tutorial we will create a football penalty shootout game in visual studio using c# programming language. In this game you are able to click on a selective targets around the goal post and as you select one it will shoot the football towards it. The goal keeper has its own independent movements and he can block your goals from being made. The overall structure of the game is simple and easy to understand.  

Lesson Objectives –

    Create a football penalty shootout game in visual studio using c#
    Create click events using picture boxes
    Create goal keeper movements using lists and strings
    Using a timer object to animate the ball and the goal keeper
    Using image sprites and changing the goal keepers state within the game
    Using various data types such as Integers, Boolean, Strings and List to make the game work
    Using windows form components such as Picture Boxes, Timers and Labels to complete the game



Here is the youtube tutorial video
{% youtube V3AAh5UYlIg %}


[Download Football Pentaly Kick Game images here](https://www.mooict.com/c-tutorial-create-a-football-penalty-kick-game-in-visual-studio-with-win-forms/)


**See MOO ICT website or the YouTube Channel for more tutorials on this topic. **

Thank for checking this out and Happy Coding.
How to become a DevOps Professional in 2023?
Tags: beginners, devops, cloudskills, career
Published: 2023-01-24 15:44:45

1. Gain a strong understanding of the [Principles and Practices of Software Development](https://www.cs.cornell.edu/~dph/papers/principles.pdf) and [IT Operations](https://www.techtarget.com/searchitoperations/definition/IT-operations).

2. Build a foundation in key technologies such as [Linux](https://www.linux.org), [Git](https://git-scm.com/), and  [cloud computing](https://en.wikipedia.org/wiki/Cloud_computing).

3 .Learn about containerization and orchestration tools such as [kubernetes](https://kubernetes.io/ ) and [docker](https://www.docker.com/)

4 .Familiarize yourself with infrastructure-as-code tools such as [Terraform](https://www.terraform.io/) and [Ansible](https://www.ansible.com/).

5 .Learn about monitoring and logging tools such as [Prometheus](https://prometheus.io/) and [Elasticsearch](https://www.elastic.co/).

6 .Get hands-on experience through internships like [udacity](https://www.udacity.com/course/cloud-dev-ops-nanodegree--nd9991?utm_source=gsem_brand&utm_medium=ads_r&utm_campaign=12948014301_c_individuals&utm_term=127442639211&utm_keyword=cloud%20devops%20engineer%20udacity_e&gclid=CjwKCAiAoL6eBhA3EiwAXDom5ggmHRRMihJBkKV7kAmX6iMrP8OMaV5m5L5ZXluNSbL5x5S5OfeOYRoCou8QAvD_BwE),[torre](https://torre.co/t/devops/jobs/internships/munich-germany) or  personal projects hosted on [Github](https://github.com/), or contributing to open-source projects in [cncf](https://www.cncf.io/projects/) and [Kodekloud](https://kodekloud.com/).

7 .Consider earning certifications, such as [AWS Certified DevOps Engineer](https://aws.amazon.com/certification/certified-devops-engineer-professional/) or, [Azure Devops](https://azure.microsoft.com/en-us/products/devops) or  [Google Cloud Professional DevOps Engineer](https://cloud.google.com/certification/cloud-devops-engineer).

8 .Continuously learn and stay up-to-date with the latest trends and technologies in the field.

9 .Network with other professionals in the industry, attend meetups, and participate in online communities.

10 .Look for job opportunities, apply, and build your career in this field.
💡 Pandoc aaS
Tags: startup, saas, ideas, tooling
Published: 2023-01-24 15:43:41

Here's an Startup/SaaS idea to try out:

## 📑 Pandoc aaS

Ever heard of the swiss army knife that is [Pandoc][pandoc]? It can convert and reformat just about any document into *another* document.

Pandoc is amazing -- look at the insane [generated map of input to output formats][pandoc-formats-svg].

**💼 🧠 Build and offer Pandoc aaS for enterprises and individuals**

Build and offer Pandoc aaS for enterprises and individuals

This is a no-brainer service -- most people don't know this exists, and I'd argue most *developers* don't even know this exists (until they search, then all roads lead to Pandoc for document conversion). 

Search for ["pandoc online"](https://www.google.com/search?hl=en&q=pandoc%20online), though, and you get *just about nothing*.

It's not rocket science -- build a service that makes it easy to convert documents using pandoc. You could build this service in **less than a day** and launch it to HN (for a start), especially if you use providers for the "hard" parts (uploading documents, launching pandoc processes).

The hard part of this idea is probably getting the SEO juice up enough to rank first for "document convert" online or "pandoc online" or some such search. Use [Google trends](https://trends.google.com/trends/explore?date=today%205-y&geo=US&q=pandoc,document%20convert%20online,convert%20doc) to your advantage.

There are a lot of juicy integrations and enterprise value to explore (think context menu integration in Google Docs/Office 365/etc), so let your mind wander.

[pandoc]: https://pandoc.org/
[pandoc-formats-svg]: https://pandoc.org/diagram.svgz?v=20230118131826

This was [originally posted @ Unvalidated Ideas (Edition 39)](https://unvalidatedideas.com/editions/39)
Semantic Versioning(SemVer) and Conventional Commits
Published: 2024-01-24 14:42:20

---
title: Semantic Versioning(SemVer) and Conventional  Commits
published: true
date: 2023-01-24 15:34:14 UTC
tags: 
canonical_url: https://andwati.github.io/blog/semantic-version-and-conventional-commits/
---

Adopting best practices in your git and build workflows. …
Better Runtime Diagnostics
Tags: programming, csharp, unity3d
Published: 2023-01-24 15:32:04

Hi everyone! Right now I'm working on open-source free tool for Unity, which will allow developers to preview colliders/transforms/collisions just in Game View or in Build.

From my point of view Unity really lacks system which will show debug info over Game View or in Build. For example, while you testing VR from headset, or sending build to tester, you need more info that you can't normally log or you need to compare logs to video. In such a case BetterRuntimeDiagnostics will help to gather info.

This plugin will contain:
1. Preview for objects on scene and their bounds;
2. Draw Raycast in Game View or build;
3. Watch collisions and triggers between colliders;
4. Watch CPU/GPU/RAM/Disk/Networking usage.

As well you can check my other plugins already published by the [link](https://github.com/techno-dwarf-works/better-plugin-collection/wiki)

You can support Ukraine - [here](https://u24.gov.ua) or [here](https://savelife.in.ua/en/)

And you can support me - [Buymeacoffee](https://buymeacoffee.com/uurhaa)
Design e estratégia
Published: 2023-01-24 15:19:26


Transformar uma ideia em algo que vai sair do papel, ou em uma oferta de uma empresa existente, é tudo menos simples e requer a ativação de um processo real de pesquisa de modelo de negócios. Em outras palavras: a melhor das ideias não é suficiente para dar vida a uma empresa de sucesso.

Isso porque:

- é necessário esclarecer bem, para si mesmo antes dos outros, o problema que se pretende resolver com seu produto ou serviço
- precisamos identificar quem está enfrentando o problema que pretendemos resolver e como está lidando com ele, antes de lançar nossa nova solução
- é necessário avaliar a viabilidade da sua ideia de negócio não só em termos técnicos, algo em que mais focamos quando lançamos uma nova solução, mas também em termos de criatividade
- Trata-se, portanto, de seguir um verdadeiro caminho de pesquisa, definição e validação dos elementos fundadores do negócio: o business design

Pensar nesses termos é eficaz porque foca nos elementos fundamentais do valor do cliente , o que é realmente importante e, graças à validação de testes, adapta rapidamente as características da solução para aumentar a sua atratividade e chegar rapidamente ao mercado.

Minimiza o investimento necessário para pôr em marcha novas soluções, reduz o tempo e os recursos financeiros gastos em elementos pouco significativos para o cliente e inicia o desenvolvimento da solução final apenas quando tem a certeza de ter seguido o caminho certo.

A identidade visual de um negócio não requer uma reflexão sobre essas questões?

Saiba mais: [Canva para Negócios](https://adeusponto.com/curso-canva-para-negocios/)
How to build ERC 20 Token and Faucets Dapp
Tags: blockchain, web3, nextjs, smartcontracts
Published: 2023-01-24 15:15:22

Hello friends, Today in this post we will learn to build our own ERC20 token and a faucet Dapp(Decentralized App) using which we can interact with our contract. So we will learn to develop an ERC20 smart contract and a faucet contract which will help in requesting tokens and we will create our frontend using Next JS and use ethers library for interacting with the contract. So let’s get started.

Please read this post in our website
[How to build ERC 20 Token and Faucets Dapp?](https://codewithmarish.com/post/erc20-token-and-faucets-dapp)

Also please don’t forget to subscribe to our youtube channel codewithmarish for all web development-related challenges.

[Code With Marish | Youtube](https://www.youtube.com/channel/UCkPYmdVz8aGRH6qCdKMRYpA)

Posted with ❤️ from somewhere on the Earth
Optimizing to find the top 3 numbers from an array
Tags: adventofcode, programming, leetcode, javascript
Published: 2023-01-24 15:00:24


How to find the the top 3 largest number in an array parsing from a file..

There were many solution popping...  like sorting and grabbing the top 3 elements,
That would require:
1. parsing the file to an array --> `O(n)`
2. sorting the array --> `O(n)`
3. getting top --> `c` (constant time)

Doing this was boiling my blood.. and i was at unrest, so i wanted to optimize it by:

1. parse the file and keep record of top 3 in an array `[0, 0, 0]` and keep comparing the current with top 3 to update them.  --> `O(n)`

As follows:

```ts
     // current is greater then topThree first then set the all top three  
      if (current > topThree[0]) {
        topThree[2] = topThree[1];
        topThree[1] = topThree[0];
        topThree[0] = current;
      }

     // current is greater then topThree second then set bottom two  
      if (current < topThree[0] && current > topThree[1]) {
        topThree[2] = topThree[1];
        topThree[1] = current;
      }

     // current is greater then topThree third then set the third only.  
      if (current < topThree[1] && current > topThree[2]) {
        topThree[2] = current;
      }
``` 
 

For more details check the code for **day 1, aoc 2022** here:

https://github.com/m-nathani/aoc-2022/blob/main/src/days/day-1.ts

Looking forward to hear from you on comments to find other learnings you had for day1 or could improve the current approach more.
Things learned from AdventOfCode 2022
Tags: adventofcode, typescript, javascript, programming
Published: 2023-01-24 15:00:11


### What is AdventofCode (aoc) ?

Its series of 25 leetcode / problem solving question that you can solve to learn and enjoy.

Its writtern by [Eric Wastl](http://was.tl/), please follow and support his work.

For more insights check the link below:
https://adventofcode.com/2022/about.

---


### Lets Jump to learnings ! :D
Adventofcode has total 25 question, from which to the date of writing i am attempted few out of it.

Can check the implementation here: https://github.com/m-nathani/aoc-2022/

- [Day 1](https://dev.to/mnathani/optimizing-to-find-the-top-3-numbers-from-an-array-15gn) : [code](https://github.com/m-nathani/aoc-2022/blob/main/src/days/day-1.ts)

- [Day 2](https://dev.to/mnathani/how-the-typescript-record-type-works-4c8) : [code](https://github.com/m-nathani/aoc-2022/blob/main/src/days/day-2.ts)

Moreover, have learned / revised things i could not have done with the regular programming i do at work 

---

I was motivated on attempting the aoc last year in 2022 by my colleague @hendriklammers, who i admire of how he is keen to learn different techs and solving problems. So thank you. :)


Regards.
⭐️Back-End Developer Step by Step Roadmap Guide 2023⭐️
Tags: backend, javascript, beginners, webdev
Published: 2023-01-24 14:56:33

## Learn Basic Front-End Dev📌

You must understand the fundamentals of front-end development and how things work in the browser.

- HTML
- CSS
- JavaScript

Once you understand the fundamentals of front-end development, you can move on to learning a programming language. There are numerous programming languages that you can learn to become a backend developer.

## Choose a Programming language📌

- JavaScript
- Python
- PHP
- Ruby
- Rust
- Java
- Go Lang

## Choose a Framework according to your programming language📌


#### JavaScript or Node.js

- Express.js
- Nest.js
- Fastify
- Sails
- Hapi
- Restify
- Koa

#### Python
- Django
- Flask

#### PHP
- Laravel
- Symfony

#### Ruby
- Rails
- Sinatra

#### Java
- Spring
- Google Web Toolkit

#### Rust

- Rocket.rs

#### GO

- Gin

## Backend concepts to learn📌

- HTTP / HTTPS
- REST
- GraphQL
- Web Sockets
- CORS
- MVC Architecture
- CI / CD
- Serverless

## Learn about databases📌

There are 2 Types of Databases:
1. SQL
2. NoSQL

#### SQL
- MySQL
- PostgreSQL
- SQL Lite

#### NoSQL
- MongoDB
- CouchDB
- DynamoDB

## Learn Caching📌

- Redis
- Memcached

## ORM / ODM📌
- Mongoose (MongoDB)
- Prisma (SQL)
- Sequelize (SQL)

## Essential things to learn📌
- Authentication
- OAuth
- Hashing (bcrypt)
- Rate Limiting
- Reverse proxy
- Load balancer
- Documentation (Swagger)

## Learn any HTML Templating Engine📌
- EJS
- PUG
- Handlebars
- doT
- Jade
- Eta

## Other Important Topics📌
- Linux
- Git
- Terminal (CLI)
- Basic Networking
- Web Security
- Payment Gateways
- Testing

## Learn to deploy and learn any cloud service📌
- Google Cloud
- AWS
- Digital Ocean
- Azure
- Heroku
- Linode
- Vercel

## Optional things to learn📌

- Docker
- Performance
- Scalability
- Kubernetes

## Tools to learn as a backend developer📌

- Yarn
- NPM
- Postman
- Insomnia
- GitHub

If you found this useful, consider:

✅ Follow @IArchitSharma for more content like this
✅ Follow me on [Twitter](https://twitter.com/IArchitSharma) where I share free resources on regular basis!
Looking for Senior Frontend developer working remotely in Europe/Greece or Kyrgyzstan
Tags: javascript, webdev, vue
Published: 2023-01-24 14:35:45

Hi, im a new here. I want to find someone to join our team at Turbine Kreuzberg company. Here u can find the job description https://turbinekreuzberg.com/en/jobs
My Linkedin: https://www.linkedin.com/in/radmila-pak-337545142/
SERIAL in SQLite
Tags: rails, webdev, database, sqlite
Published: 2023-01-24 14:22:22

Today I received the following error when creating a new Rails `ActiveRecord` with `CourseStatus.create!(name: 'Klettern für Anfänger')` in a SQLite database:

```
SQLite3::ConstraintException: NOT NULL constraint failed: course_statuses.id
```

The problem was that the `schema.rb` defined the primary key as `serial` (originally created by a Rails 5.0 migration):

```
create_table "course_statuses", id: :serial do |t|
  t.string "name", limit: 255
  t.datetime "created_at"
  t.datetime "updated_at"
end
```

Since SQLite is [dynamically typed](https://www.sqlite.org/faq.html#q3), the `id` primary key will simply be declared with the non-existent type `serial`. And this means that the SQLite adapter will not mark the primary key to be auto-incrementable. Only `INTEGER` types can be auto-incremented in SQLite.

The solution is to remove all `id: :serial` from the `schema.rb` (then `db:schema:load db:schema:dump`) and leave the decision about how to create the tables completely up to the database adapter.
Discovering open source repos with Quine
Tags: news, github, opensource, tutorial
Published: 2023-01-24 13:01:32

Hello DevTo community 👋

This is Rodrigo from [Quine](https://quine.sh/), a new platform that helps you find `good-first-issues` on GitHub based on your language and topic preferences.

Contributing to open source is difficult, so we set ourselves to split up the contributor journey into small pieces and simplify each piece individually.

![Setting your curriculum in Quine](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5z8hdvl9elgo3n9hcit7.gif)

Probably, one of the lengthiest and chaotic segments of the contributor journey is the *discovery phase*. Opportunities to contribute to open source don’t usually land on our hands. In fact, most contributors identify opportunities by solving bugs or adding features to the tools they use on a regular basis. This is the most natural and organic way to add our grain of sand to a codebase, but also a journey that we don't have much control over.

We think that discovering new repos on GitHub should be as easy as discovering new content on _Reels_ or _TikTok_. At Quine we're working very hard to make the process of picking a repo easy and fun. All you have to do is choose your language and topic preferences and we'll point you in the right direction. **It is that easy!** 

So start browsing open source now by logging in to Quine and letting us know which topics and languages you’re interested in. Quine will automatically use this information to set your default search parameters!

Quine’s tools for repo discovery don't end there. Have you tried our feature for _finding new tools_ and _finding alternative repos_? If you have, let us know what you think in the comments! 👇 If not, stay tuned - we’ll give them a proper introduction in our next post!
Bruce Lee Tribute Page
Tags: webdev, css, html, beginners
Published: 2023-01-24 13:58:02

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9mqvm75i9t7v7y2riwb7.png)

This was my second portfolio project for freeCodeCamp's responsive web design certificate. This project was a really great learning experience in regards to my understanding of how to center a lot of different elements as well as how border-radius worked. 

A key thing that I gained confidence in during this project was the box model as well as how to use the border-radius property. I really struggled at first with understanding how to properly center all of my elements and how to keep them proper sizes at different view-widths. Eventually I started to learn to set my actual widths using my base width and then the scaled up widths using a max-width measured in pixels. To fix my border-radius and get a circular rather than elliptical rounding, I learned that the border-radius property actually takes two arguments in order to specify how round it is.

In the future I would like to get better at planning out in advance how I'll organize my elements and I'd like to better understand how to get the most out of using flexbox. I also feel ready to begin learning React and Bootstrap to help with my styling.

For those interested, the source code can be found here https://github.com/Dwayne-Lacey/tribute-page and the live page is deployed here https://dwayne-lacey.github.io/tribute-page/

I'd love to hear feedback on how I could improve! Thanks for reading