teleren/devto huggingface dataset:
Best Data Science Books in 2022
Tags: datascience, books, advanced, beginners
Published: 2021-10-18 11:56:28

To give you the best data science books, we did the intensive examination, looked over numerous versions, and tracked down a couple of fascinating and instructive books that cover every one of the fundamental data science ideas finally.

In this [books on data science](https://www.techgeekbuzz.com/data-science-books/) article, we will share some critical provisions of what we consider as the main 10 data science books. Go ahead and share the name of the book(s) you preferred and are not on the rundown in the remarks area beneath. We will be glad to audit and incorporate it.

![data science books](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2ou83yykvktiyz2npzk5.png)  

1. Data Science from Scratch - [Buy](https://www.amazon.com/Data-Science-Scratch-Principles-Python/dp/1492041130/)
2. Data Science for Business - [Buy](https://www.amazon.com/dp/1449361323)
3. Data Smart — Using Data Science to transform information into insight - [Buy](https://www.amazon.com/Data-Smart-Science-Transform-Information/dp/111866146X)
4. Python Data Analytics - [Buy](https://www.amazon.com/python-data-analytics-introduction-beginners-ebook/dp/B0824VM38C/)
5. R in Action - [Buy](https://www.amazon.com/Action-Data-Analysis-Graphics/dp/1617291382/)
6. Data Science for Dummies - [Buy](https://www.amazon.com/Data-Science-Dummies-2nd-Computers/dp/1119327636/)
7. Data Science for the Layman - [Buy](https://www.amazon.com/Numsense-Data-Science-Layman-Added/dp/9811110689/)
8. Data Science and Big Data Analytics - [Buy](https://www.amazon.com/Data-Science-Big-Analytics-Discovering/dp/111887613X/)
9. Designing Data-Intensive Applications - [Buy](https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable/dp/1449373321/)
10. Pattern recognition and Machine Learning - [Buy](https://www.amazon.com/Pattern-Recognition-Learning-Information-Statistics/dp/0387310738/)

## Conclusion

As far as we can tell, instead of hopping into the fine specialized subtleties of each subtopic in the principal go itself, it is ideal to comprehend why data science is a decent decision and how the entire thing functions from both specialized and business points of view. The general picture will assist you with picking what's generally significant and where your advantage lies.
Sending SMS to Mobile with Nexmo in Laravel
Tags: laravel, nexmo
Published: 2021-09-23 05:00:06

Hi,

This tutorial shows you laravel send sms to mobile with nexmo. i would like to share with you how to send sms using nexmo in laravel. This article will give you simple example of send sms using nexmo in laravel. step by step explain laravel sms notification nexmo. You just need to some step to done laravel nexmo message.

In this example, i will give you very simple example to sending sms using nexmo/vonage api in laravel app. you can easily use this code in laravel 6, laravel 7 and laravel 8 app.

let's follow bellow steps:

https://www.codecheef.org/article/example-of-sending-sms-to-mobile-with-nexmo-in-laravel
Revisiting Tailwind square divs with aspect ratio
Tags: tailwindcss, css
Published: 2021-09-23 05:10:45

The other day I posted this article on how to [create square divs in Tailwind CSS](https://daily-dev-tips.com/posts/tailwind-css-responsive-square-divs/).
The code works, and there is nothing wrong with it. However, it is a bit of a "hack" to do this.

In the past, I've written about [CSS Aspect ratio](https://daily-dev-tips.com/posts/css-aspect-ratio-its-finally-here/) and at the time of writing that it wasn't well supported.

When I published the Tailwind article [IgnusG mentioned on Daily.dev](https://app.daily.dev/posts/gg8pN84wj) that aspect ratio is now well supported.

![IgnusG comment on Daily.dev](https://cdn.hashnode.com/res/hashnode/image/upload/v1631854564834/4EkK0rfCW.png)

So taking another look at aspect-ratio, it is way better supported, and another winning aspect is that it comes as a Tailwind plugin!

![CSS Aspect ratio browser support](https://caniuse.bitsofco.de/static/v1/mdn-css__properties__aspect-ratio-1631854792913.webp)

Already improved, and it's coming to Safari in the technology preview.
You can keep an eye out [here for the live graph](https://caniuse.com/mdn-css_properties_aspect-ratio).

## Using the Tailwind aspect ratio plugin

Let's start by adding the tailwind aspect ratio plugin to our project.

```bash
npm install @tailwindcss/aspect-ratio
```

Next, up we need to register it in our `tailwind.config.js` file as such:

```js
module.exports = {
  theme: {
    // ...
  },
  plugins: [
    require('@tailwindcss/aspect-ratio'),
    // ...
  ],
};
```

And as we learned from our [CSS aspect ratio](https://daily-dev-tips.com/posts/css-aspect-ratio-its-finally-here/) article, we need to define the width and height of the aspect ratio.

The plugin gives us these two classes for that:

- `aspect-w-{x}`
- `aspect-h-{x}`

Where x can be a number between 1 and 16.
In our case, we want a square, so we'll be using 1 and 1.

```html
<div class="w-full h-0 shadow-lg aspect-w-1 aspect-h-1 rounded-xl bg-yellow-300"></div>
```

In action that will result in this:

![CSS Aspect ratio in action](https://cdn.hashnode.com/res/hashnode/image/upload/v1631855155662/6HdV9mjRB.png)

You can also try it out in this [Tailwind Playground](https://play.tailwindcss.com/johiZp33uH).

A big thanks to Ignus for pointing out that this is now well supported! 🎉
Lovely how the community points these things out so we can all learn from them.

### Thank you for reading, and let's connect!

Thank you for reading my blog. Feel free to subscribe to my email newsletter and connect on [Facebook](https://www.facebook.com/DailyDevTipsBlog) or [Twitter](https://twitter.com/DailyDevTips1)
First ever blog post as a programmer! 
Tags: beginners
Published: 2021-09-23 09:00:05

![My desk setup](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mggxnbbsyrz41gahitmz.jpeg)

```
printf("Hello world!");
```

I am **Ronald Makalintal**, an aspiring software developer/computer programmer currently studying at Seneca College. I have been studying software development since May 2020, which was also the time I started studying at Seneca. Previously, I studied Business Management back in the Philippines, but after completing the program, I reflected on what I wanted to do decades from now and decided that I wanted to make a significant impact on the world through making stuff. Now, 'making stuff' is, to be frank, quite vague. However, I did always see myself staring in front of a computer screen until the day I expire so I thought to myself, _"maybe it wouldn't be a bad idea to start a career making computer programs?"_. More than a year has passed and I can confidently say that I am happy with the decision that I have made, and I would like to share with you all what I continuously learn—both inside and outside of the classroom.

The initial goal of my blog is in line with my requirements for a subject (Software Portability and Optimization / SPO600) as my peers and I are required to share our thoughts and findings on the labs we do on a weekly basis. However, _I honestly want to go beyond that._ I would like to use my blog to connect with developers all around the globe. And I'll do exactly that starting with my first ever blog post.
iTerm superpower: type in all tabs/panes
Tags: iterm, mac, terminal, bash
Published: 2021-09-23 12:07:28

One thing that I always liked about tumx is that you can open multiple panes and send the same input to all the panes. Today I figured out you can do something similar with iTerm as well.

Just open multiple panes or tabs and press `cmd`+`option`+`i` (for all panes) or `cmd`+`shift`+`i`(for all windows) and type away. Your inputs will be broadcasted to all panes/windows. 

This is especially useful in cases where you have to do a lot of setup/logging in before in all terminals before you can tail logs or run commands.

For more detail open iterm and go to `Shell` > `Broadcast input` in the menubar.
Dynamic Javascript Form with Error Handling and Validation
Published: 2021-09-23 21:29:42

### One form to rule them all with React, Typescript, hooks, react-hook-form, material UI, and Yup.

Forms are a crucial part of most web application and is the predominant way users input and submit data. This means it often appears on multiple pages and components throughout an application.

The forms will likely contain many similar input fields and expected behaviors with regards to validation, type checking, form submission, and error handling.

*All this repetitive code can increase technical debt and is much more difficult to create tests for.*

The dynamic form solution I created makes it simple to reuse a form on different screens and views. The properties for each form are stored in an Object array and can be passed as props into the custom form component.

The form component uses Yup for form validation and react-hook-form to handle form submission and error-handling. Typescript is used for type checking, and material UI component library provides the form components and styles.

I hope it helps you

### Dynamic form, Validation, Type checking, and Error handling.

{% gist https://gist.github.com/gavmac/ade3703ddc15e654dd6a49d94928d666 %}

{% gist https://gist.github.com/gavmac/b2abd6c74a30d846ad416687722f1b46 %}

{% gist https://gist.github.com/gavmac/cfc326a79583a83d3cdd2213e75a4cfd %}
Debug Your Css With This Tool
Tags: css, webdev, html, tutorial
Published: 2021-09-24 08:09:00

---
canonical_url: "https://www.thangphan.xyz/posts/debug-your-css-with-this-tool/"
---
There are tons of CSS properties that we can't remember, and sometime we write some CSS and didn't know why it doesn't work as we expect?

It turns out we used the wrong CSS property. How to know what exactly point we are wrong? Let's move on next step to discover that tool.

### Prepare

First of all, I need to create a file `HTML` and a file `CSS` for this demo.

`index.html`:

```html
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Debug CSS</title>
    <!-- import css file here -->
    <link rel="stylesheet" href="./style.css" />
  </head>
  <body>
    <div class="hello">Hello! CSS!</div>
  </body>
</html>
```

`styles.css`:

```css
.hello {
}
```

I'm ready! Let's move on next step!

### Demo

I'm going to use Firefox, in order to figure out what CSS I'm wrong.

In Firefox, I can hit `Style Editor`, and I can see the `style.css` file that I just created. Let's edit the CSS directly here.

![Style Editor](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1lyhuploa3x1x01sttmo.gif)

As you can see, CSS was reflected immediately.

Hit `inspector`, and look at the right side, if I add the CSS below to class `hello`. Firefox will show me what CSS I was wrong in a specific way. The wrong CSS will be `gray`, and there is `i` icon that we can hover and see the reason.

```css
display: inline;
/* we can't set width for an inline element */
width: 100px;
```

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

This is the error:

It told me that I can't set `width` for an element that has `display: inline`.
![Inline Error](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h9tlfssicxu3p987sb16.png)

Let's try another property maybe we can test.

```css
display: inline;
/* we can't set width for an inline element */
width: 100px;
align-items: center;
```

And I get an error:

![Align Error](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/itpzp1p3zv408o6kqbby.png)

### Conclusion

I just introduced how to debug in CSS using Firefox. Why don't try your CSS, and observe what message Firefox will give, it appears like magic.
What are all these words?
Published: 2021-09-24 13:34:30

React, Python, Ubuntu, MySQL, GIT...

As a relatively new person to programming it can be overwhelming to even grasp the fact that one day you´ll actually know what all these (and many many more) words actually mean and refer to. I´ve only started a two-year long Full stack web developer program in my home city Stockholm (Sweden) and made it a top priority for myself to sit down and learn what all these things are and how they are connected. I believe this will enhance my understanding of this exciting new world of programming that I´m just about to enter. 

I am currently enjoying all the exciting articles here and hope to be able to share some useful content in the future.
Lessons we've learned after burning many thousands thanks to AWS Lambda. Expect no mercy from AWS.
Tags: aws, serverless, cloud, terraform
Published: 2021-10-20 02:10:55

## Preface.

A year ago, we decided to make a transition towards serverless architecture. Our management was very excited about it, and its excitement resulted in many tries and failures for developers(including me). So one Monday, we started our working day and realized that one of our lambdas had been going right into the rabbit hole the whole weekend. We were astonished, management was dissatisfied, and I was happy with the new material for the current article.

## Our setup.

The staple part of several microservices at our disposal heavily relies upon S3 event notifications. So what happened. 
A developer screwed up and invoked Lambda from within the same Lambda for the same file in S3, which initially triggered Lambda. These invocations created other S3 files, which started different lambdas... You got the idea. 

Dev wasn't fired or sanctioned in any way. Because it's an architectural problem, anyone can make a silly mistake.

## How much we've lost? Tenths of thousands. 

We filled the ticket afterward and got compensated 5k only because we spent this much before the alarm came through.

## Precautions we implemented to prevent future incidents.

1. We set budget notifications and created alarms to email, slack channel, and mobile phone of key tech company figures. 

2. Most of the Lambdas must have reserved concurrency parameters set.

3. Most of the Lambdas must be invoked via SQS only.

4. We also implemented AWS Config rule to check all our Lambdas for reserved concurrency.

With reserved concurrency, we avoid calling functions more than we should. This way, essentially throttle it. 

And SQS helps us to prevent data loss. In case of facing concurrency limit, Lambda will wait before obtaining the following message from the queue. 

## Questions to think about.
1. Why is there no option to kill all AWS activities after reaching some usage threshold? 
2. Is it this complicated to create an intelligent tool to help AWS customers catch this situation and avoid money loss?
On the importance of staying Focused
Tags: teamwork, agile, softwaredevelopment
Published: 2021-09-25 12:05:24

---
title: On the importance of staying Focused
published: true
date: 2021-09-25 12:02:10 UTC
tags: teamwork,agile,softwaredevelopment
canonical_url: https://medium.com/chingu/on-the-importance-of-staying-focused-1cd1f5afccd4
---

#### Sprint 4 — Saturday

![](https://cdn-images-1.medium.com/max/1024/1*lf9as1shPsZOwdafpyHIHA.jpeg)<figcaption>Photo by <a href="https://unsplash.com/@edenconstantin0?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Eden Constantino</a> on <a href="https://unsplash.com/s/photos/focused?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></figcaption>

As you approach the final sprints in a project it should be at or close to its _minimum viable product (MVP)_ milestone. In other words, having the required features you set out to include in it.

Ideally, your team’s project will reach MVP status before the final sprint, leaving time to make final corrections, polishing the app, and even adding lower priority features.

But what if the final sprint is looming, but you haven’t yet reached the MVP milestone? Don’t get stressed! Keep following the Agile process which allows you to adjust project scope based on your current situation. It’s okay to reduce or adjust the features in your app

> Having a simple app that works is better than a complex app that’s broken

It’s also important to keep in mind that your most powerful tool is **_team work_**! The measure of mature developers is they stay dispassionate, respectful, and focused on the goal under stress. Support your team and your teammates and finish together!

![](https://cdn-images-1.medium.com/max/800/1*qp_RbXq-L_9kXdFGO5Psug.png)

### Before you Go!

Chingu helps you to get out of “_Tutorial Purgatory_” by transforming what you’ve learned into experience. The experience to boost your Developer career and help you get jobs.

You can learn more about **Chingu** & how to join us at [https://chingu.io](https://chingu.io/)

* * *
Screencast: Add welcome emails to Happi
Tags: rails, hotwire, rspec, webdev
Published: 2021-10-04 08:45:15

This is the first video in a series where I build [happi.team](https://happi.team) in public, literally, by screencasting developing new features or improvements. The tech stack is Rails, Hotwire and RSpec among many other great open source libraries.

In this video, I show adding welcome emails to be sent out when teams are created, whilst adding tests to make sure it all works. 

{% youtube xq6H4UQHUMQ %}

Apologies my voice is fading a little toward the end! 

If you want to check out the product itself it’s at [https://happi.team](https://happi.team) and at the time of this video we have a free plan to let you get setup and test it out.
C++: A concise introduction to structures
Tags: cpp, structures, struct, theory
Published: 2021-10-03 19:19:07

A structure is a collection of variables of different data types stored in a block of memory under a single name, allowing the different variables to be accessed via a single pointer or by the struct declared name, which returns the same address. This is a convenient way to keep related information together. It is similar to a class in that both contain a collection of data of various datatypes. Structures are known as compound data types because they are made up of several different variables that are logically connected. By default, struct members in C++ are public. The general structure declaration format is

```c++
struct structureName {
	datatype member0;
	datatype member1;
	datatype member2;
};
```

Memory is not allocated when a structure is created. After a variable is added to the struct, memory is allocated. The struct datatype cannot be treated like a built-in data type in C++. Inside the structure body, static members cannot be created. Constructors cannot be created within structures. The dot (.) operator is used to access structure members, and the arrow (→) operator is used to access structure members if we have a pointer to a structure.
Here's an example of a struct.

```c++
struct Album {
	string title;
	string artist;
	float cost;
	int quantity;
};

int main() {
	struct Album song;
	song.title = "Summer-The four seasons";
	song.artist = "Antonio Vivaldi";
	song.cost = 50.0
	song.quantity = 10000

	return 0;
}
```

The structure Album is declared here, which consists of four members: title, artist, cost, and quantity. A structure variable song is defined within the main function. The appropriate data is then entered into it.

Happy Coding.
My Raw Notes for the Week of 9-27-2021
Tags: javascript, types, scope, this
Published: 2021-10-03 20:07:45

```
In Simpson's thinking, there are three "pillars" of JS:
1) Types/Coercion
    - Primitive Types
        - undefined
        - string
        - number
        - boolean
        - object
            - function
            - array
        - symbol (not used much)
        - null (sort of)
    - Converting Types
        - Number and String:
            - Number + Number = Number <this is the only one of the four in which the '+' means 'mathematical addition' (as opposed to 'concatenation')>
            - Number + String = String
            - String + Number = String
            - String + String = String
        - Truthy and Falsy
            - If we were to coerce a non-boolean value into a boolean, would it be true or false? If true, the value is Truthy. If false, Falsy
            - Falsy values in JS: '', 0, -0, null, NaN, false, undefined. Truthy values in JS: everything else
    - Checking Equality
        - '==' allows coercion (types different)
        - '===' disallows coercion (types same)
2) Scope/Closures
    - FYI:
        - Simpson: Scope is where the JS engine looks for things
    - FYI:
        - Example of what's called a 'function statement' or 'function declaration': function funcDec() {}
        - Example of what's called an 'anonymous function expression': const anonFuncExp = function() {}
        - Example of what's called a 'named function expression': const namedFuncExp = function namedFuncExp() {}
    - Nested Scope
    - Closure
        - Simpson's definition: "Closure is when a function "remembers" the variables [created] outside of it, even if you pass [or call] that function elsewhere."
3) this/Prototypes
    - this
        - Simpson: "A function's 'this' references the execution context for that call, determined entirely by HOW THE FUNCTION WAS CALLED."
    - Prototypes
        - Function constructors and their interaction with 'this'
    - Class{}
        - using the 'class' keyword as an improved syntax for setting up a Function constructor

Whether a variable is declared but not assigned a value or it's simply never declared, it has a type of 'undefined'.

For 'let v = null', 'typeof v' is 'object'. This is a bug in the JS language which can't be changed now.
For 'v = function(){}', 'typeof v' is 'function'. This is strange because 'function' is a subtype of 'object', but it's not a mistake and it is useful.
For 'let v = [1, 2, 3]', 'typeof v' is 'object'. This makes sense because 'function' is a subtype of 'object'.
```
Mixxtone - Introducing Electronic Music in Pakistan
Tags: mobile, motivation, music
Published: 2021-10-03 20:49:17

Saqlain Malik aka Mixxtone is a 20 years old music producer, rapper and singer-songwriter from Pakistan. He makes Rap songs and does experiments with his music to explore his skills. Mostly he makes EDM (Electronic Music) songs. He is from Pakistan, and till date, EDM is an unknown music genre in Pakistan. But somehow, Mixxtone has been impressing Pakistani audience with his Electronic songs. And he posted on an Instagram post that, he will keep making these songs to inspire and to motivate people.
Understanding Machine Learning: Study of Computer Science and Artificial Intelligence
Tags: machinelearning, computerscience, programming, productivity
Published: 2021-10-04 06:56:16

Machine learning is the study of computer science and artificial intelligence, which focuses on data and algorithms to make unconventional tasks and algorithms easier. It’s a branch of artificial intelligence, data mining is also a related field to study in Machine Learning. Machine learning involves computers learning from data So, that they can perform certain tasks and execute all steps required to solve the problem. There’s no learning needed on computer’s hand.

https://externlabs.com/blogs/machine-learning-engineer-vs-data-scientist/

Types of Machine Learning:

Supervised learning, Unsupervised Learning, and Reinforcement learning

1. In Supervised Learning, the ML algorithm is trained on labeled data. ML algorithm is given a small training dataset, which is a smaller part of a bigger dataset and serves to give a basic idea of the problem. Supervised learning is extremely powerful if used in the right circumstances.

2. Unsupervised learning is trained on unlabeled data. That means human labor is not needed to make data machine-readable, allowing much larger datasets to be worked upon.

3. Reinforcement learning is a direct connection that shows how humans learn from data in their daily lives. It uses a trial and error method, in which favorable outputs are reinforced and non — favorable outputs are discouraged.