teleren/devto huggingface dataset:
2021 CS50x
Tags: computerscience, beginners
Published: 2021-07-19 08:28:20

*CS50x(Intro to Computer Science)* is a free course offered by Harvard which focuses on the Programming Aspect of Computer Science.

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1626634073842/vgjlHocVP.png)

Its 2021 session is currently on-going and you might want to check it out because its pretty decent for a free resource and you can use it as a chance to learn about other Languages. I know this because I am currently in it and I'm just about to move to Week 5 which focuses on Data Structures.

Each Week(0 - 10) focuses on a different topic : 
* Scratch(Basically just a smooth intro into Programming for beginners)
* C (C Programming Language)
* Arrays
* Algorithms
* Memory
* Data Structures
* Python
* SQL
* HTML, CSS, JavaScript
* Flask
* Ethics

Like I said, It's a free course and anyone can register and start immediately and it also awards you with a certificate if you manage to get over 70% total score at the end of the course(There is also a paid certificate).

Each Week has a 'Problem Set' where you are tasked to solve a problem based on what you learned the following week, my most recent problem set which I just completed today was where you had to write a program using C which recovers JPEGs from a forensic image(not as complex as it sounds). The problems can get pretty complex FAST, a particular problem set for Week 3 called Tideman(Implement a Program that runs a Tideman election) is regarded as one of the hardest problems in the entire course even though it's just in Week 3 probably because that week focuses on Algorithms(Sorting algorithms and Recursion), Luckily it's not mandatory to do it so i did everything except it and moved on.

The main thing about the entire course that excites me is the Final Project of the course where you develop your very own software or something similar drawing on what you've learned in the course:

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1626633893741/ibf2wmlHd.png)

If you're interested in CS50, you can enroll [here](https://cs50.edx.org/)

