teleren/devto huggingface dataset:
Power-up Power Platform with Serverless Custom Connector 
Tags: ama, powerfuldevs, azure, powerplatform
Published: 2020-07-08 02:36:07

--- 

title: Power-up Power Platform with Serverless Custom Connector 

published: true 

description: In this session, Justin Yoo will show you how an Azure Function app can be powered by Swagger and easily turned into a power custom connector. 

tags: ama, powerfuldevs, azure, powerplatform 

--- 

<hr /> 

  

#### #PowerfulDevs Conference 

  

`RSVP HERE BY JULY 15:` 

[https://aka.ms/powerfuldevsconf](https://aka.ms/powerfuldevsconf) 

{% youtube 4B4eK2RxgqE %}
  

The [Powerful DEVs Conference](https://aka.ms/powerfuldevsconf) is the first virtual conference of its kind. We will showcase how developers can leverage the Power Platform to build applications faster and with far less effort. Connect with industry-recognized ProDev influencers, Microsoft Cloud Advocates, trusted and diverse community leaders, and members of the Power Platform Team. 

  

`BOOKMARK THIS FOR RESOURCES AND DISCUSSION WITH SPEAKERS`   
{% link https://dev.to/azure/powerfuldevs-conference-join-us-on-july-15th-online-fe3 %} 

  

Revisit this page during the event to engage in live (and post-event) discussions on those topics with both speakers and community. The speakers will be here for a live Q&A for at least 30 minutes immediately after their session concludes. After the event, come back to find additional slides, videos, and resources for this session. 

  

<hr/> 

  

## About This Session: 

  

`July 15, 2020: 16:00 PDT - 16:25 PDT` 

  

Power Platform provides nearly 400 connectors for external API communication. However, what if there is no out-of-the-box connector available for my purpose? You can easily build a custom connector using Azure Functions so that your Power Apps or Power Automate has more power! Throughout this session, I'm going to show how an Azure Function app can be powered by Swagger and easily turned into a powerful custom connector. 

 

## About the Speakers: 

  

Justin Yoo is a Senior Cloud Advocate @ Microsoft and Microsoft MVP alumni. Follow [@justinchronicle](https://twitter.com/justinchronicle) on Twitter.
JavaScript ❤ PowerPlatform
Tags: ama, powerfuldevs, javascript, powerplatform
Published: 2020-07-08 02:32:54

<hr /> 
  
#### #PowerfulDevs Conference 
  
`RSVP HERE BY JULY 15:` 
[https://aka.ms/powerfuldevsconf](https://aka.ms/powerfuldevsconf) 
  
The [Powerful DEVs Conference](https://aka.ms/powerfuldevsconf) is the first virtual conference of its kind. We will showcase how developers can leverage the Power Platform to build applications faster and with far less effort. Connect with industry-recognized ProDev influencers, Microsoft Cloud Advocates, trusted and diverse community leaders, and members of the Power Platform Team. 
  
`BOOKMARK THIS FOR RESOURCES AND DISCUSSION WITH SPEAKERS`   
{% link https://dev.to/azure/powerfuldevs-conference-join-us-on-july-15th-online-fe3 %} 
  
Revisit this page during the event to engage in live (and post-event) discussions on those topics with both speakers and community. The speakers will be here for a live Q&A for at least 30 minutes immediately after their session concludes. After the event, come back to find additional slides, videos, and resources for this session. 
  
<hr/> 
  
## About This Session: 

![Amey Holden](https://dev-to-uploads.s3.amazonaws.com/i/j26acr2on8k7do3kcy7e.png)
  
`July 15, 2020: 15:30 PDT - 15:55 PDT` 
  
Integrating the web platform with Model Driven Apps can seem quite daunting, these platforms can seem so big and complex. Never fear, that’s where the PowerPlatform can help. With a few bits of integration, we can take the power of the PowerPlatform, plug it into our web app and surface the data back up to Model Drive Apps like Dynamics! 
 
## About the Speakers: 
  
Aaron Powell is a Developer Advocate @ Microsoft with a passion for JavaScript and .NET. Follow [@slace](https://twitter.com/slace) on Twitter. 
 
Amey Holden is a Microsoft Business Application MVP and a CX Specialist for DXC technology. Follow [@ameyholden](https://twitter.com/ameyholden) on Twitter.

{% youtube SmJcB_tsjGM %}

## Additional Resources

* [Cognitive Services - Text Analysis](https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/?WT.mc.id=events_powerfuldevs-blog-aapowell)
* [Azure Functions Queue bindings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-queue-trigger?tabs=csharp&WT.mc.id=events_powerfuldevs-blog-aapowell)
* [Azure Functions CosmosDB bindings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-cosmosdb-v2?WT.mc.id=events_powerfuldevs-blog-aapowell)
* [GitHub repo for the dev component](https://github.com/aaronpowell/event-twitter-insights)
Trees Data Structure video explanation
Tags: datastructures, algorithms, computerscience, trees
Published: 2020-07-08 01:56:34

---
title: Trees Data Structure video explanation
published: true
description: understand what trees are and the most important terminology to know about
tags: #datastructures #algorithms #computerscience #trees
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/nnxzotu0e6da7nu34h22.png
---

A video where I explain what trees are and talk about some important terminology, let me know what you guys think:

https://www.youtube.com/watch?v=iHiuIAC7exE

This video is part of my 16+ hours coding interview preparation course on udemy, where I solve 50 important coding interview questions, and explain various algorithms and data structures on the side, check it out:
https://www.udemy.com/course/leetcode-in-python-50-algorithms-coding-interview-questions/?couponCode=YTINTERVIEWS
How to land a job as a software engineer in Japan?
Tags: japan, recruitment, career, overseas
Published: 2020-07-08 01:56:21

I've been receiving a lot of questions about how to get a job as a software engineering-related in Japan since I started working in Inbound Technology as a Career Advisor 9 months ago. And I think I need to write this article so people can easily know how-to by reading these FAQs.

###Who is this article intended for?
* People who have experience in software engineering (I'm not in charge of recruiting non-tech positions). If you want to explore for more general opportunities, you can contact [Sarah](https://www.linkedin.com/in/sarah-b-b7ab78170/) for further information. 
_If you are looking for more general opportunities in Japan and still want to read through this article, please start from number 4._
* Any people around the world who are not currently in Japan, and wish to pursue their career overseas in Japan.
Let's get started!

####1. What are the general requirements for software engineers in Japan?
As per today I wrote this article, the highest demand from our clients is on PHP (yes you read it correctly, PHP), Java, and Go. Go is on the rise right now.

####2. Do I need to be fluent in Japanese to apply?
If you have N2 JLPT certification, your chance would be huge! Because English is still not very common here, most Japanese still do not understand English. But if you prefer to use English as your daily communication, we also have several opportunities but let's say it's less than 5 companies for now. And it requires at least 4 years of experience in order to apply here.

####3. Can a fresh-grads or junior level software engineer apply?
Absolutely! In order to apply as a fresh-grads or junior level, we need your Japanese proficiency at least N3 or N2 level.

####4. How about the VISA requirements?
Please check whether the companies that you are applying to are providing you with the VISA sponsorship for foreigners, some are not. If the company that you are applying for is eager to provide you with the VISA sponsorship, then you are good to go. Currently, we have up to 20 companies who are available to provide VISA sponsorships.

####5. I'm not graduated from any college, can I still apply for VISA?
Yes, you still can apply for VISA if you have at least 10 years of experience in the same respective field. But if you have a bachelor's degree, you are eligible to apply for VISA at once even if you don't have that 10 years of experience.

####6. Do I need to have any specific resume to apply?
If you have Japanese proficiency, then yes! You need to make a 職務経歴書 (read: shokumu keireki-sho). It's a detailed resume that the Japanese usually use. Please check the template of 職務経歴書 [here](https://drive.google.com/drive/folders/15GO6jImgcjRnfge4IW6giFT8MItqb12E). There is a sample of English (with Japanese format) and also a Japanese resume there.

---

If you have any further questions on how to work in Japan, please feel free to shoot an email to primawan@satriocs.com. I would be glad to help you out!
Codecast #6: Writing Two Scoops of Django
Tags: django, python, writing, books
Published: 2020-07-08 01:08:45

Ever wanted to know how we update [Two Scoops of Django](https://www.feldroy.com/products/two-scoops-of-django-3-x)?

I recorded 4 hours of doing just that and uploaded it to YouTube. Let me know what you think!

{% youtube tnJFu5GvZyE %}
Awesome things for awesome people - June 2020
Tags: webdev, css, javascript, design
Published: 2020-07-08 00:19:22

Because not everyone signs up to my [newsletter](https://tinyletter.com/jh3y).

Here's a roundup of some of the CodePens I made in June 👍

# Scroll that trigger
Scroll to fire a gun!
{% codepen https://codepen.io/jh3y/pen/GRoKOyg %}

# Once upon a time
Scroll to tell a story.
{% codepen https://codepen.io/jh3y/pen/XWXrzVY %}

# Border radius playground
Become a wizard with `border-radius`.
{% codepen https://codepen.io/jh3y/pen/XWmvwYg %}

# Superstar DJ
Scratch music with your mousewheel 😎
{% codepen https://codepen.io/jh3y/pen/RwraKYZ %}

# The little book of Jhey
Scroll for a showcase of things I've made.
{% codepen https://codepen.io/jh3y/pen/ExPVzBY %}

# Turbo Kitty
A kitty powered by rainbow jets.
{% codepen https://codepen.io/jh3y/pen/bGEBKoy %}

# Pure CSS resizable Hot dog
Use CSS `resize` to solve hunger.
{% codepen https://codepen.io/jh3y/pen/xxZrNYo %}

# Animated Party Corgi
Because you want to be the coolest corgi at the party.
{% codepen https://codepen.io/jh3y/pen/BajjVrp %}

# Eat more apples!
Scroll through this Apple-esque promotional page.
{% codepen https://codepen.io/jh3y/pen/KKVMmdz %}

# Downtown traffic
An isometric downtown animation.
{% codepen https://codepen.io/jh3y/pen/GRoJLQR %}

# Air horn
Fire air horns on tap with Pixi.js
{% codepen https://codepen.io/jh3y/pen/bGEevKa %}

# Hifi
An animated Hifi drawn with Figma.
{% codepen https://codepen.io/jh3y/pen/rNxjPNX %}

# Scrollodex
Scroll through a list of contacts with GreenSock's ScrollTrigger.
{% codepen https://codepen.io/jh3y/pen/OJMjvmv %}

# Cursor takes the elevator
Tired of scrolling legalese. Click to open the elevator and let your cursor take the elevator.
{% codepen https://codepen.io/jh3y/pen/oNbeeQQ %}

# One hour Kool Aid man
Drawn in one hour with CSS.
{% codepen https://codepen.io/jh3y/pen/QWygGvQ %}

# Process is messy
Process is messy. Tap to restart the animation.
{% codepen https://codepen.io/jh3y/pen/RwrVYvP %}

# Header bears
Tap to drop more and more bears. Mayhem.
{% codepen https://codepen.io/jh3y/pen/gOPmMyO %}

# Let your code flow
Like it tells a story!
{% codepen https://codepen.io/jh3y/pen/GRorZgy %}

-----

Wanna see more? Reach out and say "Hi!" on [Twitter](https://twitter.com/jh3yy)!
What the heck is a rune in Golang
Tags: go, runes, strings
Published: 2020-07-08 00:12:18

<span>Photo by <a href="https://unsplash.com/@gersonrepreza?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Gerson Repreza</a> on <a href="https://unsplash.com/s/photos/cancun?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText">Unsplash</a></span>

The banner is a Cancún beach because I miss it some much.

Well, let's begin.

If you're familiarized with Golang might you already know what a rune is, but if you wanna clear more, you can continue reading.

In this short post, we will learn why the rune is a type of structure important and powerful in the Golang environment.

Let's start with the origin.

## Characters, ASCII and Unicode

> The rune type is an alias for `int32` and is used to emphasize than an integer represents a code point.

**ASCII** defines 128 characters, identified by the **code points** 0–127. It covers English letters, Latin numbers, and a few other characters.

**Unicode**, which is a superset of ASCII, defines a codespace of **1,114,112 code points**. Unicode version 10.0 covers 139 modern and historic scripts (including the runic alphabet, but not Klingon) as well as multiple symbol sets.

## Strings and UTF-8 encoding

> A string is a sequence of bytes, not runes.

However, strings often contain Unicode text encoded in UTF-8, which encodes all Unicode code points using one to four bytes. (ASCII characters are encoded with one byte, while other code points use more.)

Since Go source code itself is encoded as UTF-8, string literals will automatically get this encoding.

For example, in the string "café" the character é (code point 233) is encoded using two bytes, while the ASCII characters c, a and f (code points 99, 97 and 102) only use one:

```golang
fmt.Println([]byte("café")) // [99 97 102 195 169]
fmt.Println([]rune("café")) // [99 97 102 233]
```

### Important points
- Golang uses runes to manage Unicode chars, instead to limit the development only for ASCII values.
- The importance to know this difference is to manage better the iteration between elements, and have a more clear scope of spaces, values, and differences between a string and a rune.
- All of these values are bits and bytes as well, but it's better if we know when to use it and where to use it.

[Original post](https://yourbasic.org/golang/rune/#:~:text=The%20rune%20type%20is%20an,and%20a%20few%20other%20characters.)

Happy coding!
Introducing PerfBeacon - Continuously Measure Site Speed via API or Schedule
Tags: webperf, webdev, frontend, react
Published: 2020-07-08 00:05:12

---
title: Introducing PerfBeacon - Continuously Measure Site Speed via API or Schedule
published: true
description: PerfBeacon is a wrapper around Google Lighthouse that lets you continuously measure your site's performance via API, or a schedule
tags: ['webperf', 'webdev','frontend', 'react']
canonical_url: https://maxrozen.com/2020/07/08/introducing-perfbeacon
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/84na0ozx2omuu3ivwvp4.png
---
Hey there, I'm Max. I'm the creator, engineer, designer and customer support at PerfBeacon. During the day, I work as a Frontend Software Engineer at Atlassian, and have worked at Ernst & Young (EY), and various startups around Sydney.

I built PerfBeacon as an automated wrapper around Google Lighthouse to automate a repetitive part of my job as a frontend developer. With the API set up to run at the end of CI/CD, it makes it fast to iterate on performance tweaks.

PerfBeacon lets you:

- Continuously monitor the performance of unlimited sites
  ![Continuously monitor the performance of unlimited sites](https://dev-to-uploads.s3.amazonaws.com/i/84na0ozx2omuu3ivwvp4.png)
- Schedule your performance checks to run throughout the day
- Use an API to run a performance check at any time
- Export the underlying Google Lighthouse report to share with your team
  ![Export Google Lighthouse Report](https://dev-to-uploads.s3.amazonaws.com/i/16qvnb7q0471syxrm3c3.png)
- Invite your entire team at no extra cost
  ![Invite your entire team at no extra cost](https://dev-to-uploads.s3.amazonaws.com/i/secgsfqpa2wd58mvyk97.png)

- ... and more coming soon!

You can get started for free at [PerfBeacon.com](https://perfbeacon.com/)
Gravatars and Postgres 12 using Generated Columns
Tags: postgres, database
Published: 2020-09-03 14:05:13

---
title: Gravatars and Postgres 12 using Generated Columns
published: true
date: 2020-07-08 00:00:00 UTC
tags:  
- postgres
- database
canonical_url: https://magistratehq.com/blog/generated-columns-postgres/
---

Generated columns are an exciting new feature of Postgres. They allow you to replace some of your existing trigger logic in a faster and easier to read way.

```
create table users (
  id serial primary key,
  name text not null,
  email text not null,
  avatar_url text generated always as ('http://gravatar.com/avatar/' || md5(email)) stored,
  created_at timestamptz not null default now(),
  updated_at timestamptz not null default now());
```

The interesting part of this block of code is where the `avatar_url` column is being created. It is creating a new column that is generated and stored on disk using the value of another column (email). That also means if a user's email is updated, the `avatar_url` will also be updated with the correct Gravatar url. This functionality was added in Postgres 12.

Let's say we decide to show an avatar that is more optimized for our app. Gravatar allows you to pass a size parameter in pixels for the returned image. This can be accomplished with Gravatar by adding `s=200` as a query parameter. All this takes is altering the column.

```
alter table users drop avatar_url;
alter table users add column avatar_url text generated always as ('http://gravatar.com/avatar/' || md5(email) || '?s=200') stored;
```

You might be wondering why you would store this value in the database instead of generating it in your app. Computing MD5 hashes isn't a very fast process (by design), especially when it needs to be done anytime an avatar needs to be displayed. Storing the calculated value will certainly speed things up.

For more information about the possible configuration of Gravatar URLs, see this article from the [Gravatar documentation](https://en.gravatar.com/site/implement/images/).

Rob Conery shared another use of [generated columns using json columns](https://rob.conery.io/2019/10/24/virtual-computed-columns-in-postgresql-12/) that is worth checking out.

This is just one reason we love Postgres, but there are so many other things to love about it! If you liked this blog post, and want to learn more about what [Magistrate](https://magistratehq.com) has to offer, sign up for our mailing list!
Learning Golang (some rough notes) - S02E00 - Kafka and Go
Tags: go, learning, apachekafka, kafka
Published: 2020-07-13 13:41:26

---
title: Learning Golang (some rough notes) - S02E00 - Kafka and Go
published: true
date: 2020-07-08 00:00:00 UTC
series: Learning Go with Kafka
tags: go, learning, apachekafka, kafka
canonical_url: https://rmoff.net/2020/07/08/learning-golang-some-rough-notes-s02e00-kafka-and-go/
---

With the first leg of my journey with Go [done](https://dev.to/rmoff/learning-golang-some-rough-notes-s01e10-concurrency-web-crawler-5gka) (starting from a [_very_ rudimentary base](https://dev.to/rmoff/learning-golang-some-rough-notes-s01e00-49k3)), the next step for me was to bring it into my current area of interest and work - Apache Kafka.

There are several client libraries available. I’m going to use the [the Confluent Go client](https://docs.confluent.io/current/clients/go.html) for now, and if I feel the need later on might explore the others. The [API docs](https://docs.confluent.io/current/clients/confluent-kafka-go/index.html) are comprehensive as are the [example code snippets](https://github.com/confluentinc/confluent-kafka-go/tree/master/examples) and some showing [how to use the Go client with Confluent Cloud](https://github.com/confluentinc/examples/tree/5.5.1-post/clients/cloud/go).

Here I’m going to try and apply what I’ve learnt so far to the Kafka client and build my understanding of it from the ground up (instead of blindly copy & pasting which is effective but less educational than taking something apart and reassembling it 😎).
An interactive CLI that updates the default branch name in any/all your GitHub repositories.
Tags: showdev
Published: 2020-07-07 23:56:53

Technically, this is in **preview** stability.. but wouldn't it be nice if some great members of Dev previewed it?? :D

```shell
$ npm i -g flipswitch
$ flipswitch
```

[Here's the npm page](https://www.npmjs.com/package/flipswitch)
[Here's the github page](https://github.com/nickpalenchar/flipswitch/)
Sentry with Spring Boot
Tags: java, sentry, spring, reporting
Published: 2020-07-07 23:28:18

*After writing this article I've revised my approach. [See this follow up article for details](https://dev.to/focusedlabs/sentry-with-spring-boot-the-better-way-9kl). The approach below still works, with some caveats.*

---

We are trying out Sentry for error alerting at Focused Labs, and I wanted to set it up in my Spring Boot backend. For the most part, Sentry has been super easy to add to a project, but I hit a few little snags with the Spring Boot integration that I wanted to share with the community.

I'll keep this short, this is what I ended up with:

`build.gradle.kts`:

```kotlin
implementation("io.sentry:sentry-spring-boot-starter:1.7.30")
implementation("io.sentry:sentry-logback:1.7.30")
```

In some scenarios, this may lead to duplicate errors. The official docs warn against including both `sentry-spring` (which is pulled in by `sentry-spring-boot-starter`) and `sentry-logback`. Which makes sense since the Spring integration with Sentry is handling exceptions and sending them to Sentry and the Logback integration is watching logs, and then sending them to Sentry. 

We are using GraphQL in our backend, so the `sentry-spring` behavior wasn't catching our exceptions since they are exclusively catching errors in the context of an MVC controller. Still, potentially, an exception would both be logged and caught by the Sentry exception handler, resulting in a duplicate error. If this becomes an issue, I'll have to revisit my dependencies.

This is why I am bothering with `sentry-spring-boot-starter`

`application.yaml`:

```yaml
---
sentry:
  dsn: '<my-dsn>'
  stacktrace:
    app-packages:
      - com.mypackage
spring:
  profiles:
    active: dev
---
spring:
  profiles: dev
sentry:
  enabled: false
  environment: dev
---
spring:
  profiles: production
sentry:
  environment: production
```

Sweet sweet YAML.

Thanks to the [configuration support](https://github.com/getsentry/sentry-java/pull/779) in `sentry-spring-boot-starter` I can just locate my Sentry configuration right next to the rest of my Spring Boot configuration.

`logback-spring.xml`:

```xml
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <appender name="SENTRY" class="io.sentry.logback.SentryAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>WARN</level>
        </filter>
    </appender>

    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="FILE"/>
        <appender-ref ref="SENTRY"/>
    </root>
</configuration>
```

By using `include` here, I am able to defer to the default Spring Boot log configuration and only override what I absolutely need to. In this case, adding an additional appender to the `root` logger.

And that's it! It looks straight forward when laid out here, but took a few iterations to get everything working. Hopefully, this helps other people out with the same process.