teleren/devto huggingface dataset:
Full Stack Developer
Back-End (Laravel) and Front-End (VueJS)
Tags: laravel, vue, php, angular
Published: 2019-10-08 16:45:06

DonTouch (Switzerland) is a rapidly growing digital company. We develop creative marketing solutions, working in teams, integrating specific skills and researching unconventional ideas at the top level for your next challenge.

For our Headquarters in Chiasso (CH), We are hiring:

Full Stack Developer
Back-End (Laravel) and Front-End (VueJS)

At least 3 years of work experience:
 Back-End
 PHP “Object Oriented”. Framework Laravel 5.x
 Appreciated knowledge of frameworks like Cake, Symfony .
 SQL database (like Maria DB).
 Internet protocols, web servicies RESTful, SOAP and version control like Git
 Front-End
 Framework Javascript like: VueJS, Angular e React .
 Framework Html like Bulma, Boostrap, Foundation

We are looking for self-motivated individuals with a strong drive towards success and easygoing personality, ability to work under pressure to reach goals and meet deadline.

The offer is for a permanent employment contract according to Swiss Law (equals to 40 hours / week).

Job location: Chiasso (Switzerland)

You can send your CV to hr@dontouch.ch .

The selection path will be made through various steps (individual and collective interviews, role games, theoretical and practical tests) only candidates who pass each step will have access to the next test.

*********************************************************************************
The company manages the marketing strategies of one of the most important websites in Europe for adults (escort / sex workers). The chosen candidate will be working for a company operating in the "adult entertainment" sector, if you have any objections with regards to this industry, are not comfortable or have (legitimate) moral issues with it, we invite you to refrain from applying.
*********************************************************************************
How to deal with impostor syndrome?
Tags: discuss, webdev, impostorsyndrome, confidence
Published: 2019-10-08 16:25:20

Lately, as I have been trying to assess my skills and experience I notice my impostor syndrome begin to slowly take over. I begin to feel as though I really do not know as much as I should or that what I do know isn't enough. My anxiety begins to increase and these thoughts of self doubt overcome me. How can I convince myself that I *am* good at what I do and learn to gain more self confidence? 

What has or hasn't worked for you when dealing with your impostor syndrome?
My Side Project Ichi-go ichi-e
Tags: cpp, openframewokrs, python, creativecoding
Published: 2019-10-08 16:20:48

This is my side project and I started this when I was an ITP resident.

{% vimeo 363803650 %}

Ichi-go ichi-e is a Japanese four-character idiom.
The term means "for this time only" or "once in a lifetime."
Ichi-go ichi-e is an openFrameworks application that generates a new shader code.


### How this works
As you can see, this is a desktop app which is written in openFrameworks.
I'm using openFrameworks to load fragment shaders' file. Fragment shaders' file is generated by python script.

1. openFrameworks call python script to generate fragment shader every 5 sec.
2. openFrameworks load fragment shaders file and run it for 5 sec (also showing the code).
3. openFrameworks saves the file.

openFrameworks
https://openframeworks.cc/
Visualize the Power of Auth0 in Minutes
Tags: authentication, login, identitymanagement
Published: 2019-10-08 15:58:40

---
title: Visualize the Power of Auth0 in Minutes
published: true
description: Cut through the complexities of identity with custom-branded end-user flows.
tags: #authentication #login #identitymanagement
canonical_url: https://auth0.com/blog/visualize-the-power-of-auth0-in-minutes/
---
TL:DR: In this article, we'll walk you through setting up an Auth0 Flow so you and your end users can easily see the Auth0's impact. (Typical set up time: < 5 mins)