Also there are other CS50 Programs(PAID) you can take -
* CS50 Web Development [Program](https://cs50.edx.org/programs/web)
* CS50 Artificial Intelligence [Program](https://cs50.edx.org/programs/ai)
* CS50 Game Development [Program](https://cs50.edx.org/programs/games)

`Note : You don't necessarily have to take each lecture weekly, you can take them daily if you want to(assuming you complete all problem sets daily which is unlikely except in the beginning)`
Developer job opportunities
Published: 2021-07-19 10:23:19

Hej hej Developers,

I am a Tech Recruiter from Sweden and I am looking for Developers to join a Game startup in Stockholm! 26M of players around the world!

We are main focusing on the following roles:
• Frontend developer with experience in Next.js and TypeScript or similar languages.
• Backend developer with experience with C# or similar languages.
• Fullstack developer with experience with above languages.
• iOS developer with experience with Swift and/or SwiftUI.

Only for people with a Swedish work permit or EU-Citizenship!

Send me a message or email if you are interested! nicolle@justtech.se
Day 146
Tags: 100daysofcode, programming
Published: 2021-07-19 16:35:54

Day 146/200 of #200DaysOfCode #100DaysOfCode 

- Solved one problem on Codewars. And I tried to solve the "Super power frequency function (5 kyu)"  but couldn't.

1 - Fun with lists: anyMatch + allMatch (7 kyu)
I want to create a game
Tags: gamedev, question
Published: 2021-07-19 19:25:36

Hey all,

I am new to this forum so I don't know if this is the right place to ask, please tell me if it is or isn't.

Anyway, I would like to create a game but I have no knowledge of languages like C++ or C#. I would quite like to learn and get a team of volunteers to help me make one and teach me. I am planning to make an open world game or a series of games. We can discuss it all together. I can do things like backend servers and websites but I just need help with the game itself.

If you are interested, please add me on discord. Jamie_#0001
Review: Um guia ilustrado de algoritmos para programadores e outros curiosos
Tags: algorithms, structures, programming, review
Published: 2021-07-20 04:54:56

---
title: Review: Um guia ilustrado de algoritmos para programadores e outros curiosos
published: true
description: 
tags: algorithms, structures, programming, review
cover_image: https://miro.medium.com/max/812/0*DYGle2JlwrzQnixq.png
---

> Esse review não é um resumo do livro. É apenas minha opinião, visão e pontos que achei interessante na obra. Assim como assuntos que senti falta ou não gostei da abordagem.

### Primeiras impressões

A primeira vista achei que seria um livro semelhante a série de livro "Use a cabeça", ou seja, livros com bastante narrativa, storytelling e ilustrações. Que é um estilo que não curto muito por não gostar do formato realmente. **Mas eu tive uma AGRADÁVEL surpresa**.

O livro trás excelentes exemplos sem se alongar muito, com ilustrações simples na medida certa junta a definições claras e diretas. Acho que o livro encontrou o equilíbrio perfeito entre exemplos, storytelling e teoria.

### Conteúdo

O livro para mim pode ser separado em três partes, essas partes tem diferentes complexidades, podendo ser divida entre básica, média e avançada. A própria ordem dos capítulos é definida dessa forma, a medida que avançamos na leitura o livro aborda assuntos mais complexos, de certa forma sequer percebemos essa mudança sútil.

Na primeira parte do livro é abordado os assuntos: arrays, listas encadeadas, notação big O, busca sequencial, busca binária, ordenação, Quicksort e hashes. Perceba que primeiro é apresentado duas estruturas de dados, depois a forma de como podemos analisar essas estruturas utilizando big O notation, então nos é apresentado algoritmos diferentes, com o conhecimento anterior podemos entender a vantagem de cada estrutura e cada algoritmo. Essa parte para mim é a de mais fácil entendimento e melhor custo benefício, com pouco conhecimento você se desenvolve bastante como programador.

Agora avançando um pouco para estruturas mais avançadas é nos apresentado o conceito de grafo. Avançando para grafo direcional, árvore, algoritmo para achar menor caminho e algoritmo de Dijkstra. Por ser um assunto mais complexo nesses capítulos é necessário uma leitura cautelosa.

Por fim o livro adentra em conhecimentos mais avançados e em algoritmos mais específicos, como k-vizinhos, problema do CACHEIRO VIAJANTE, programação dinâmica e outros. Possuindo também uma excelente explicação do algoritmo do cacheiro viajante, a forma que é abordado é incrível. Finalmente entendi esse problema é porque ele é tão complexo.

### Conclusão

Excelente livro para programadores de qualquer nível, incrível para aprender conceitos, revisar conceitos e aparar arestas. A forma como o livro desenvolve e explica a estrutura de hashes é notável.

> Porém senti falta de algumas coisas também, achei a explicação de pilha e fila bem superficial, sendo que hoje é um assunto muito importante, ainda mais com uma alta de micro serviços.
GDAL on Amazon Linux
Tags: aws, gdal, weather
Published: 2021-07-20 09:46:30

Install GDAL on Amazon Linux (Centos)

```shell
sudo yum -y update
sudo yum-config-manager --enable epel
sudo yum -y install make automake gcc gcc-c++ libcurl-devel proj-devel geos-devel
cd /tmp
curl -L http://download.osgeo.org/gdal/2.0.0/gdal-2.0.0.tar.gz | tar zxf -
cd gdal-2.0.0/
./configure --prefix=/usr/local --without-python
make -j4
sudo make install
cd /usr/local
tar zcvf ~/gdal-2.0.0-amz1.tar.gz *
```
Git Tag
Tags: git
Published: 2021-07-20 10:07:53

#### List all tags
```
git tag
```

#### Create new tag
```
git tag tag_name
```

#### Delete tag
```
git tag -d tag_name
```

#### Push specific tag to remote

```
git push origin branch_name <tag>
```

#### Push all local tags to remote
```
git push origin branch_name --tags
```
EuroPython 2021: Full-Day Workshops (by Django Girls and Humble Data)
Tags: europython, workshops, djangogirls, humbledata
Published: 2021-07-20 11:02:23

This year's edition of EuroPython begins with two days of training sessions as outlined in [the schedule](https://ep2021.europython.eu/schedule/). Many of these last 3 hours, however, we would like to highlight two specific workshops available to those who want a deeper dive. They are most valuable for people new to the Python language and ecosystem, and focus on different things.

## Django Girls Workshop
Returning for another year, Django Girls will be running a workshop that will teach you how to build your own blog from scratch over the course of the day. Attendees will be split into small groups, and there are no special requirements!
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w23ctn5sxrx6v2xf8512.png)

The Django Girls Workshop is scheduled on Monday, July 26th, starting at 09:30 CEST (07:30 UTC). Registration for this workshop is handled via application on their website, which details the criteria they look for in applicants.
To apply: https://djangogirls.org/nottingham/apply/

Read on to learn more about the workshop and Django Girls: https://ep2021.europython.eu/events/django-girls/

## Beginners' Day Workshop
There is also another workshop facilitated by [Humble Data](https://humbledata.org/), serving as an introduction to how Python is used in the data science community. This also has no special requirements, and attendees will similarly be working in small, focused groups.
![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gghwclvajx7t0cqpyyjh.png)
The Beginners’ Day Workshop run by Humble Data is scheduled for Tuesday, July 27, starting at 09:30 CEST (07:30 UTC). Attendance is free for conference and combined ticket holders.

Read on to learn more about the workshop and Humble Data: https://ep2021.europython.eu/events/beginners-day/

Enjoy,
[EuroPython 2021 Team](https://ep2021.europython.eu/europython/team/)
[EuroPython Society](https://www.europython-society.org/)
[EuroPython 2021 Website](https://ep2021.europython.eu/)
What is the difference between public, protected and private in Java?
Tags: java, programming
Published: 2021-07-20 17:56:17

Public, Private and Protected are called access modifier in java. This are the reserved keyword in java. They are defined the access of the classes and interfaces. And when one of them are not defined then it’s called default access modifier.

Basically public exposes to classes outside the package, private hides from other classes within the package and protected is a version of public restricted only to the subclasses. Ok, Let’s see an overview how the keywords defined the access of the classes and the interfaces.

Learn more: https://codesnipeet.com/what-is-the-difference-between-public-protected-and-private-in-java/
Laravel 8.0 Ajax Form Validation Example

Tags: laravel, codenewbie, programming, webdev
Published: 2021-07-20 18:40:10

Today we will make ajax form validation, so that we can make our form validation without refreshing web page. so, let’s start…

Create a Laravel new project, run this command 
composer create-project --prefer-dist laravel/laravel blog
Make Database connection
Go to the .env file and set the database name that you create in your MySQL dashboard admin panel

```
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_ajax_blog
DB_USERNAME=root
DB_PASSWORD=

```

**Create our custom route**

**routes/web.php**
```
Route::get('post/create', [PostController::class, 'postCreateByAjax'])
    ->name('post.validation');
Route::post('post/store', [PostController::class, 'postStoreByAjax'])
    ->name('post.validation.store');

```
**Create Model**
we will create Post model, run this command

`php artisan make:model Post`

**Models/Post.php**

```
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasFactory;
    protected $fillable = [
        'title',
        'description'
    ];

}

```
**Create Controller**
we will create controller named PostController, run this command

`php artisan make:controller PostController`

**app/Http/Controllers/PostController.php**

```
<?php

namespace App\Http\Controllers;

use App\Models\Post;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
class PostController extends Controller
{

    public function postCreateByAjax(){
        return view('ajax.ajax-create');
    }

    public function postStoreByAjax(Request $request){

        $validator = Validator::make($request->all(), [
            'title' => 'required',
            'description' => 'required',
        ]);

        if ($validator->passes()) {

            Post::create($request->all()); // it store data to the DB

            return response()->json(['success'=>'Added new records.']);

        }

        return response()->json(['error'=>$validator->errors()]);

    }
}

```
Get the full code: [Laravel ajax form Validation](https://codesnipeet.com/laravel-8-0-ajax-form-validation-example/)
What is CSR, SSR, SSG, ISR (Different Rendering Strategies) and which framework does it better (Angular, React, Vue)
Published: 2021-07-21 05:27:40

  
01) **CSR** stands for Client Side Rendering. Here the entire website is rendered in the browser.  
  
Use when building a admin dashboard and when seo is not important. Required javascript enabled on the browser.  
  
**Angular, React, Vue** all support it out of the box.  
  
02) **SSR** stands for Server Side Rendering. Here the webpages are rendered on the server and then sent to the client.  
  
Use when speed and seo is important. App works without javascript enabled in browser.  
  
**Angular** supports it via Angular Universal  
**React** via NextJS  
**Vue** via NuxtJS  
  
03) **SSG** stands for Static Site Generation. Here the webpages are rendered on the build time.  
  
Use when speed and seo is important. Host the app on any static hosting (netlify/vercel)  
  
**Angular** supports it via Scully/Angular Universal  
**React** via NextJS/Gatsby  
**Vue** via NuxtJS/Gridsome  
  
04) **ISR** stands for Incremental Static Regeneration. Here the webpages are regenerated on the fly based after the defined time.  
  
Same benefits as SSG. Entire app doesn't need to be build after each change.  
  
**Angular** doesn't support it  
**React** via NextJS  
**Vue** doesn't support it  
  
  
  
Can you share an app you built and which rendering strategy and framework you used❓
Laravel 8.0 Image Upload Example

Tags: laravel, programming, webdev, codenewbie
Published: 2021-07-21 16:42:24

Hello artisan,

How are you? Today I am going to show you how to upload images in your  Laravel project. In this tutorial, you can also upload your image reference to your database also. That means you can upload your image to the Database and also you can fetch images from your directory using DB image name reference.

Create a Laravel Project first, run this command
composer create-project --prefer-dist laravel/laravel blog
Make databse Connection , create a database in the Mysql database after that go to the .env file and set the values,

Make Database Connection and add the code to .env file
```
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_crud
DB_USERNAME=root
DB_PASSWORD=

```

Make your custom route,

**routes/web.php**

```
Route::get('/image/upload', [UploadImageController::class, 'imageUpload'])->name('image.upload.index');
Route::post('/image/upload/store', [UploadImageController::class, 'imageUploadPost'])->name('image.upload.store');

```

GET FULL CODE: [Laravel 8.0 Image Upload Example](https://codesnipeet.com/laravel-8-0-image-upload-example/)
TDD Conference 2021 - Want More Value Faster? Take Many More Much Smaller Steps - GeePaw Hill
Tags: tdd, oop, programming, agile
Published: 2021-07-22 03:04:33

First International Test Driven Development took place on July 10th. 

In this series, I will include every talk together with my notes and further reading.

Hopefully, a lot of readers will watch and rewatch the talks, as they are worth several reviews.

Let's continue...

# Want More Value Faster? Take Many More Much Smaller Steps - GeePaw Hill

## Bio 

We all know and love GeePaw and his inimitable style of "Helping Geeks Produce for Over 40 Years."

> TL;DR: Baby steps are the best way to go from one place to the next one.

## Talk

{% youtube 1mOs1_pvS9A %}

# My Personal notes

- TDD is like cooking. We use too much rice and too little garlic.
- Take many more (and) smaller steps to change faster.
- Old demonstrations are ridiculous tiny compared with today's.
- Single threaded construction
- Target didn't change.
- Today, we work on gigantic apps with changing requirements.
- We should divide and conquer (decompose) more.
- Take baby steps between activated states.
- We should fix maximum duration to keep steps "baby" (< 1 hour).
- The most efficient path is the one with smaller steps.
- Even if some steps don't produce user value or diverge.
- They just can't get worse.
- The [Walking Skeleton](https://wiki.c2.com/?WalkingSkeleton) is the working app.
- Software isn't plain geometry.
- Changeability costs less than rework avoidance.
- We seldom can go from one point to other in a straight line.
- Problems in software are not polynomial. They get NP Hard.
- During baby steps, we should not be interrupted. (or we will need to start over)
- Programming is thinking. It is not related to typing.
- on TDD we have automated consequence detection, fast context switching and executable documentation.
- *The worse bugs in the world are the ones you had no idea you just shipped.*
- We should maximize knowledge sharing to increase changeability.
- The only requirement is for steps to be as small as possible.
- TDD is not as simple as Red, Green, Refactor. It takes time to master.
- We need to collaborate by mobbing, pairing and swarming.
- They are not natural skills.

> We live in a world of misconceptions of thinking knowing syntax is at the heart of the problems. Lots of people believe there's a technical solution to every problem and that it would be best for all of us to sit in dark rooms working quietly by ourselves.

# Speaker Links

- Twitter [@geepawhill](https://twitter.com/geepawhill)
- Site [@geepawhill.org](https://geepawhill.org)
- LinkedIn [@geepawhill](https://www.linkedin.com/in/geepawhill/)

* * *

Please follow TDD Conference on:

- [YouTube](https://www.youtube.com/channel/UCKn-DadPoyYssfAOMk1LSew)
- [Twitter](https://twitter.com/tddconf)
How Leave Planning and Management increases Employee productivity
Published: 2021-07-22 05:50:23

All work and no play makes Jack dull. The same can be said of employees who are so engrossed in work that they do not take out time to rest. The resultant effect is a burned out employee who become distraught with work and starts making mistakes that they ordinarily would not make. Sunday evening becomes a time of huge scare because work resumes on Monday.
While goal getting and target achievement are topics that awash our screens on social media, little or no emphasis has been put on resting as a means of getting the best of an employee who is in fact a human being.
I have friends who are in their twenties and early thirties and have developed a high blood pressure because the work from week to week, month to month and year to year without applying for vacation or resting. They are commended in their organizations as exemplary staff but the inverse of this is a deterioration of their health without their knowledge. It is when their body shuts down and they are forced to visit the hospital that they discover their health challenges that they now have to manage as a result of not taking a rest.
Organizations should encourage leave planning and leave utilization by staff. Staff should plan their leave at the beginning of the fiscal year and rewarded for a 100% leave utilization at the end of the fiscal year.
Some of the effects of vacationing are
1. You return refreshed and re-energised
2. Your brain that has been stuck in a routine makes connection between different ideas.
3. Taking a step back from work and vacationing in a different environment helps you see things from a broader view point.
4. A proper vacation helps us reset and remotivate. 
5. You boost your performance. HR data of 125,000 US employees found that high performing employees took an average of 19 vacation days, compared to individuals with lower marks who took only 14.

How can HR managers effectively track leave planning and employee leave utilization? A leave management system. 
A good leave management system should have the following main features;
1. Leave planning. 
2. Self service for employee leave application. 
3. Leave approval workflow. 
4. Leave utilization report - visuals and excel. 
5. Notifications. 

Are you struggling with managing tired and unmotivated staff? HCMatrix is a web based Human Capital management system helps HRs manage employees leave life cycle and allows employees to apply for leave and view their leave utilization. Visit https://hcmatrix.com for more information.
Daily Developer Jokes - Thursday, Jul 22, 2021
Tags: jokes, dailydeveloperjokes
Published: 2021-07-22 12:00:20

---
title: "Daily Developer Jokes - Thursday, Jul 22, 2021"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Thursday%2C%20Jul%2022%2C%202021"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e12597d4e1c1.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q:___ What accommodations did the JavaScript developer request at the hotel?

___A:___ A room with a Vue.
 -->