teleren/devto huggingface dataset:
Despatch Cloud Announce Free Brexit Webinar Series  

Tags: ecommerce, brexit, shipping, software
Published: 2021-02-03 14:52:27

Yorkshire based e-commerce software company, Despatch Cloud, today announced that they will be holding a free webinar series online on 10th February 2021 at 11 am called Mitigating the Brexit Effect. 
 
This series of webinars will discuss the misconceptions around shipping internationally after Brexit and how you can mitigate the inevitable consequences on your online business and your customers. Many are unprepared for what Brexit will mean for their business operations, especially the influence on shipping their products to countries in the EU. Despatch Cloud has joined with Samos e-commerce to deliver a webinar series that will discuss these implications and how to minimise them. 
 
Ecommerce businesses and others who are interested in understanding the effects of Brexit on international shipping can register for the webinar for free at https://www.eventbrite.co.uk/e/mitigating-the-brexit-effect-tickets-138734355191
 
Matthew Dunne, Technical Director and Founder of Despatch Cloud, will be leading the presentation and will discuss how the multi-channel shipping, order and stock management software company plans to contend with the effects of Brexit. While Brexit is set to impact e-commerce businesses in many notable ways, Despatch Cloud remains optimistic about their own and their customers’ ability to adapt to the coming challenges. Matthew stated that “there is understandably fear about the situation with exporting to the EU based on the uncertainty whipped up by the media, but the new rules are just a procedure to follow, and with the right information there is little reason why UK businesses should miss out on this huge market on our doorstep, our greatest desire is to get UK PLC exporting”. 
 
Speakers from Samos e-commerce, who recently integrated with Despatch Cloud, will also present. Simon Perkins will discuss how  Cross Border logistics will work and how your company can benefit from cheaper customs clearance  and Alex Wyatt from SimplyVAT who will explain the VAT changes and how you can work efficiently with the new rules. 
 
This webinar series is an excellent opportunity for anyone interested in the effects of Brexit on e-commerce companies to gain insight into information not easily accessible through other channels. Each speaker will present for approximately 15 minutes with time for you to ask live questions at the end of each section. 
 
Despatch Cloud is a world-leading technology company, providing multi-channel shipping order and stock management solutions for e-commerce businesses. Their state-of-the-art  Order management, Shipping management & fulfilment software helps e-commerce companies to scale their business while maintaining control over their operations and costs. 
 