Are you looking to kick the proverbial Auth0 tires? Do you want to quickly understand our solution before taking the IDaaS plunge? Maybe you need your boss and/or colleagues to use Auth0 in your next project and want an easy way to present our features. Or perhaps you want to explain identity to your customer or client. Whatever the reason might be, Auth0 Flows is a great tool to help cut through the complexities of identity with branded visualizations of the end-users' journey.
[Continue reading 📖](https://auth0.com/blog/visualize-the-power-of-auth0-in-minutes/?utm_source=dev&utm_medium=sc&utm_campaign=power_auth0)

![Visualize the Power of Auth0 in Minutes](https://cdn.auth0.com/blog/illustrations/auth0-flows.png)
My First DevFest as a Speaker✨
Tags: devfest, speaker, actionsongoogle, devfesthubli
Published: 2019-10-08 15:56:45

The first time you give a speech on a level as grand as Google is undoubtedly meant to be a special moment, a privilege, and the beginning of something special. I will surely never forget the once-in-a-lifetime opportunity. 


It was a fine Wednesday morning when I received the mail from Google Developer Group Hubli, that my talk on **"Let's get started with Actions on Google"** is shortlisted for the DevFest Hubli 2019. I felt honoured. 

![Smit at DevFestHubli](https://firebasestorage.googleapis.com/v0/b/devfestmumbai.appspot.com/o/DevFest%20Hubli%2FIMG_0052.jpg?alt=media&token=cc85365b-6c40-4c4d-b1d2-8478640ab1bc)

It soon dawned on me that I would be speaking for an audience of almost 100+ listeners. I felt a pang of nervousness but as the day of the event came closer, I felt a strong sense of determination forming in my mind. 

The two-day event was scheduled for the 28 and 29 of September 2019, of which my talk was to be happening on the 29th.
It was a giant congregation of student developers from various institutions and technological backgrounds. I was intrigued and overwhelmed. 

I gave a talk on “Let's get started with Actions on Google" which most developers are not equipped with. I took the courtesy to elaborate on Intents, Entity, tools like Dialogflow, Firebase Realtime Database, Cloud Function, and response types such as card, and suggestion chip. I presented the display of *DevFest Mumbai*, developed that I have worked on (Check out [Talk to DevFest Mumbai](https://assistant.google.com/services/a/uid/000000b735d74491?hl=en&source=web) )
 . Also, I shared insights on [Qwiklabs](https://www.qwiklabs.com/quests/61) and [Codelabs](https://codelabs.developers.google.com/?cat=Assistant) course of Actions on Google. 

![DevFest Hubli Image](https://firebasestorage.googleapis.com/v0/b/devfestmumbai.appspot.com/o/DevFest%20Hubli%2FIMG_9936.jpg?alt=media&token=ec78c2a5-c7d3-419e-a42d-710d8d48378e)

The most spectacular moment for me was the interaction with Mr Nikhil Raichur. (Community Manager @Google). 

![Speaker group photo](https://firebasestorage.googleapis.com/v0/b/devfestmumbai.appspot.com/o/DevFest%20Hubli%2F_MG_0241.jpg?alt=media&token=51d632bd-0383-488b-8826-c33a04e77e42)

I had a memorable experience throughout my stay at BVB College of Engineering, Hubballi. Thanks to GDG Hubbali for giving me an opportunity and for the warm welcome and generous hospitality. 
I’d also like to thank GDG Mumbai & GDG Cloud Mumbai community for motivating me. You all are my constant support! 

I feel honoured and privileged to the core. 

[Check out my slide](https://www.slideshare.net/smitjethwa20/hey-hubballi-talk-on-actions-on-google-devfesthubali)
Why Does Dark Mode Always Look 10x Better?
Tags: discuss, darkmode
Published: 2019-10-08 15:47:16

Just implemented the 'dark mode' in my latest personal project!
How do you like it?
Test it out: https://github.com/juricaKenda/bashboard
![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/up1ij5ftxbnjst3wf8q9.jpg)
How to use lazy in Kotlin
Tags: kotlin
Published: 2019-10-08 15:39:05

We all have been there. Kotlin is good, and we want to declare a variable outside of onCreate() so that we can access the member variable anytime outside of it too. Now to make it non null, you have to either send some data and init the variable in the constructor. Which is not possible in most cases.

For performance reasons
Now don't just use lazy just like this:-

private val someString by lazy {
    "someData"
}

but do like this :- 

private val someString by lazy(LazyThreadSafetyMode.NONE) {
    "someData"
}

https://www.youtube.com/watch?v=mNviUg0ocsk
FindCollabs: Meet People, Create Software
Tags: opensource, webdev, findcollabs
Published: 2019-10-08 15:09:09

Most of the apps we use every day are consumer applications: social networks, productivity apps, and marketplaces. These are the kind of apps that I want to build. 

Consumer applications require more than code. They need design, product management, and high-level thinking.

![](https://res.cloudinary.com/practicaldev/image/fetch/s--YkQyKlmn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/2h3bmcraxpwlkj3dflx2.gif)

I love to build software, and I love to build it in open source. But most of the software in open source is infrastructure. Open source software is operating systems, databases, and compilers.

I don't want to build a database, or a new programming language. I want to build consumer applications, like Audible or Instacart.

Where should we go to build consumer apps in the open together?

GitHub alone will not suffice. Consumer applications need designers, illustrators, and project managers. These users aren’t productive within GitHub, which is focused on the highly technical Git workflow.

[FindCollabs](http://www.findcollabs.com) is meant to solve this problem. FindCollabs is a place to find collaborators and build projects.

![](https://lh5.googleusercontent.com/9-oYbCzurOnnmd0M-EW2grm0TVJ49GIaBRJ3r-kHONpM7Ze4mQFLh-_oPGy-xQPn39oeWPxQph2vGM2Y9JE5HPgGid6jyqoV-CFrZd-OaV9hANac8YhthGzfmeeRXwqXL3cW2-aM)

FindCollabs has the common social tools you expect: tagging, text chat, emojis, and video chat.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/9spfi6gyy0lnqi3koqqa.gif)

Consumer facing applications still need code so we integrate with GitHub.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/0i5ps48iljfd3ve5649e.jpeg)

On FindCollabs, you don’t need to be a programmer to start a project and build a team. If you are a product designer, you can post your idea along with wireframes and work with software engineers or low-code specialists to take your product to market. 

The FindCollabs project finder allows people with similar interests to find projects to work on together.

![](https://lh4.googleusercontent.com/9xROv1aNm2WoA2S5EvBdI7385vpGAL02XwqD6ah_Ld3xzDR77pa8RKJgzLbVW3fWF2lae86nb_VLDLdvzAV_ApgkI99WZmCzN_5HoCJWq8RYrjIcypQXMCz-75mvPQ9i-_NDMJbd)

Join [FindCollabs](www.findcollabs.com) and post a project. We’d love to see what you are building, whether it’s consumer open source software or not.

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/rpf3u9gsn2df1b4kt5yn.gif)
Function currying for the dynamic length of params i.e Implementing Add(1)(2)(3).....(n)()
Tags: webdev, javascript
Published: 2019-10-08 15:01:46

---
title: Function currying for the dynamic length of params i.e Implementing Add(1)(2)(3).....(n)()
published: true
description: Simple solution for Add(1)(2)(3).....(n)() implementation
tags: webdev, javascript
---

Currying refers to the process of transforming a function with multiple arities into the same function with less arity. The curried effect is achieved by binding some of the arguments to the first function to invoke so that those values are fixed for the next invocation. Here’s an example of what a curried function looks like:

// add(2)(3); 

and the function definition is

```
function add(a) {
  return function(b) {
    return a + b;
  }
}
```

The above solution works for the currying for a function with two params

How would we achieve if there are more dynamic no. of params

i.e add(2)(3)(4)(5)....(n)()

Let's write a generic `add` function that takes `n` no. of params.


```
  function add(a) {
   return function(b) {
      return b ? add(a + b) : a;
   }
  }
```

😇 One-liner solution with an ES6 arrow function 

```
const add = a => b => b ? add(a + b) : a; 
```

🙌 🙌🏻 🙌🏼 🙌🏽 🙌🏾 🙌🏿
Why we should split long code into small functions or files?
Tags: javascript, node
Published: 2019-10-08 15:00:13

As they said:
* *Unix Principle*: "Do one thing and do it well".
* *Clean Code*: "The first rule of functions is that they should be small".
* *Node.js Best Practices*: "Ensure that each unit is kept small and simple".



Simply put, this can leads to **MURDER** which is a good thing (the answer comes from [stackOverflow](https://stackoverflow.com/questions/13256453/what-is-the-advantage-of-breaking-a-code-into-several-small-functions-in-c), by John Dibling):

* **M** - Maintainability. Smaller, simpler functions are easier to maintain.
* **U** - Understandability. Simpler functions are easier to understand.
* **R** - Reuseability. Encourages code reuse by moving common operations to a separate function.
* **D** - Debugability. It's easier to debug simple functions than complex ones.
* **E** - Extensibility. Code reuse and maintainability lead to functions that are easier to refactor in 6 months.
* **R** - Regression. Reuse and modularization lead to more effective regression testing.



Based on these principles, [kdo](https://github.com/hiowenluke/kdo) was born as an open source project.

You can easily split long code into small functions or files, execute them via kdo, makes the code clear, easy to read and maintain. 

![](https://raw.githubusercontent.com/hiowenluke/kdo/master/doc/img/demo0.jpg)

![](https://raw.githubusercontent.com/hiowenluke/kdo/master/doc/img/demo1.jpg)


Very simple and useful, right? Just [try it now](https://github.com/hiowenluke/kdo).
Tech Talk: Debugging AWS Lambda functions with VSCode
Tags: vscode, debugging, aws, serverless
Published: 2019-10-08 14:42:37

---
title: Tech Talk: Debugging AWS Lambda functions with VSCode 
published: true
description: 
tags: vscode, debugging, aws, serverless
cover_image: https://thepracticaldev.s3.amazonaws.com/i/p0gzqp6x9izc16620kk4.jpg
---

Hey, last week I gave my tech talk about debugging AWS Lambda functions locally with VSCode and now it's up on YouTube.

Enjoy!

{% youtube OUpUmWA0ae0 %}

Zoom didn't allow me to use my camera (don't know why), but at least the mic worked and I think it was a wise decision to pay a bit more for it.

Thanks to [Renato](https://dev.to/byrro) for doing this with me! It was fun and I think I'd do it again. Next time with working cam.

If you are interested in other topics, write a comment and I'll see what I can do :)

Also, [here is the GitHub Repo](https://github.com/kay-is/debug-lambda-vscode)
Rails testing tip: Remember to revert your in-memory configuration setting changes in each testcase
Tags: rails, ruby, testing
Published: 2019-10-08 14:32:27

In Rails, each test case is wrapped in a database transaction. With both minitest and rspec. Once the test case is finished running, the transaction rolls back all the database-related changes. This means all of our app's testcases run with the exact same snapshot of the database. This ensures the database doesn't introduce any inconsistencies.

But what about the configuration settings that our app relies upon? We might write testcases that explicitly test the app's behavior due to the changes in one of these configuration settings. So if we change a value in one testcase, then it is your responsibility to restore it at the end of the testcase to it's previous value. The database framework can't help!

If you don't explicitly revert these config settings, then they'll come back to bite you later in the form of some testcase failure. It will perplex you. It did me.

So what's the solution?

I came across a good pattern in the [Devise gem's](https://github.com/plataformatec/devise) source code. The idea is simple. They make the config setting change in a test helper method and yield the testing code to this helper method. One the block is run, the config setting is reverted to its old value (which was saved in the beginning). The code can explain better.

```rb
  # Execute the block setting the given values and restoring old values after
  # the block is executed.
  def swap(object, new_values)
    old_values = {}
    new_values.each do |key, value|
      old_values[key] = object.send key
      object.send :"#{key}=", value
    end
    yield
  ensure
    old_values.each do |key, value|
      object.send :"#{key}=", value
    end
  end
```

And used like this:

```rb
  test 'with sign_out_all_scopes as false' do
    swap Devise, sign_out_all_scopes: false do
      # test code
    end
  end
```

What happens here? The default value for `Devise.sign_out_all_scopes` is `true`. But in this testcase, we need to test a scenario with this value set to `false`. The swap method takes care of saving the current value of this attribute before changing it to the new value we want it to hold. And then it yields a block which is where we can write our test code. Once it is run, the swap method restores the saved old value to the attribute in the ensure block.

This can apply to any kind of in-memory configuration object that allows both reading and writing. Make use of this tactic to avoid future headaches!
Matt's Tidbits #37 - How to run apps on multiple devices simultaneously!
Tags: mattstidbits, android, androidstudio, tidbittuesday
Published: 2019-10-08 14:12:30

[Last time I wrote about how to get 100% code coverage on Kotlin nullable vars.](https://medium.com/@matthew.b.groves/matts-tidbits-37-how-to-run-apps-on-multiple-devices-simultaneously-d99100600492) This week I have a quick tidbit on how to run an app on multiple devices at once!

About a year ago, a coworker revealed a little-known secret — the window that appears in Android Studio when you want to run an app on a device supports multi-select! So, you can shift/command select multiple devices and the app would be installed/launched on all of them simultaneously — a very handy tool if you’re trying to debug something on multiple devices.

However, that was 2018, and now we have a new version of Android Studio, and this functionality is now available in a slightly different format. The new device menu in the toolbar has an option to “Run on multiple devices”:
![Run on multiple devices in menu](https://miro.medium.com/max/1844/1*NMZ-m-iCPw4Iy1Z-mZRJvQ.png)

Once you select that, you’ll get a pop-up window where you check a box next to each device you’d like to run the app on:
![Selecting deployment targets](https://miro.medium.com/max/2352/1*dDhigIBAVtVCDwal4jcKnQ.png)
(It’s a little difficult to tell from this image, but there are different icons for physical devices vs. emulators)

Once you press the “Run” button, Android Studio will work its magic and install/launch the app on all of the devices you specified!

One interesting thing to note is that the “Run” console will combine and interleave the logs of all devices together, prepending the device’s ID before it:
![Combined log output](https://miro.medium.com/max/1192/1*jOJG5_vETVfv-mfxo2zF_w.png)

I’ve found this can be a little difficult to read, so you may have better luck using the Logcat tab where you can view the logs separated out by device:
![Using Logcat](https://miro.medium.com/max/1412/1*3QZWrpLt9yLsqVb-27f7Fw.png)

I hope this makes your life easier and please share this tidbit around — this feature is much more prominent in the UI now, but I imagine many people still don’t know it’s there. Do you have other favorite Android Studio features you find especially useful? Let me know in the comments below! And, please follow me on Medium if you’re interested in being notified of future tidbits.

*This tidbit was originally delivered on August 22, 2018.*
Daily Challenge #85 - Unwanted Dollars
Tags: challenge
Published: 2019-10-08 13:18:29

---
title: Daily Challenge #85 - Unwanted Dollars
published: true
series: Daily Challenge
description: Convert a string input into its number value. 
tags: challenge
---

If you are faced with an input box like this: 
<pre>
                                           +--------------+
  Enter the price of the item, in dollars: |              |
                                           +--------------+
</pre>

Do you put the dollar sign in or not? Inevitably, some people will type a dollar sign while others will leave it out. The instructions could be made clearer - but that won't stop those that don't read them.

Write a function that converts a string representing a number into the number itself. Consider negative numbers and any extraneous space characters that the user might put in. If the given string does not represent a number, return 0.0.

<pre>Sample Cases:
money_value("12.34")
money_value(" $5.67")
money_value("-$ 0.1")
money_value("$-2.3456")
money_value("007")
money_value(" $ 89")
money_value("   .11")
money_value("$.2")
money_value("-.34")
money_value("$$$")</pre>

***
_This challenge comes from geoffp on CodeWars. Thank you to [CodeWars](<https://codewars.com/>), who has licensed redistribution of this challenge under the [2-Clause BSD License](<https://opensource.org/licenses/BSD-2-Clause>)!_

_Want to propose a challenge idea for a future post?  Email **yo+challenge@dev.to** with your suggestions!_
Which tool can be used to track team responsibilities?
Tags: devops, advice, opensource
Published: 2019-10-08 13:58:43

---
title: Which tool can be used to track team responsibilities?
published: true
description: 
tags: #devops #advice #opensource
---

I am a newbie here :) I would like to get some advice from you. 

As a developer, I am working for a big company. We have many teams. It is very difficult to track which team does what. 

For example: if someone comes to me and asks me which team is responsible for Elastic Search?

I cannot remember what every team does. So, I wonder if there are any free tools that can be used to track team responsibilities. 

Something like that:

Team A :
- Elastic Search 
- Describe responsibility: blah blah

Team B:
- DBA 
- Describe responsibility: blah blah

Team C :
- Payment System
- Describe responsibility: blah blah

So, if someone wants to know which team does Elastic Search, type on search box "Elastic Search" to get the right team. 

I have been googling around. I cannot find anything. If I have a capacity, I would love to build this. 

Any idea? Your advice much appreciated. 

Thank you!