teleren/devto huggingface dataset:
The Legend of Data - Ep.3 - Pandas basics 2
Tags: python, datascience, beginners, tutorial
Published: 2020-06-16 23:26:50

---
title: The Legend of Data - Ep.3 - Pandas basics 2
published: true
description: Pandas is a superpower tool to handle data in Python. It lets you read and write from csv, xlsx and other file formats; lets you change the structure of the data, change the data types, aggregate data, joining data etc. In this episode, continue exploring what pandas can do can explain in further details for some common pandas operations.
tags: python, datascience, beginner, tutorial
---
Pandas is a superpower tool to handle data in Python. It lets you read and write from csv, xlsx and other file formats; lets you change the structure of the data, change the data types, aggregate data, joining data etc. In this episode, continue exploring what pandas can do can explain in further details for some common pandas operations.

If you have any questions or any suggestions about which Python or Data Science topics to cover, please leave your comment at my [Twitch channel](https://www.twitch.tv/cheukting_ho)

You can get the slide deck [here](https://slides.com/cheukting_ho/legend-data-pandas1/). The notebook that I used can be found [here](https://github.com/Cheukting/legend_data).
95/100 100daysofcode  Flutter
Tags: 100daysofcode
Published: 2020-06-16 23:01:43

day 95/100 of #100daysofcode #Flutter
Learning Flutter , courses Udemy from
@maxedapps

Today learn firebase notification setup and fix some error

in last 5 days i was sick, and can't code usually
https://github.com/triyono777/100-days-of-code/blob/master/log.md
Day 155 : First Step
Tags: hiphop, code, coding, lifelongdev
Published: 2020-06-16 22:53:50

_liner notes_:
- Professional : Pretty good day. Think I got the Web Component I've been working on since late last week, done. Or at least to where I will show people and get some feedback. Had an issue with something, spoke with people in the lit-html Slack and got some help. Spoke with the team working on Web Components and had a good discussion. Looking forward to publishing the Web Component and getting people's thoughts.

- Personal : Last night, I don't really remember what I did, haha. For my side project, I got the add task functionality working, and editing a task functionality almost done. I think I mostly looked through the catalogs I got to see how I want to assemble the framework for my van. So many choices and options! Excited to take the first step.

![A valley with a large forest and mountains in the background in Fassa Valley, Italy](https://dev-to-uploads.s3.amazonaws.com/i/dywxhqm2ajaoietub546.png)

I want to get editing a task done and work on some animations when a task has been marked as completed and vice versa. Also want to get the remove functionality working. Then get everything saving to local storage. Probably end the night going through the catalogs and sketch out some ideas.

Have a great night!

peace piece
Dwane / conshus
https://dwane.io / https://HIPHOPandCODE.com
{% youtube 88GN9r9KuNg %}
Visual Studio Code : Fix Goto Definition
Published: 2020-06-16 22:17:11

Goto Definition of my custom components started to show Peek instead of Goto definition. 

Here's how to fix it.  VSCode 2020 V.14.6

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

- Click bottom left manage button
- Click Settings
- Drop down Text Editor
- Type Goto in Search box
- Change Peek to Goto as shown in image.
Introduce yourself to Coding through Mimo.
Tags: beginners
Published: 2020-06-16 22:04:57

Hi everyone! So for the past one week, I've been learning different languages of coding through the "Mimo" app which is freely available on the Google Play store or Appstore.The app has all the coding languages including the CSS,Java,Python, JavaScript,HTML,C, and many more.For more languages,you can opt to subscribe for the premium services where you'll be guaranteed to full accessibility of all the required stuffs including a free work template on your mobile or desktop device for practising the codes and running them to identify where your errors are.The app also has a 6_day competition where the winner is awarded a certificate depending on the score.I urge everyone to try it out. It's fun coding!
Summer Travel Blog Site focus on responsive design
Tags: css
Published: 2020-06-16 22:03:15

[Demo](https://heggy231.github.io/chingu-webdev-speedrun-challenge/frontend/travel-blog)
Use `em` unit for relative font-size.  `em` multiplies by your base font-size which is the parent container font-size.

Use `rem` when sizing your font for entire site.  The most default html is 16px vs. `em` localized font-size difference.

min-width and min-height to keep text content to get too short or long (too spread out) when browser window gets too small.
Efficiency and Abundance
Tags: tangent
Published: 2020-06-16 21:44:47

---
title: Efficiency and Abundance
published : true
description : 
tags: #tangent
layout: post
categories: #tangent
---

When you have scarcity, efficiency is a virtue. It allows you to make the most of your resources. However, if you have abundance, efficiency is no longer a virtue in the same respect.

Efficiency is hard. It is unpleasant to be efficient. It requires a lot more discipline. So, efficiency is rare. We are not efficient if there is no compelling need. That is, we abandon efficiency, as soon as we understand that efficiency is no longer making the difference.

Now, let us see where these ideas make sense. In the early days of computing, resources were limited. So, efficiency was important. People tried to save resources every way they could. So, a lot of applications that were developed were developed with razor sharp focus on not wasting any resource, i.e, everything was made as efficient as was possible. So computing or developing software was not pleasant, not many people could do it, or wanted to do it. 

But as computing resources became cheaper, and abundant, there was no longer the need to be very efficient in many types of development. It was okay if your program consumes 10 times, 100 times more memory, or disk space, or it does totally unnecessary work, many times over. It became possible, easy, and pleasant to write software this way that met the real needs of business.
Rust dynamic dispatch optimization
Tags: rust
Published: 2020-06-16 21:22:02

> *Programming in JS*: Let's just just check every element until we find what user asked for.
> *Programming in Rust*: Hmm, do I really need this extra byte in by `struct`? 

So, I spent some time trying to understand how much actual time dynamic dispatch costs me.

I have a service which should choose between different trait implementations depending on input. Means that there are 2 options: 
```rust
struct BackendB<'a, T: MyProcessor> {
    data: &'a mut T
    // But we will struggle instantiating this
}
```

or 
```rust
struct BackendA<'a> {
    data: Box<&'a mut dyn MyProcessor>
}
```

`Backend` should internally call some `MyProcessor` methods, so I will be sad if these calls are slow. To benchmarks!

```rust
impl<'a> BackendA<'a> {
    #[inline(never)] // This is very important, or
    // compiler will work too good and replace calls with constants
    fn inc(&mut self, how_much: usize) {
        // This simulates internal calls
        for _i in 0..how_much {
            self.data.inc(); // vtable resolve should happen here
        }
    }
}

impl<'a, T: MyProcessor> BackendB<'a, T> {
    #[inline(never)]
    fn inc(&mut self, how_much: usize) {
        for _i in 0..how_much {
            self.data.inc();
        }
    }
}
```


And here is benchmark entry points:

```rust
fn criterion_benchmark(c: &mut Criterion) {
  c.bench_function("Static dispatch", |b| b.iter(|| { 
    let mut d = ImplMyProcessor {data: 0};
    let mut b = BackendB::<ImplMyProcessor> {data: &mut d};
    b.inc(black_box(500_000));
  }));

  c.bench_function("Dynamic dispatch", |b| b.iter(|| { 
    let mut d = ImplMyProcessor {data: 0};
    let mut b = BackendA {data: Box::new(&mut d)};
    b.inc(black_box(500_000));
  }));
}
```

But it gives almost same timings:

```
time:   [1.1774 ms 1.1916 ms 1.2068 ms]
time:   [1.2390 ms 1.2625 ms 1.2908 ms]
```

Ok, let's check what happens if `vtable` is actually involved: 

```rust
fn criterion_benchmark(c: &mut Criterion) {
  c.bench_function("Static dispatch", |b| b.iter(|| { 
    let mut d = ImplMyProcessor {data: 0};
    let mut b = BackendB::<ImplMyProcessor> {data: &mut d};
    for _i in 0..500_000 {
        b.inc(black_box(1));
    }
  }));

  c.bench_function("Dynamic dispatch", |b| b.iter(|| { 
    let mut d = ImplMyProcessor {data: 0};
    let mut b = BackendA {data: Box::new(&mut d)};
    for _i in 0..500_000 {
        b.inc(black_box(1));
    }
  }));
}
```

Now we see the difference:
```
time:   [1.6077 ms 1.6248 ms 1.6431 ms]
time:   [2.6543 ms 2.7012 ms 2.7553 ms]
```

So the test is valid, we can actually see the regress of dynamic dispatch in Rust. But the good news is - it happens only ones per function call (optimizer does it's job!). And in my case - ones per API call, and I can stop worrying.
Deciding between two job offers
Tags: career, job
Published: 2020-06-16 21:21:55

---
title: Deciding between two job offers
published: true
description: The framework (spreadsheet) I used to decide between two competing job offers
tags: #career #job
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/jvyfxl89ka8hzkkf0284.jpg
canonical_url: https://udaraw.com/how-to-weigh-multiple-job-offers/
---

Recently, I had the privilege of receiving two job offers. This was the first time I've had competing offers in my career. They were both for Full Stack Developer roles at respectable companies. I'm a pretty decisive person, but this was an agonizing decision. There could be no perfect decision here due to a lack of information. The only way to know for sure which company was right for me, would be to work at each company for several months. Since that was off the table I took a different approach. Spreadsheets!

I compared the two companies across categories that mattered to me in a job. To each category, I assigned an __importance__ factor based on my personal values. In the end, I had a weighted score for each company that I could use to inform my decision.

This is the spreadsheet I used ([LIVE LINK HERE](https://docs.google.com/spreadsheets/d/1COcKG6WT8rsR4s1l9BhkU1c3cLz_ZgPKqkKe9ZbTYtA/edit?usp=sharing)):
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/s54bm22z12mjy7na83qb.PNG)

It was still a  close call. But, thanks to the spreadsheet I came to a decision based on an apples to apples comparison rather than what felt like a coin flip in the beginning.

The importance for each attribute will be different based on your personal values, but I hope this provides a good starting point for when you need to compare offers.
The App Stores...
Tags: discuss, ios, android
Published: 2020-06-16 20:29:05

App Stores... we need to talk. Google and Apple both have monopolies in the world of app stores for mobile devices. Since they have this monopoly they charge an outrageous fee for in app purchases, 30%! On top of that Apple also has some extremely strange ruling on apps they decide to run down of their app store, unless you cave into paying them.

### In App Purchases
Apple and Google, for years have been charging a 30% fee for all purchases made on their app stores. A fee which you would never see in credit processing from services such as Stripe, Braintree, or similar processors. Why? Apple and Google are the only two companies which have a monopoly in their markets. Apple even more so with the extremely strict regulations on their store. Not only does Apple take a fee for app purchases, they also charge $100/year. Google also charges $25, however as a one time fee.

### Apples Regulations
There has been many cases where Apple will try to remove apps off of the app store who do not subject themselves to the Apple tax by only allowing charges through their own website. An example of this can be found in a recent [Twitter thread](https://twitter.com/dhh/status/1272968382329942017) which prompted me to write this. https://twitter.com/dhh/status/1272968382329942017

In that thread you will see one of the tweets included an email from Apple saying they will take down the [Hey](https://hey.com) app if they do not offer in-app purchases.

![Apple App Rejection](https://dev-to-uploads.s3.amazonaws.com/i/x14x0p5qg3l3x4yd8y52.jpg)

Yet there is also many apps that do the same thing, linking off to external webpage to purchase subscriptions that are still allowed on the app store.

![Allowed Paid Apps](https://dev-to-uploads.s3.amazonaws.com/i/xyxv5sg1q4rmsmwqj1kf.jpg)

### Why?
Apple is most likely targeting the [Hey](https://hey.com) app, because Apple sells its own email service [iCloud mail](https://www.icloud.com/mail). Therefore [Hey](https://hey.com) would be considered a direct competitor to Apple, and of course Apple wants to keep all the profits for services to themselves.

### Things Need Change
Things need to change. Apple should not be allowed this monopolistic approach to the app store. If we keep allowing big tech companies like Apple and Google to go down this road, they will own everything about us, and there is almost nothing we can do to stop it unless we act now.

My question for you is, what do you think we need to do in order to make this change happen? Do you think anything will change anytime soon?
Strapi | Advanced Customization and Plugin Development
Tags: javascript, strapi, cms, tutorial
Published: 2020-06-16 20:25:09

In this video we will go through installing and running an instance of Strapi, understanding its folder structure and some of its inner workings by creating a custom plugin which has its own model and controllers and that exposes its own API routes, while utilizing and extending some of Strapi's core functionalities and built-in policies.

{% youtube kIZHzbmnhnU %}
Create App Flutter from Design Dribble
Tags: flutter, mobile
Published: 2020-06-16 20:12:50

---
title: Create App Flutter from Design Dribble
published: true
description: 
tags: #Flutter #Mobile
cover_image: https://mir-s3-cdn-cf.behance.net/project_modules/fs/fc8d3b68748807.5b685514e9184.png
---

# Design To App Flutter

Repo => https://github.com/tonux/postcash
What is a Message?
Tags: message
Published: 2020-06-16 20:11:08

---
title:  What is a Message?
published : true
description : 
tags: #message
layout: post
categories: #message
---
What is a `Message`?

Here is a good definition of a [Message](https://www.enterpriseintegrationpatterns.com/patterns/messaging/Message.html).

I want to develop your intuition about a `Message`, so I'll elaborate this concept.

`Message` is an overused word. I want to develop intuition about a `Message` as used in Software Development.

Now let us suppose two people Alice and Bob want to communicate. If Alice shouts at Bob, we can't say Alice has given a `Message` to Bob. If instead, Alice tells Charlie something about Bob, and Charlie goes and tells it to Bob, we can say Charlie has passed on a `Message` to Bob. 

What is the difference between the two situations? Of course, I introduced Charlie. But, Alice could have written the same thing in a piece of paper and sent that to Bob, or Alice could have sent an email or a text that has the same content, and in all these cases, we would say that Alice has sent Bob, a `Message`.

So, the fundamental thing that makes a `Message` a `Message` is that it leaves one person and then goes to another person. It has an independent existence outside of both people. And, because it leaves one person and then goes to another person, a `Message` by necessity needs to have the following information for it to be considered a `Message`.

It needs to have the information about where is it coming from, where is it going to, what is it about, and finally the actual content. These are called `Sender`, `Recipient`, `Type` (Subject) and `Payload`, respectively. The `Sender`, `Recipient` and `Type` are grouped together as a `Header`. 

The same concept is used when information leaves one Application and goes to another Application. 

An email, or a text, that we send is a `Message`. It has a `Header`, i.e, `Sender`, `Recipient` and `Type` along with the `Payload`.

A `Message` can be a lot more things, it can have a lot more information, but the `Header` and the `Payload` are the absolute minimum information that it needs to have for it to be able to leave one person or an Application, be independent, and reach the right `Recipient`.
Survey data visualization
Published: 2020-06-16 20:11:07

Businesses, educators, government officials and everyday folk have an interest in collecting information. A survey is just that: a way to collect information about and learn from your respondents. Although surveys might appear easy to design at first blush, there's more than meets the eye. See Step 1 for more information on how to produce the best, most useful surveys to make your life easier.

**How to Create Survey:**

Set up the objectives for the study. Basically, what do you plan to pick up from your review? The inquiries you pose to all need to point back to this basic thought 

Conclude whether to utilize organized, unstructured inquiries, or a blend of both 

Pick a halfway organized inquiry to get somewhat more granularity yet keep the information analyzable. 

Ask a "Rating" question. This is a subset of the organized inquiry. It looks to answer how respondents would rate their experience on a scale. 

Ask a "Positioning" question to get an arranged rundown of inclinations. A Ranking inquiry makes a superior showing than a Rating question at hear individuals' thoughts about a given theme. 

When creating organized inquiries, incorporate catch-all expressions toward the finish of your answer set.

**Visualizing Survey data:**

Survey data should be analyzed perfectly by experts so that company or individual get accurate insights. Data visualization tools like Tableau, Qlik, Spotfire works better in [visualizing survey results](https://www.datasciencecentral.com/profiles/blogs/visualizing-survey-data-with-vizualsurvey). However many companies rely on basic reporting feature of survey tools. As a result they often miss big hidden opportunities. Many companies don't like to use data visualization tools because these tools need experts to operate and time consuming to make new reports. VizualSurvey has been introduced to remove this pain. This app will [clean survey data](https://vizualsurvey.com/) and you can use their prebuilt template.
Sara Vieira is opinionated per design... and other things I learned recording her DevJourney
Tags: devjourney, career, learning, react
Published: 2020-06-16 19:56:04

---
title: Sara Vieira is opinionated per design... and other things I learned recording her DevJourney
published: true
description: Sara Vieira is opinionated per design. After interviewing her for the DevJourney podcast, here are the key takeways I personally took out of the discussion.
tags: DevJourney, Career, Learning, React
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/qpfxm4cvgky6kklssa0d.png
canonical_url: https://timbourguignon.fr/devjourney105
---
This week, I published Sara Vieira's #DevJourney story on my eponym Podcast: [Software developer's Journey](https://devjourney.info). Among many other things, here are my main _personal_ takeaways:
* Sara got her first computer subsidized by the government when she was a kid. That got her to practice with multimedia from a young age. But what propulsed her to learn Web-Development is her father making a website for himself and challenging her to do better.
* Sara's first official job as an intern in an agency was to create Wordpress sites... in one day. This taught her what a "very fast paced environment" really is... from the get go. 
* During her first job, Sara wrote tech-articles for various websites. This was a great way for her to dive into new concepts and technologies, an excuse to learn even more.
* [Netlify](https://www.netlify.com/) and [Zeit](https://vercel.com/) were big game changers in Sara's story. Those allowed her to concentrate on the coding part, and not on the deployment parts, while still shipping!
* Sara wrote the "[Opinionated Guide to React](https://opinionatedreact.com/)" book. React is a big framework, with many different ways to achive the same result. Thus the "opinionated" take on it. Angular or Vue are opinionated per definition. You can still missuse the frameworks, but they clearly define their opinions in their docs.
* Sara wrote the book openly on Leanpub. This had two hidden goals: getting feedback early, and learning even more about React itself by tackling the questions her readers would eventually have.

* Sara's dream is to get a caravan and drive across Europe and teach people how to code

Advice:
* The imposter syndrom never goes away. Today may sound really hard, but sometime in the future, you will look at it and realize it is actually not that hard.

Quotes:
* _"When you start out the fact that you don't know something is expected, but after a while you feel like ou should know this or that"_
* _"It's harder when people shit on your opinions then when they shit on your code... the latter is not real"_
* _"You learn a lot by writing. Teaching others is the best way to learn"_
* _"I don't mind showing my failures, but I mind failing"_

Thanks Sara for sharing your story with us!

You can find the full episode and the shownotes on [devjourney.info](https://devjourney.info/Guests/105-SaraVieira.html)

Did you listen to her story?

* What did you learn?
* What are your personal takeaways?
* What did you find particularly interesting?
Django DBML generator
Tags: django, dbml, orm, python
Published: 2020-06-16 19:50:45

Hi folks!

On last week I released the first working version of django-dbml extension to generate the DBML code of all Django installed models

If you wan to try it, visit the project page on PyPI: https://pypi.org/project/django-dbml/

If you don't know the DBML DSL, find out in https://www.dbml.org/home/#intro