Find out more about the company on the official website: <a href="https://despatchcloud.com">Despatch Cloud Multi Channel Software</a>
![content%3A%2F%2Fcom.Slack.fileprovider%2Fslack_files%2F1608201208462](https://dev-to-uploads.s3.amazonaws.com/i/see4njceujpp4aun1xkl.jpeg)
Web development resources
Tags: career, education
Published: 2021-02-03 14:50:12

As a follow up to [yesterday's post](https://www.falldowngoboone.com/blog/on-changing-careers/), I wanted to share a quick list of online resources that I used to get started in my development career.

- [Codecademy](https://www.codecademy.com)
- [Treehouse](https://teamtreehouse.com)
- [EdX](https://www.edx.org), especially anything having to do with Harvard's [CS50 Introduction to Computer Science](https://www.edx.org/course/cs50s-introduction-to-computer-science)
- [Coursera](https://www.coursera.org)
- [Codewars](https://www.codewars.com)
- [Frontend Masters](https://frontendmasters.com), my absolute favorite resource for deep dive classes
- [Egghead](https://egghead.io)
- [MDN web docs](https://developer.mozilla.org/en-US/), the definitive resource for all things web development
- [freeCodeCamp](https://www.freecodecamp.org), the ultimate FREE boot camp
- [Codepen](https://codepen.io), a great place to experiment with ideas or even build a one-off web page

I'm always looking to expand my resource list, so if you have a favorite you don't see here, please let me know on [Twitter](https://twitter.com/therealboone).
Convert images to WebP
Tags: laravel, programming, codenewbie, performance
Published: 2021-02-03 14:48:33

When you try to optimize the front-end of you website you realized that [PageSpeed from Google](https://developers.google.com/speed/pagespeed/insights/?hl=es) suggests to use WebP images because, [as they say](https://developers.google.com/speed/webp), are 26% smaller in size.

I'm going to teach you how to use [Spatie Media Library](https://spatie.be/docs/laravel-medialibrary/), an awesome PHP + Laravel library to achieve this.

##Let's start

####1. [Install Spatie Media Library](https://spatie.be/docs/laravel-medialibrary/v8/installation-setup)

####2. [Prepare your model](https://spatie.be/docs/laravel-medialibrary/v8/basic-usage/preparing-your-model) 

####3. [Associate a file to your model](https://spatie.be/docs/laravel-medialibrary/v8/basic-usage/associating-files) 

####4. [Converting your images](https://spatie.be/docs/laravel-medialibrary/v8/converting-images/defining-conversions)

This step could be confusing because in the documentation doesn't specify how to achieve the proper conversion to WebP (or another format you need).

The first thing you have to do is to add a method called **registerMediaConversions** to your model. Look at this example:
```
class Course extends Model implements HasMedia
{
    use InteractsWithMedia;

    public function registerMediaConversions(Media $media = null): void
    {
        $this->addMediaConversion('cover')
            ->format(Manipulations::FORMAT_WEBP)
            ->width(320)
            ->height(200)
            ->nonQueued();
    }
}
```

###Important things

Calling to 
```
->addMediaConversion('cover')
``` 
we define the name of the conversion that we are going to need later to get the image.

```
->format(Manipulations::FORMAT_WEBP)
``` 
is the method that **makes the magic of conversion to WebP** (or to another format)

We include 
```
->nonQueued()
``` 
to perform the conversion without queue it.

###Retrieve the image

So after the conversion we need to retrieve the image to use it in the front-end.
```
$urlToFirstImage = $course->getFirstMediaUrl('images', 'cover');
```

The first parameter we define the collection where we retrieve the image.
Te second parameter we specify the conversion name we defined before.

So in that simple way we can convert an image to WebP using Spatie Media Library.


*Please refer to the [library documentation](https://spatie.be/docs/laravel-medialibrary/v8/introduction) to expand the usage and adjust this to your specific needs.*
Pure CSS Multiple-line Truncation with ZERO JavaScript
Tags: codepen, css
Published: 2021-02-03 14:37:16

Easy Truncate multi-line with Pure CSS:

For making the responsive websites the greater part of the time everybody confronted the challenge to handle the text. Thus, here's a solution for controlling multi-line text wrap with an ellipsis.

Demo + Code 👇

{% codepen https://codepen.io/atif-riaz/pen/MWbabre %}
Introductory Side Effect Algebra
Published: 2021-02-03 14:32:00

The original HTML file can be downloaded  [here](https://github.com/Double-X/Side-Effect-Algebra) .
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ky2j9h7hbs981j3cnlqy.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ehnb1gro2i9l37z8icy5.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/s00v7snzu4oxtwflbido.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/pyk5jkfyc73e51r34qxt.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hne4javgfrwqj4rn43l5.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ecsy5nv93vkqu70vcall.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/15ehdr1y48gy451hio84.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/f9rr020g3hdhk7xfu5w9.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hzasxs1j144742ogsdvi.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/j235fnbwt4tuigfpvvgg.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/dq08jlabdetim01glmei.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/7fwle18p0gbqt04wpvlk.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/qxi68tttgw711g4r23i9.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/6fj59ub07xa5cnylkqdr.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hk5xi7v0ldl1ht7d8kmy.PNG)![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/tp3psm7l0woqroyz8yyi.PNG)
Deploy Smart Contract on Binance Smart Chain
Tags: blockchain
Published: 2021-02-03 14:27:35

Ethereum Gas fees are getting expensive day-by-day. So, Binance launched a solution "Binance Smart Chain" with gas fees less than 5 cents ($0.05) but developers face one issue. That is how to deploy their smart contract on BSC.

If you are a video learner, here's the link: [Click here. It will redirect you to detailed YouTube Video](https://youtu.be/Fzyd2T6n2mI)

Requirements:
Metamask Wallet

Steps:
1) [Connect your metamask to Binance Smart Chain](https://academy.binance.com/en/articles/connecting-metamask-to-binance-smart-chain)
2) Open remix.ethereum.org
3) Create smart contract
4) Write Smart Contract
5) Select RPC to Smart Chain
6) Deploy

It will cost $0.05 for deploying your smart contract on Binance smart chain
BSC
jsPDF QR Code Tutorial & Code Samples - How To Generate A PDF With A QRCode using the jsPDF & qrCode.js Library
Tags: javascript, tutorial, codepen, webdev
Published: 2021-02-03 14:26:29

So, our goal is to generate a PDF using the jsPDF library. In the PDF, we need to have a QR code. When the QR code is scanned it takes the user to a particular URL. Let us see how we can accomplish all this.

## Part A: Generating A QR Code In JavaScript

To do this, we will be using the QRCode.js library. It's maintained by [davidshimjs](https://github.com/davidshimjs).

Below is a github gist with everything you need to do:

{% gist https://gist.github.com/scotch-bright/0864216e1c6714f224f6ebdc483eb141 %}

Here is a link to a JS fiddle so that you can see it in action.

{% codepen https://codepen.io/khoj-badami/pen/WNoQGXg %}

## Part B: Using jsPDF to Generate A PDF With The Generated QR Code

The plan is simple:

1. We add the jsPDF CDN url.
2. Create a new JS document.
3. Get the "base64version" of the generated QR code using some Javascript.
4. Use the "addImage" method to add the QR Code to the desired location in the document.

Let's look at some code:

{% gist https://gist.github.com/scotch-bright/a9a5a8168308ee9166e694ea2bb191ea %}

Let us look at a working codepen.

{% codepen https://codepen.io/khoj-badami/pen/jOVbVRr %}

## Part C: There is a better way than all this!

[We have developed a better way](https://www.pdfgenerator.cloud/) to generate PDFs. It's a simple drag and drop builder with QR Code support and many other things.

![PDF Generator Cloud](https://dev-to-uploads.s3.amazonaws.com/i/mo7gh0madfjv2csf5b4p.png)

[Check out PDFGenerator.cloud!](https://www.pdfgenerator.cloud/)
How can I scrape Excel sheet with Pivot tables using python?
Tags: python, xlrd, xlsx, scraping
Published: 2021-02-03 14:25:36

Hi.
Currently I'm working on a project where I have to extract content from exel sheet, Which is having pivot or filter tables.

How can I easily extract using python. Is there any library.?

Is there any links whr I can learn this.

#python #xlrd #xlsx #scraping
Building real applications with Orleans
Tags: microservices, aspnetcore, orleans
Published: 2021-02-03 14:03:00

Microsoft Orleans is a cross-platform framework for building distributed applications with .NET.

In this episode, Reuben Bond joins Cecil to talk about some of the capabilities of Orleans. Reuben even shows of an app he built for himself to learn Chinese. They cover application architecture, co-host alongside ASP.NET Core, and more.

{% youtube 8duFuggnj8o %}
If you liked this video and would like to see some more of our .NET content, please subscribe to our [.NET Developers YouTube Channel](https://www.youtube.com/channel/UCvtT19MZW8dq5Wwfu6B0oxw).

<ul>
<li><a href="https://dotnet.github.io/orleans/" target="_blank">Orleans Homepage</a></li>
<li><a href="https://github.com/ReubenBond/hanbaobao-web" target="_blank">Orleans sample application with Kubernetes hosting</a></li>
<li><a href="https://www.youtube.com/watch?v=KhgYlvGLv9c" target="_blank">Orleans at Microsoft</a></li>
</ul>
Day 4: Repeating Numbers
Tags: 100daysofcode, java
Published: 2021-02-03 13:58:28

Locate all repeating numbers in a given number of digits.

```java
import java. util.stream.IntStream;
import java. util.stream.Collectors;
import java. util.Map;

public class  DayFour {
    private static final int BASESIZE = 2;
    public static void main(String[] args) {
        String s = "546678765434228976";
        IntStream.range(BASESIZE, s.length() - 1).boxed()
          .map (k->
            IntStream.rangeClosed(0, s.length()-k).mapToObj(j->Map.entry(j, j+k))
              .collect(Collectors.groupingBy(p->s.substring(p.getKey(), p.getValue()), Collectors.counting()))
              .entrySet().stream().filter(e->e.getValue() >= 2)
              .collect(Collectors.toList())
          )
        .takeWhile(x -> !x.isEmpty())
        .forEach(y -> y.forEach(System.out::println));
    }
}
```
Better Sharing
Tags: communication
Published: 2021-02-03 13:55:44

---
title: Better Sharing
published: true
description: be the change series where I try to take my own advice
tags: communication
cover_image: https://images.unsplash.com/photo-1482356432770-3a99f07aba35?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=3300&q=80
---

# Better Sharing

I've been noticing things that make me unnecessarily happy lately. Like walking into a public restroom to find it completely empty, wearing brand new socks and underwear, or hearing the uncontrollable laughter of my one year old baby followed by hiccups.

I've also been noticing things that make me unnecessarily frustrated. Upon reflection, I find these are usually things I'm guilty of myself so it doesn't make much sense to be aggravated, and yet I am.

## Surface Area of Information

One case of this is how those I work with communicate. When I hear about something really late in the process or I'm not invited to a meeting that I would have found really interesting or even feel I needed to be in I get those bad feels. I generally wish my manager would relay much more information from the meetings he's in, but I understand summarizing to get the right message across while balancing protecting from distractions or information overload is a difficult task.

The behavior I'd like to see change is more reflection in the moment to consider how to increase the surface area for critical decisions and general information. For example, assign a scribe to take good notes and post them in the right channels. Record meetings and know that they're recorded, this not only lets others attend the meeting on their own time, it helps focus the meeting in the moment, allows you to only invite the critical people who need to be there real-time, and allows others (like me) to watch in 1.5x speed and skip around later to get the gist. Taking this one step further, there's some good software out there to transcribe meetings in real-time. The tech is not perfect here especially for tech jargon so this would require a bit of extra effort to review but would be awesome for accessibility.

On top of these pragmatic practices, I think a shift in culture/mindset is what I'd most like to see. Take to heart the idea that we are not sharing enough and not sharing effectively.

## Be the change.

I can't change other, but I can change myself. Tackling this problem I think, what if I collected critical information throughout the day, refined and filtered that content, then presented it each morning on our daily team standup? Gossip is a powerful human ability, maybe I frame it as gossip? 

This definitely goes beyond the technical definition of what belongs in standup and it would need to conform to the meeting time limits, but I think it's worth a try. Who knows, by being an example others might just follow suit.

I'll give it a try and report back here in a few weeks!
Run Current File with babel-node and VSCode
Published: 2021-02-03 13:55:26

A lot of times I'll open up a scratch file and run it through `babel-node` to see how it works while spiking out an idea or testing something that's just awkward to test initially otherwise. I wanted to see if there was some good way to get it to run with a keyboard shortcut in VSCode, and I managed to find it! What you want is to bind the `workbench.action.terminal.sendSequence` command.

To get it set up, open the command palette (`Ctrl+Shift+P`) and search for `Preferences: Open Keyboard Shortcuts (JSON)`. Now that you have your keyboard shortcuts file open, add a new entry by hitting `Ctrl+K Ctrl+K`. It'll prompt you to enter the shortcut you want to use. I use `Ctrl+r f`. Once you enter the mapping, hit `Enter` and VSCode will add a new keybinding entry to the file. Update that entry to look like this:

```json
{
  "key": "ctrl+r f",
  "command": "workbench.action.terminal.sendSequence",
  "args": { "text": "npx babel-node ${file}\n"},
  "when": "editorTextFocus"
}
```

That keybinding basically says "When I hit `ctrl+r f` while in the editor, run `npx babel-node` on my current file. It's a simple trick, but it can really help save time vs. jumping back and forth to the terminal to run a command on the file.
Usando uma versão específica do Java Runtime Environment no Manjaro
Tags: linux, jre
Published: 2021-02-03 13:48:52

Há algum tempo que tenho utilizado o [Manjaro](https://manjaro.org/) como minha distro. Devido aos últimos trabalhos principalmente com servidores e roteadores, fazia tempo que não utilizava banco de dados. Até que hoje, ao tentar executar o DBeaver, obtive a seguinte mensagem:

![Print de uma mensagem de erro que diz: 'An error has occurred. See the log  file /home/tadomaitis/.eclipse/-org.jkiss.dbeaver.product_7.3.2_1078795723_linux_gtk_x86_64/configuration/1612351910236.log. ](https://dev-to-uploads.s3.amazonaws.com/i/5ux3hsj9rpa2vrzh7n6f.png)

O log informava que o DBeaver não conseguiu encontrar a versão necessária do Java para executar, neste caso, a versão 11. Acontece que tenho mais de uma versão, e a versão _default_ é a que eu uso para o Android Studio.

Você pode verificar as versões instaladas com o comando 'archlinux java status'

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/mfivmo71fyq819p5t5ap.png)

Como podem ver, embora eu tenha a versão 11 instalada, a versão 8 é a _default_. Logo, eu precisa de alguma forma indicar para o sistema que ao executar o DBeaver fosse usada a versão 11.

A Arch Wiki tem um tutorial neste [link](https://wiki.archlinux.org/index.php/Java#Switching_between_JVM), mas pode ser um pouco mais difícil para quem nunca fez isso antes.

Primeiramente, use o comando `whereis nome_da_aplicacao` para ver qual é o seu binário de inicialização.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/wlb38vcq3zbbth4u5hwr.png)

No meu caso, aparece o arquivo `/usr/bin/dbeaver.bkp` pois fiz uma cópia antes de editá-lo. Aconselho fazer o mesmo; provavelmente você precisará do comando `sudo` para manipular esse arquivo.

```
sudo cp /usr/bin/dbeaver /usr/bin/dbeaver.bkp
sudo vim /usr/bin/dbeaver
```

Usei o vim para não sair do terminal, mas você pode usar qualquer editor de texto de sua preferência. Deixe o conteúdo do arquivo `/usr/bin/dbeaver` como segue:

```
#!/bin/sh
export PATH="/usr/lib/jvm/java-11-openjdk/bin/:$PATH"
exec /usr/lib/dbeaver/dbeaver "$@"
```
A primeira linha vai colocar o caminho da Versão da JDK antes do conteúdo da sua variável PATH. Logo, quando o programa requisitar o binário Java, esse local vai ser o primeiro a ser chamado. O padrão do caminho pode mudar (o meu é ligeiramente diferente do exemplo que consta na Arch Wiki), então você deve verificar o caminho correto. A segunda linha chama o binário para ser executado.

E com isso, já é possível executar o DBeaver com a versão 11 e ainda manter a versão 8 como _default_.

Esse é o meu primeiro texto tanto aqui no dev.to como em qualquer outra plataforma. Aprecio e agradeço quaisquer sugestões de melhorias.
How to Install OpenSSL 1.1.1i on AlmaLinux
Tags: almalinux, linux, openssl, apache
Published: 2021-02-03 13:44:45

In this article, we’ll explain how to install OpenSSL 1.1.1i on AlmaLinux.

OpenSSL is a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. OpenSSL is a software library for applications that secure communications over computer networks against eavesdropping or need to identify the party at the other end.

<strong>Prerequisites</strong>
A <a href="https://www.hostnextra.com/dedicated-server.html">AlmaLinux installed dedicated server</a> or <a href="https://www.hostnextra.com/vps-hosting.html">KVM VPS</a>.
A root user access or normal user with administrative privileges.

Learn More: <a href="https://www.hostnextra.com/kb/how-to-install-openssl-1-1-1i-on-almalinux/">Install OpenSSL 1.1.1i on AlmaLinux</a>
CSS Frameworks With Most Stars on GitHub ⭐
Tags: database, html, css, bootstrap
Published: 2021-02-03 13:37:05

1. Bootstrap - 147K ⭐

2. Semantic UI  - 48.9K ⭐

3. Bulma - 42.4K ⭐

4. Materialize - 38.3K ⭐

5. Tailwind - 35.2K ⭐

6. Foundation - 28.9K ⭐

Which one is your favourite?