teleren/devto huggingface dataset:
Announcing a “(Very) Basic Intro to Coding”
Tags: engineering, javascript, programming, tutorial
Published: 2020-07-06 13:12:51

---
title: Announcing a “(Very) Basic Intro to Coding”
published: true
date: 2020-07-06 13:07:32 UTC
tags: Engineering,JavaScript,Programming,Tutorial
canonical_url: https://qvault.io/2020/07/06/announcing-a-very-basic-intro-to-coding/
---

 ![(Very) Basic Intro to Coding](https://qvault.io/wp-content/uploads/2020/07/Screen-Shot-2020-07-03-at-3.39.57-PM-300x300.png)

The post [Announcing a “(Very) Basic Intro to Coding”](https://qvault.io/2020/07/06/announcing-a-very-basic-intro-to-coding/) appeared first on [Qvault](https://qvault.io).

[Qvault Classroom](https://classroom.qvault.io/) just launched its first _free_ coding course! This one is short, sweet, and to the point. We created a thirty-exercise, two-module course that caters to students who have never seen a single line of code before. That’s right, this is a code-in-the-browser course for absolute beginners.

## What is Taught?

![](https://qvault.io/wp-content/uploads/2020/07/12433210.jpg)

The course is made of 80% code completion exercises and 20% multiple-choice questions.

Some of the concepts covered include:

- Variables
- Printing
- Mathematical Operations
- Loops

We use JavaScript throughout the course for two reasons:

- JavaScript is an [interpreted](https://en.wikipedia.org/wiki/Interpreted_language#:~:text=An%20interpreted%20language%20is%20a,program%20into%20machine%2Dlanguage%20instructions.), dynamically typed language. This means we can leave some of the lower-level details for later courses and focus on more interesting concepts immediately.
- JavaScript is extremely popular and one of the most-used programming languages. JavaScript tends to be a language that junior developers are able to find a job using quickly.

## What’s Next?

One of the next courses in our pipeline is a direct sequel to “(_Very) Basic Intro to Coding_“. We need to cover other core coding concepts like:

- Functions
- Objects
- Scope
- [Node](https://nodejs.org/en/)and [Deno](https://deno.land/)

## What If I’m Not a Beginner?

That’s perfect! _“(Very) Basic Intro to Coding”_ isn’t truly the only free course on [Qvault Classroom](https://classroom.qvault.io/). When you [sign up in the app,](https://classroom.qvault.io/) you now get **250 free gems** , and those gems can be spent on any course or certificate! Coincidentally _“(Very) Basic Intro to Coding”_ is currently the only course that costs _exactly_ 250 gems, but we are adding new courses all the time!

## Thanks For Reading

Hit me up on twitter [@wagslane](https://twitter.com/wagslane) if you have any questions or comments.

Take your coding career to the next level with courses on [Qvault Classroom](https://classroom.qvault.io/#/)

Follow me on Dev.to: [wagslane](https://dev.to/wagslane)

The post [Announcing a “(Very) Basic Intro to Coding”](https://qvault.io/2020/07/06/announcing-a-very-basic-intro-to-coding/) appeared first on [Qvault](https://qvault.io).
Cohort 7 Recap
Published: 2020-07-06 12:54:35

Here at [The Collab Lab](https://the-collab-lab.codes/), we've wrapped up another cohort. We couldn't be more proud of the amazing work this team has put in over the last eight weeks!

First, let's take a second to appreciate the amazing work they did. Check out [the live application](https://tcl-7-smart-shopping-list.netlify.app/) that this team wrote from scratch!

## 💥 Our Participants

🐧 [Nabil Kazerouni](https://www.linkedin.com/in/nabilkaz/)
🤩 [DeVon Thompson](https://www.linkedin.com/in/thompsondevon/)
✨ [Megan McKissack](https://www.linkedin.com/in/meganmckissack/)
🏆 [Tanzima Chowdhury](https://www.linkedin.com/in/tanzima-chowdhury/)

## 👩‍🏫 Our Mentors

🏅 [Alejandro Nanez](https://www.linkedin.com/in/alejandronanez/)
🙌 [Stacie Taylor](https://www.linkedin.com/in/stacietaylorcima/)
🤓 [Michael Sholty](https://www.linkedin.com/in/michael-sholty-74233825/) (me!)

![](https://cdn.zappy.app/d38c8857a29e22f9cc7a5bf5a35eac90.png)

## 🤩 Highlights! 

Over the last eight weeks we collaborated together _remotely_ to build an application, simulating a professional software company work environment setting. At the beginning of the week, these four would split off into two groups and pair program one of two features. At the end of the week, the pairs would present their features back to the rest of the team, talk about the ups-and-downs of the week, and plan out the following week's work.

It's always amazing to watch team chemistry unfold as the weeks go on, and this team was no different. Our participants worked together like they've known each other their whole lives, which is a testament to how they are all *strong communicators*. This is critical to succeeding in a remote environment, and they excelled way beyond expectations.

It was impressive how quickly our team members picked up the tech stack and ran with it. Some of the technologies were familiar to them, like JavaScript and React. However, they had to also learn new technologies like [Firebase](https://firebase.google.com/docs) to be able to get the job done 👏 👏 👏

My favorite part about our this cohort was how proactive they were to owning this work. Personally I didn't have to do much to see this team succeed - they all knew how to default to action. All four team members communicated proactively early in the week to work around each other's availability, scheduled times to work and made it happen! When they ran into issues, they knew how to ask the right questions to get unblocked. These are all key qualities that I look for in teammates professionally.

## 🎬 Wrapping Up

It was really an honor to get to know these folx and bond during a tumultuous time in all of our lives with COVID running amok. Here at Collab Lab, we're incredibly proud of the work our team put in, and would recommend any of our four participants for tech/programming roles in a professional setting. I know they're already talking to potential companies, so if you're looking for early-career engineers you better act fast!
miny - an open source decluttered launcher for your Android device
Tags: showdev, android, java, beginners
Published: 2020-07-06 12:50:43

**miny** is a decluttered launcher for Android. It is aimed at reducing the craving to constantly check your phone every few minutes. It aims to be a bland but accessible launcher.

This launcher has been inspired by the "Light Phone" and brings the functionality of your app launcher to a package that is small and fast. 

It is based on the philosophy of minimalism and aims to declutter your launcher app

Check it out on [GitHub - burhanuday/miny](https://github.com/burhanuday/miny)

## Features

- 4 Shortcuts on the home screen
- Long press to change shortcut
- Swipe towards left to access app drawer
- Start typing the app name to quickly launch the app
- Double tap to switch the screen off
- Small package of size 3mb

## Some screenshots
![Home](https://dev-to-uploads.s3.amazonaws.com/i/xgzc3959s1blwpf2rs36.png)
![App Drawer](https://dev-to-uploads.s3.amazonaws.com/i/nljkwgh1au9z2iu3hnxp.png)

## Contributing

There is a TODO section in the Readme. Check it out on [GitHub - burhanuday/miny](https://github.com/burhanuday/miny)
Helm plugin to manage remote chart repositories on Blob Storage (Azure Blob, S3, GCS Container)
Tags: kubernetes, azure, googlecloud, aws
Published: 2020-07-06 12:48:04

Hello,

I have written a helm plugin (helm-blob) which manages helm chart repository on remote blob storage(Azure Blob, GCS, and S3).

There are a bunch of dedicated helm plugins supporting S3/GCS Bucket which are really awesome. But instead of writing another plugin that supports Azure Blob storage, I have written helm-blob which supports Azure Blob, GCS, and S3 using Go CDK.

Please do check and let me know what you think about it.

https://github.com/C123R/helm-blob
Is there a good mentoring program in Mexico? / Alguien conoce un buen programa de mentores en Mexico?
Tags: discuss
Published: 2020-07-06 12:42:25

I’ve been thinking about mentoring a lot, I’m not sure if I’m ready to mentor someone, but I feel like we need to connect the people on these times...

So, do you know a mentoring program that works for Tech in Mexico? 

——
He estado pensando mucho en cómo hacer mentorias, no estoy seguro si yo estoy listo para ser mentor, pero si creo que es algo que se debe hacer y más en estos tiempos de pandemia...

Alguien conoce algún buen programa de mentorias en Tech que funcione en México?
Is it possible to send messages to Telegram's “Saved Messages” through the API?
Tags: help, telegram
Published: 2020-07-06 12:39:59

> Originally posted over at Stack Overflow, see [question](https://stackoverflow.com/questions/62755958/is-it-possible-to-send-messages-to-telegrams-saved-messages-through-the-api).

Is it possible to send a message via Telegram API to the Saved Messages chat?

I have been looking all over the internet but could not find any information. I would think this would be possible.
using gsap stagger function to make animations more visually interesting
Tags: 10daysofanimation, javascript, gsap
Published: 2020-07-06 12:13:40

**gsap stagger** proves out to be an awesome feature when the animation involves multiple elements having same properties or same class to be more precise.

Tweaking a few options can make your animations much more visually interesting. You may be surprised by just how easy it is to create advanced effects with a tiny amount of code. 

Adding a stagger to a multi-target element basically offsets the starting time of each target's animation.

All elements(with the same class i.e targetElement) recognize a stagger property which can be a number, an object, or a function.

Let's understand it better with the help of a simple example.
### Challenge
Rolling balls animation that looks real(i.e following physics laws).

### Solution 
Create balls in svg and assign `class='ball'` to all of them. Align them horizontally with equal distance between them. I'll move the first ball horizontally using `x: 70` and rotate along z axis using `rotateZ: 360` by transforming the origin as `transformOrigin: "50% 50%"`.
As there are 6 balls, I'll set the animation duration to be 3s with stagger delay of 0.5s as `stagger: 0.5`.

```js
gsap.to('.ball', {
    duration: 3,
    x: 70,
    transformOrigin: "50% 50%",
    rotateZ: 360,
    ease: "back.out(1.7)",
    stagger: 0.5,
    repeat: -1,
});
```
It will look like this
{% codepen https://codepen.io/rahuldkjain/pen/oNbEwNa default-tab=result %}

Looks real ha! I know the animation is basic, but believe me gsap stagger is really powerful.

Other animations that I made are as follows

{% codepen https://codepen.io/rahuldkjain/pen/XWXVPoX default-tab=result %}
{% codepen https://codepen.io/rahuldkjain/pen/rNxerEa default-tab=result %}
{% codepen https://codepen.io/rahuldkjain/pen/QWyaQmy default-tab=result %}
{% codepen https://codepen.io/rahuldkjain/pen/mdVpGpq default-tab=result %}

Happy Animating!
Devart dbForge Studio for Oracle v4.2 and Minitools Now Support Oracle 20c
Tags: oracle, dbforge, database, development
Published: 2020-07-06 12:13:02

---
title: Devart dbForge Studio for Oracle v4.2 and Minitools Now Support Oracle 20c
published: true
description: Devart has just released the new version of its key tool, [dbForge Studio for Oracle v4.2](https://www.devart.com/dbforge/oracle/studio/), and other tools from the dbForge for Oracle product line. The updated solutions support Oracle 20c and have a new option for data synchronization.
tags: oracle, dbforge, database, development
---
*Devart has just released the new version of its key tool, dbForge Studio for Oracle v4.2, and other tools from the dbForge for Oracle product line. The updated solutions support Oracle 20c and have a new option for data synchronization.*

Devart, a recognized vendor of professional database management software for developers and DBAs, rolled out the new version of its popular solution – dbForge Studio for Oracle, v.4.2. The improved IDE now features connectivity support for Oracle 20c and a brand-new option for data synchronization.

- **Connectivity.** The Czech vendor strives to stay on top of software development, thus the new Studio for Oracle v.4.2 is promptly enhanced with an option to connect and work with Oracle 20c databases.
- **Data Compare** - Data Synchronization Wizard now includes a new sync option, Reseed identity columns. When selected, this option reseeds current values for identity columns and properly modifies the START WITH values for the IDENTITY columns.

Other tools from the dbForge for Oracle product line, such as dbForge Data Compare for Oracle, dbForge Schema Compare for Oracle, dbForge Compare Bundle for Oracle, dbForge Data Generator for Oracle, and dbForge Documenter for Oracle, were also updated with Oracle Database 20c support. 

Deep dive into the release news at https://blog.devart.com/connectivity-support-for-oracle-20c.html

Learn more about dbForge Studio for Oracle from this short video guide https://youtu.be/_zIv-_V563g 

**About Devart**

Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration and backup solutions. The company also implements Web and Mobile development projects.
The process of upgrading gems
Tags: rails, ruby, gems
Published: 2020-06-27 14:48:28

Through the years, I have contributed to various Rails projects, from huge Rails apps like [Skroutz.gr](https://skroutz.gr) to fresh Rails 6 projects like [Tefter.io](https://tefter.io) and I have come to the following rules regarding Ruby gems and their upgrade process.

1. Let [Bundler](https://bundler.io/) do its job. Do not use specific versions unless it is really needed.

2. If you want to set a specific version, be pessimistic. Use the [twiddle-waka](https://thoughtbot.com/blog/rubys-pessimistic-operator) operator. 

3. Do not host forked gems. Prefer to create PRs. If it is absolutely necessary to do this, set a goal to release your work to the public soon.

4. Be patient when new gem versions are released, except for security updates. Choose monthly or bi-monthly periods for updates and stick with them.

5. Use tools like Github's Dependabot alerts and protect your code as fast as possible. Better safe than sorry.

6. Do not update your gems blindly. Use tools like [gemdiff](https://github.com/teeparham/gemdiff) to inspect the changes or at least the commit messages. Try to get an idea of what changes will be introduced to your repo.
Is Golang duck typed?
Tags: go, ducktype, tip
Published: 2020-07-06 12:03:48

Hum... Not really!

It's a common misunderstanding because in fact it can relate to the duck type mantra:

> If it looks like a duck and quacks like a duck, it's a duck

We can achieve this effect [this way](https://play.golang.org/p/lT3ArkRd--4)

### Ok but what is the difference?

Well, the duck typing is resolved in runtime (ruby, python) while in Go it occurs in compile time.

Because of that, in Go it is called **structural typing**
(sometimes you'll find it named as signature-based polymorphism).
How to Use the Nord Colour Scheme in Windows Terminal
Tags: windowsterminal, nord, darktheme, ui
Published: 2020-07-06 12:03:17

This is my first post on DEV, I think, and it's a very brief one.

Nord is a popular colour scheme among developers due to its simplicity and darkness - and you can use it in Windows Terminal thanks to [Nigel Sampson](https://compiledexperience.com/blog/posts/windows-terminal-nord). However, his post only gives you the declarations for the scheme, and doesn't tell you how to use it. So here's how to use it!

# Windows Terminal Settings

Windows Terminal settings are written in JSON. It can be annoying to figure out where to put things. (Visual Studio Code Intellisense gives you suggestions and autocomplete)

So, how do you use Nord in the Terminal? Simple:

## Colour Schemes

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

Around **Line 53**, you should see an empty array called `schemes`. Copy-and-paste the object from Nigel's site, including the brackets (`{...}`), inside this array.

## Activating a Default Colour Scheme

Now you've added the colour scheme, you need to set it as the default. This is very easy to do. Around **Line 27**, there's an object called `profiles` - simply add the following to the `defaults` object: `"colorScheme": "nord"`.

## The Final Step

Save the file, and *Windows Terminal will update automatically*! Ta-da!

----

If you found this helpful, please leave a little Heart on the post (and check out [my blog](https://samcross.digital) for more like this)!
Daily Developer Jokes - Monday, Jul 6, 2020
Tags: jokes, dailydeveloperjokes
Published: 2020-07-06 12:00:08

---
title: "Daily Developer Jokes - Monday, Jul 6, 2020"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
cover_image: "https://private.xtrp.io/projects/DailyDeveloperJokes/thumbnail_generator/?date=Monday%2C%20Jul%206%2C%202020"
published: true
tags: #jokes, #dailydeveloperjokes
---

Generated by Daily Developer Jokes, a project by [Fred Adams](https://xtrp.io/) ([@xtrp](https://dev.to/xtrp) on DEV)

___Read about Daily Developer Jokes on [this blog post](https://xtrp.io/blog/2020/01/12/daily-jokes-bot-release/), and check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/).___
### Today's Joke is...
![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e1259b9b89f4.png)

---
*Have a joke idea for a future post? Email ___[xtrp@xtrp.io](mailto:xtrp@xtrp.io)___ with your suggestions!*

*This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit.*

<!-- 
Joke text:
___Q:___ What do you call optimistic front-end developers?

___A:___ Stack half-full developers.
 -->
Load/Eager Paths in Rails and why you should Care
Tags: rails, webdev, beginners, ruby
Published: 2020-07-06 11:28:43

---
title: Load/Eager Paths in Rails and why you should Care
published: true
description: To be careful when setting up load_paths in Rails. Expected file to define the class
tags: rails,webdev,beginners,ruby
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/3qx7uxlja21jan78kwax.jpg
---
Ruby has a way of letting it know where to find classes and modules and other constants - `$LOAD_PATH`. 

Rails adds some of its default directories like `app/controllers/*`, `app/models/*`, etc. to this path. It also allows you to append to this path by adding the directory or pattern to the magical configuration `autoload_paths` in `application.rb` or any of the environment files like `test.rb` or `production.rb`. This setting is often leveraged by gems to add files pertaining to the gem to the `$LOAD_PATH` for rails/ruby to be able to load them when required or instructed to - autoload vs eager load. There are tons of articles covering the autoload vs eager load part. 

Instead I would like to talk about a small issue I noticed when abusing the loadpath, sort of, and why following Rails' conventions become necessary.

Say, you have declared a model in the path `app/models/solution/article.rb`, and kept `app/models` in `autoload_path`, Rails through [ActiveSupport#safe_constantize](https://apidock.com/rails/ActiveSupport/Inflector/safe_constantize) will be able to load `Solution::Article` class. This is because `app/models/solution/` like all other subdirectories are part of the `$LOAD_PATH`.

When trying to load a top level class called `Article`, Rails will not be able to find it, because it simply does not exist.

Now, say, if you've added `app/models/**/*` in the `autoload_path` instead. This would flatten the paths so that everything is available globally. Now when `Solution::Article` is tried to be load, it's available like before. But if `Article` is attempted to be loaded, even that's available as `article.rb` is in the `$LOAD_PATH` and Rails will throw up an error saying `expected app/models/solution/article.rb to define the class Article`. 🤦‍♂️

Hence, it is always advisable to avoid using patterns like `**/*` for flattening load paths to make class definitions available. They tend to mess up how Rails resolves classes and constants and with Rails moving towards the faster and cleaner [Zeitwerk](https://guides.rubyonrails.org/autoloading_and_reloading_constants.html) library for auto/eager/reloading of classes and modules, it becomes imperative to follow clean class/namespace definition practises.
Easy peasy split the string
Tags: todayilearned, javascript, beginners
Published: 2020-07-06 11:16:39

The question is to split string in such a way that each element in the array has two characters and if the length of the string is odd then the missing character should get replaced by '_'.


Example: 
`input: "abc"`
`output: ["ab", "c_"]`


`input: "abcd"`
`output: ["ab", "cd"]`


So the single line solution is: 

```
const splitString2 = (str) => str.concat('_').match(/../g);
```

`String.prototype.match()` takes parameters as regular expressions object and returns an array whose value depends on presence and absence of `g` flag. The `g` flag returns all results matching the `regex`.


The dot(.) in regex represents any character except newline. Therefore, `/../g` represents two characters to match.  

Happy coding!