teleren/devto huggingface dataset:
BEST PRACTICES FOR REST API DESIGN
Tags: webdev, productivity, beginners, design
Published: 2021-06-08 11:24:52

**1. API DOCUMENTATION**
Always provide clear and concise documentation is necessary for any API, it becomes harder to use that API later without good documentation. So make sure that your API has good documentation using simple languages with updates and new releases.

**Your API Documentation should include the following:**
-Simple and easy to read language.
-Implementation of API in different programming languages.

**2. DON'T RETURN PLAIN TEXT**
It is not necessary to go above JSON in REST architecture, as most REST APIs use JSON as a data format. But there are times when returning a body that contains a JSON-formated string isn't enough.

Such as you can specify the Content-Type header set to the value application/json.

**3. AUTOMATE CACHING**
Repeated request and responding to those request consumes resources and this becomes a sign of flawed design. To solve this problem you must store data fetched from the API on the server and serve later from there.

However, there are times when the data becomes outdated and needs to be updated, in this case, we have some industry caching solutions (Redis and Amazon ElasticCache) that can cache data even after making changes.

**4. USE PLURAL RESOURCE NOUNS**
There is nothing wrong with singular resource nouns, but if you want to just keep things simple, then it is recommended to use plural resource nouns.

For example, GET/post/3/ looks fine but what about GET/post/?. In this case, we are not confirmed if we are getting only one post or all of them.

To avoid this approach and be more consistent you can use plural resource nouns.

**5. HANDLE TRAILING SLASHES**
Using trailing slashes is a matter of choice, but make sure that you are sticking to that one choice with trailing slashes. As there are times when inconsistency will be there due to some minor mistakes.

For example, in a REST API project, you can receive a 500 Internal Error just because of a missing trailing slash.

**6. FILTERING AND PAGINATION**
Every database behind a REST API becomes larger with time and there are times when we have to control the flow of the data at once, otherwise, that can bring our systems down easily. This is why always allow filtering in your APIs.

We also need to paginate data to return a few results at a time, otherwise, all of our resources will blow because of trying to get all the requested data at once.

[Best Practices For Rest API Design](https://exceed-team.com/tech/best-practices-for-rest-api-design?s=de&a=a)
Creative Rats - Blog
Tags: uidesign, uxagency, uiuxagency
Published: 2021-06-08 11:08:17

Creative Rats became a leading User Experience Design agency. We have been providing user experience design services for more than 10 years.


Use this complete guide on how to hire a UI UX designer. Hire top-notch UI/UX designers. Contact us today!


Hire a UI UX Designer team at an affordable cost. We have a full range of user experience (UX) design services delivered by world-class certified UI/UX professionals. Call us today for the Remote Designer Team.


Looking to hire graphic designer team? Hire India's Most Productive Graphic Designers team for your business. Contact us to build your dream IT team at an affordable cost.


Creative Rats is a Top-rated user interface design company. Our aim is to develop a strategy that supports both your business goals. Hire Now.

Reference: 

https://creativerats.com/ 
https://creativerats.com/hire-graphic-designer.html 
https://creativerats.com/hire-ui-ux-designer.html 
https://creativerats.com/hire-website-developer.html 
https://creativerats.com/blog/how-to-hire-a-ui-ux-designer/ 
https://creativerats.com/blog/user-interface-design-company/
Breakthrough
Tags: codenewbie
Published: 2021-06-08 11:06:49

At the start of my coding journey I was full of inspiration and hope. However, as time went on I became frustrated, confused and felt like I had no direction. 

The more I did, the more I compared myself to others. Comparing myself to others made me upset about my progress and my perceived inability to learn.

Yet, there was something different that kept me going and helped me ignore these negative feelings. In the past, I often gave up if I struggled with something. I didn’t have the grit or patience to keep going. 

But this time, I learned something new that was very important. I learned that It's ok if you don’t get it the first time, you can keep trying. This simple idea is what kept me going and it’s what helped me have my first ‘breakthrough.’ The breakthrough was being able to understand something and move on.

Most of us think the older we get, the harder it is to learn. But that isn’t the case. It’s about your mentality. It's about being open to learn new things and willing to make mistakes.

It's also about not comparing yourself to others. Your only concern is you being able to learn and understand something for yourself. It’s something you can control and will lead to changes in your life.

Acting like you don’t know anything is probably one of the best mentalities to have. It primes your brain for learning and helps stop your preconceived notions preventing you from learning something new. 

There were many times that I was annoyed when I didn’t understand something. But what I realised is that I won’t understand it straight away, it takes time. The more you can remind yourself of this the better.

This often helps give you perspective. It will give you the ability to assess things rationally and objectively. You can break things down into different parts, take breaks and approach things from different angles.

When something gets too hard, it’s more than ok to ask for help or to take a break from the problem. This will often give you a renewed perspective and help you work through the problem in your own way.

You will always have moments and days where you will feel frustrated and anxious. But always remind yourself that:
you are not going to understand something straight away,
you will understand it eventually, and 
it will be rewarding when you do.

Hard work, persistence and believing in yourself is what leads to breakthroughs.
UI Dev Newsletter #60
Tags: webdev, html, css, javascript
Published: 2021-06-08 09:54:14

- [25 Years of CSS](https://bit.ly/2SY1pMK)
Eric A. Meyer takes a look at notes about CSS that he wrote 25 years ago while attending the WWW5 conference.


- [Styling And Animating SVGs With CSS](https://bit.ly/3vYkMUC)
Sara Soueidan explains why it is essential to optimize your SVGs, why put in the effort to make them accessible, and how to style and animate them with CSS.


- [HTML and CSS techniques to reduce your JavaScript](https://bit.ly/3fTtbTt)
Anthony Ricaud explores native solutions that are available to most of your users and don’t require JavaScript.


- [The perfect link](https://bit.ly/2T5Wr0j)
Rian Rietveld tries to answer how do we write, design, and code a link that works for everyone on every device.


- [Don't Develop Just for Yourself - A Developer's Checklist to Accessibility](https://bit.ly/2T3p7ag)
Eevis Panula provides information about accessibility and what things to check manually after automated testing.


- [Color psychology in web design](https://bit.ly/34YZbzf)
Eleftheria Batsou shares a quick guide about picking the “right” color for the web-based on psychology.


- [JavaScript Notes & Reference](https://bit.ly/3cnXAar)
Wes Bos shares helpful notes based on his Beginner JavaScript Video Course.


- [Compress Image Online](https://bit.ly/3uWovkj)
Compress JPG and PNG images at light speed with a Browser-based Image compressor. Private, Works Offline, No Limits, 0 carbon emission.



Happy coding!

[Subscribe to the newsletter here!](https://bit.ly/34155z3)
PST를 MSG로 변환-Outlook 이메일을 MSG 파일로 내보내기
Published: 2021-06-08 09:32:11

이 게시물의 도움으로 수동 전략을 사용하여 PST를 MSG 레코드로 변환하십시오. 마찬가지로 가장 안정적인 PST to MSG 변환기를 사용하여 Outlook 메시지를 컴퓨터 형식으로 MSG 문서로 교환하십시오. <b><a href="https://www.gaintools.com/pst/msg/">PST에서 MSG로 변환</a></b>

현재 기간 동안 Microsoft Outlook은 구성 요소가 풍부한 전자 메일 응용 프로그램의 선택과 관련하여 많은 고객이 가장 선호하는 결정입니다. Outlook은 모든 정보를 PST 레지스트리 위치에 저장하므로 동시에 PST 문서의 성능이 저하되거나 심각한 문제가 발생할 수 있습니다. 따라서 그러한 뇌 막힘을 방지하기 위해 PST 정보를 이웃 단위에 강화하는 것은 적절한 대안입니다. 현재 고객은 메시지, 연락처, 일정, 약속, 메모, 저널과 같은 Outlook 사서함에 손쉽게 액세스하여 강화로 사용할 수있는 MSG 위치에 액세스 할 수 있습니다.

PST를 MSG 레코드로 변환하기 위해 최선의 답변을 간절히 필요로하는 Outlook 클라이언트에 속한다고 말하는 것이 맞습니까? 그 때 신뢰할 수있는 수정 사항을 정당하게 공개 할이 블로그를 계속 읽으십시오.

<b>PST 파일을 MSG로 변환해야하는 주요 이유</b>

Outlook 클라이언트가 작업 실행을 단순화하기 위해 Outlook 메시지를 MSG 레코드로 거의 변경하는 경우가있을 수 있습니다. 다음은 PST에서 MSG로 디자인을 변경하는 몇 가지 동기입니다.

고객이 Outlook 메시지를 대량으로 또는 특히 동시에 공유해야 할 때. 이러한 상태에서 MSG 구성에 Outlook 메시지를 저장하여 해당 메시지를 보내야합니다.

PST 문서의 성능 저하 문제가있을 수 있습니다. 이 라인을 따라 중요한 PST 문서를 강화하는 것이 제안됩니다.

하드 드라이브에서 Outlook 정보를 교환해야하는 경우 Outlook 메시지 또는 사서함 항목을 MSG로 재배치하는 것이 PST에서 MSG로 전환하는 가장 안전한 옵션입니다.

Outlook 레코드를 MSG 그룹에 저장하면 정보가 저하 될 가능성이 적습니다.

수동 방식을 사용하여 PST에서 MSG로 전환하는 데 많은 전문 기술이 필요하지 않음에도 불구하고. 지루한 방법론이기 때문에 고객은 이메일을 Outlook에서 MSG로 전환 할 가능성이 적습니다.

이 방법론은 사서함에서 MSG 레이아웃으로 다른 Outlook 메시지 또는 기타 항목을 교환 할 수 없습니다.

PST에서 MSG로 물리적으로 전환 할 가능성이 크다는 것이 사실입니까? 자신에게 스트레스를주지 마십시오. 가장 신뢰할 수있는 최고의 컨버터 장치로 수동 제한을 극복 할 수있는 이상적인 기회입니다.

<b>도구에서 제공하는 일부 고급 기능</b>

1. 첨부 파일과 함께 Outlook 이메일을 MSG로 내보낼 수 있습니다.
2. 몇 번의 클릭만으로 여러 PST 파일을 MSG 형식으로 변환
3. 손상되고 암호로 보호 된 PST 파일을 MSG 형식으로 내보내기
4. 데이터 손실없이 내 보낸 PST 파일의 데이터 무결성 유지
5. ANSI 및 유니 코드 파일 형식에서 Outlook PST 파일을 효율적으로 변환
6. 지정된 날짜 범위 내에서 선택적으로 PST를 MSG로 변환하는 날짜 필터 옵션
7. 다양한 명명 규칙 패턴을 활용하여 Outlook 이메일을 MSG 파일로 내 보냅니다.
8. 최신 Windows 10 운영 체제 및 모든 이전 버전에 쉽게 설치

<b>끝낼 시간</b>

PST를 MSG 레코드로 변환하는 탄탄한 대응을 실현하기 위해 고객 사이에서 엄청난 증가가있었습니다. 이 게시물에서 우리는 수동 해킹과 컴퓨터 해킹을 모두 언급했습니다. 어쨌든 수동 방법론은 거래 할 대규모 PST 레코드가있을 때 실용적인 수정이 아닙니다. 이런 식으로 Outlook 메시지를 MSG 문서로 변경하려면 특정 또는 다양한 PST 메시지를 MSG 그룹으로 변경할 수도있는 외부 장치를 선택하는 것이 열성적입니다.
Types of Document in Software Testing
Tags: testing, beginners, tutorial
Published: 2021-06-08 09:25:54

**Types of Document in Software Testing:**

1. *Test Plan*
2. *Test Scenario*
3. *Test case*
4. *Traceability Matrix*

*Test Plan:*
Test Plan is a document prepared at the project level. It determines the work products to be tested, how they will be tested, and the distribution of test types among testers in general.

A Test plan is a document **describing the scope, approach, objectives, resources, and schedule of a software testing effort.**
It is the document that outlines the what, when, how, who more of a testing project.

*Test Scenario:*
A Test Scenario is a **single-line statement that specifies the area in which your application will be tested**.

A TEST SCENARIO (**What to test**) is defined as any functionality that can be tested. It is also called Test Condition or Test Possibility.

As a tester, you should put yourself in the end user’s shoes and figure out the real-world scenarios and use cases of the Application Under Test.

*Test case:*
A test case is a document that **describes an input, action, or event, and its expected results, in order to determine if a feature of an application is working correctly**.

A test case (**how to test**) is a document which consists of a set of conditions or actions which are performed on the software application in order to verify the expected functionality of the feature.

*Traceability Matrix:*
The Traceability Matrix, also known as the Requirement Traceability Matrix (RTM), is **a table used to track requirements in the Software Development Life Cycle** (SDLC).
A day in the life of a Cloud Advocate
Tags: devrel, cloudadvocate, dayinthelife, womenintech
Published: 2021-06-08 08:52:15

I've been a Cloud Advocate within the Developer Relations team at Microsoft for nearly two years now, and over the time lots of people have asked me what it's like to be a Cloud Advocate and what does a typical day look like.  And I thought I'd share what one of my days looks like. 

{% youtube Ey-T7ID6pzw%}

### What is Developer Relations? 
For me Developer Relations is all about connecting the dots, helping people understand the Microsoft products and helping to provide the engineering teams with the feedback from the people using the products and lots more.  It's about helping, it's not about sales or marketing.  

One misconception I've seen is that Developer Relations is only for developers and for me that's definitely not the case. Developer Relations is the industry term but it doesn't mean it's only about talking to developers.  It's about talking to the community, the audience. For each organisation that audience will be different. 

For an organisation like Microsoft though, which is where I work, the audience is quite extensive, covering developers, IT Pros, business decision makers, database administrators, and well everyone else within the IT department. 👍

It's ultimately about helping those that need help, regardless of their job title. 

### Me as an Advocate

For me I do this role because I want to help people, make their lives easier if I can, even if that means taking hard feedback back to our engineering teams.  My job isn't to sell, it's to help. 

It can be a LOT of work to create content, people don't see the hours spent in meetings, Camtasia, PowerPoint, Word, Photoshop, Premiere Pro that are required to write that blog, create that video, or create that Twitter thread.  Some weeks I do spend more time within PowerPoint than within Azure or doing anything "technical".  But it's part and parcel of the job, and it's no less important than the technical parts. 

If you are setting up a Developer Relations program, looking to make a career move, or need to do some research to achieve corporate buy-in for Developer Relations department inside your organization, pick up a copy of [DevRel for Beginners: What to Know and How to get Started.](https://techielass.gumroad.com/l/devrel-for-beginners)

If you've got any questions please do reach out to me!
Create Laravel artisan commands and test database
Tags: laravel, php, artisancommands, console
Published: 2021-06-08 08:47:17

I'm going to use Artisan command line interface to create custom command. For this you can can run 
``` php artisan make:test CreateTestDatabase ```
Now, you go to this directory **app/console/commands** and open the **CreateDatabase.php** file. 
1.  Initialise the $fileSystem variable and define the command name.
``` 
protected $signature = 'testdb:create';

protected $description = 'Create test database sqlite';

private $fileSystem;
```
2. Set the Storage factory in constructor **Illuminate\Contracts\Filesystem\Factory** 
```
parent::__construct();
$this->fileSystem = $storage->disk('public'); 
```
3. Now create the **database.sqlite** file in the **database** directory and run the migration command.
```
public function handle()
    {
        if (!file_exists(base_path('database/database.sqlite'))){
            $handle = fopen(base_path('database/database.sqlite'), 'c');
            fclose($handle);
        }

        $this->fileSystem->put('database.sqlite', '');
        $this->call('migrate', [
            '--database' => 'sqlite'
        ]);
    }
```

So, now I can run the command **php artisan testdb:create** in the terminal and it will create the sqlite file and run the database migrations automatically. 

## Full code is given bellow - 
```
<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Illuminate\Contracts\Filesystem\Factory;

class CreateTestDatabase extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'testdb:create';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = 'Create test database sqlite';

    private $fileSystem;

    /**
     * Create a new command instance.
     *
     * @return void
     */
    public function __construct(Factory $storage)
    {
        parent::__construct();
        $this->fileSystem = $storage->disk('public');
    }

    /**
     * Execute the console command.
     *
     * @return int
     */
    public function handle()
    {
        if (!file_exists(base_path('database/database.sqlite'))){
            $handle = fopen(base_path('database/database.sqlite'), 'c');
            fclose($handle);
        }

        $this->fileSystem->put('database.sqlite', '');
        $this->call('migrate', [
            '--database' => 'sqlite'
        ]);
    }
}
```

Thank you so much for the reading. <3
Live: đá gà trực tiếp – xem đá gà , đá gà online 
Published: 2021-06-08 08:36:18

Nhà cái chơi đá gà online, xem đá gà trực tiếp miễn phí, đá gà cựa sắt link cập nhật mới nhất tại nhà cái vegas79. Tham gia trò chơi đá gà trực tuyến và  theo dõi những trận đá gà online ăn tiền thật, an toàn tiện lợi nhanh chóng thỏa sức đam mê của các anh em tại danhbai.vip – thế giới giải trí online hàng đầu VN

Webiste: 

http://danhbai.vip/da-ga-online-choi-da-ga-truc-tuyen-truc-tiep-da-ga-79/

http://danhbai.vip/

Google dive: 
https://drive.google.com/drive/folders/1h2c8ieKmpDEnStoaDyQaV6uQX58P2BSs
Thong tin chi tiết: 
 https://www.pinterest.com/pin/1092193347101397590/
http://bit.ly/dagacamhomnay
http://www.google.cat/url?q=http://danhbai.vip/da-ga-online-choi-da-ga-truc-tuyen-truc-tiep-da-ga-79/
https://danhbaidoithuong.medium.com/live-da-ga-truc-tiep-xem-da-ga-da-ga-online-574a0e2f6bdd
https://linktr.ee/dagaonline79
https://da-ga-online.jimdosite.com/
https://dagaonline79.mystrikingly.com/
http://dagaonline.somebody.io/
100 algos in 100 days (Day 6)
Published: 2021-06-08 07:41:43

##Code Dojo

I attended a code dojo with Fox presenting on Elephant Carpaccio. Essentially vertically slicing tasks which leads to a much more efficient outcome. I will definitely use this to slice my approach for Algo problems in the future.

Here is my slicing of the supermarket basket calculator (with tax):


##Our slices:

- (Spike) Calculate %s in JS. Rounding errors. Financial Calculations 
- Scoping the project, UI considerations. Who are the stakeholders 
- Define outliers / requirements negative prices allowed? Non Valid state codes? Other deals BOGOF? Free samples 0 price 
- Write some tests with example baskets of 1 item 
- Implement Gross Price of Order (MVP) which returns => units*price 
    - Implement tests for outliers 

- Implement Bulk Buy Discount Total using below table => calculateDiscount(calculateGrossPrice)*calculateGrossPrice 

<table>
  <tr>
    <th>Order value</th>
    <th>Discount rate</th>
  </tr>
  <tr>
    <td>$1,000</td>
    <td>3%</td>
  </tr>
<tr>
    <td>$5,000</td>
    <td>5%</td>
  </tr>
  <tr>
    <td>$7,000</td>
    <td>7%</td>
  </tr>
  <tr>
    <td>$10,000</td>
    <td>10%</td>
  </tr>
<tr>
    <td>$50,000</td>
    <td>15%</td>
  </tr>
</table>

My q: Are the discounts included like tax , incrementally? No
 
* Include State Tax 
* Include the discounts and calculate Final NET Calculated Price (Total - Discounts) 


<table>
  <tr>
    <th>State</th>
    <th>Tax rate</th>
  </tr>
  <tr>
    <td>UT</td>
    <td>6.85%</td>
  </tr>
<tr>
    <td>NV</td>
    <td>8.00%</td>
  </tr>
  <tr>
    <td>TX</td>
    <td>6.25%</td>
  </tr>
  <tr>
    <td>AL</td>
    <td>4.00%</td>
  </tr>
<tr>
    <td>CA</td>
    <td>8.25%</td>
  </tr>
</table>



Note: We were meant to implement tax first - next time!
Free for just today, gain access to the entire collection of Alibaba Cloud courses, study and certifications
Tags: alibabacloud
Published: 2021-06-08 07:40:16

[Alibaba Cloud Academy Membership
Free for just today, gain access to the entire collection of Alibaba Cloud courses, study and certifications](https://edu.alibabacloud.com/membership?spm=a3c0i.23168971.4721461960.1.2c117883HGMYlA)

Alibaba Cloud Academy Membership
Free only on June 8th
 Unlimited access to all online training, including professional exam preparation
 Free Access to all Apsara Clouder certifications
 Free Access to all Specialty certifications
Free Alibaba Cloud Associate Certification
Tags: alibabacloud
Published: 2021-06-08 07:33:45

[Free Alibaba Cloud Associate Certification
Take ANY of the ACA exams for FREE today](https://survey.alibabacloud.com/apps/zhiliao/tZU8xeXJF?spm=a3c0i.23168971.4721461960.5.2c117883zIno6b)
It's important to have an online presence (100 Bytes Of Wisdom: Day 54)
Tags: career, journey, advice
Published: 2021-06-08 07:28:12

---
title: It's important to have an online presence (100 Bytes Of Wisdom: Day 54)
published: true
description: Bytes of Wisdom is a new project by Sam Jarman that brings together snippets of advice for software engineers
tags: career, journey, advice
//cover_image: https://direct_url_to_image.jpg
---

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

As a developer in 2021, it’s important to have some form of online presence. This could be a GitHub, a blog, a vlog or simply just a Twitter account. I think gone are the days of Gamertags and secret online identities, and those acting as their true selves online, giving real, justified opinions, earn more respect. Subsequently having better careers as a result. Developers are makers by nature, but this doesn’t (and shouldn’t!) apply to just code, so creating content online to assist your career is well worth having a go at.

Heads up: As with any terse bit of advice, there will be exceptions of course, and subtleties and nuance that can't possibly be captured in a Byte of Wisdom. This has been what I've experienced, I'd love to hear yours in the comments too!

You can catch up with all the other bytes at http://bytesofwisdom.com/
How to Paraphrase Text using Python
Tags: datascience, machinelearning, python, ai
Published: 2021-06-08 07:23:49

As writers, we often seek out tools to help us become more efficient or productive. Tools such as Grammarly can help with language editing. Text generation tools can help to rapidly generate original contents by just giving the AI a few keyword ideas to work with.
Perhaps this could help end writer’s block? This is a debatable question that is best saved for a later time.

Paraphrasing content is also another great way to take existing content (either from your own or from others) and add your own spin to it. Wouldn’t it be great if we could paraphrase text automatically?

In this article, you will learn how to paraphrase text for FREE in Python using the PARROT library. Particularly, under the hood PARROT’s paraphrasing technology is based on the T5 algorithm (an acronym for Text-To-Text Transfer Transformer) that was originally developed by Google (for more information refer to the T5 resource at Papers with Code). At a high-level, text generation is niche area of the exciting area of natural language processing (NLP), which is generally referred to as artificial intelligence or AI when explained to the general audience.

It should be noted that an accompanying YouTube video ([***How to paraphrase text in Python using the PARROT library (Ft. Ken Jee)***](https://youtu.be/C6gBcL9sAIw)) to this article is shown below on my YouTube channel ([**Data Professor**](https://youtube.com/dataprofessor)).
How to Create and Deploy a Machine Learning App to Heroku
Tags: machinelearning, datascience, python, analytics
Published: 2021-06-08 07:09:54

Deployment of a machine learning model is an important phase in the data life cycle. Such a model could be a minimum viable product (MVP) that would allow relevant stakeholders access to the model from which to test and experiment with, which could lead to valuable feedback for further model improvement.

Model deployment may seem like a difficult and daunting task but it does not have to be. In this article, you will learn how to easily deploy a machine learning app to the cloud using Heroku. The advantage of deploying to Heroku is that we don’t have to worry about anything related to the underlying operating system (i.e. no more installing updates, dependencies or maintenance) on which the app is running on.

It should be noted that this article has an accompanying video ([***How to Deploy Data Science Web App to Heroku***](https://youtu.be/zK4Ch6e1zq8)) that can serve as a supplement or visual aid from which to refer to.

[**Read the full article**](https://towardsdatascience.com/how-to-create-and-deploy-a-machine-learning-app-to-heroku-d6965aa4f627)