teleren/devto huggingface dataset:
About Sage-Code
Published: 2020-12-29 23:56:43

#About us

Sage-Code community is open and distributed. We work and study from home or private offices. Our website is safe, clean and very secure. To make this possible we don't collect any data from our members and we don't send you any e-mail. Instead we use popular social media platforms. Our followers are our members.

##Activity

We practice our skills by making exquisite projects with diverse programming languages. If you like our activity, feel free to join us and chat on your favorite platform. We look forward to meet you on-line! Don't stress yourself and have some fun, life is awfully short!

##Products

Our website is hosting two courses. One is about Software Engineering and second is about Programming Languages. Both courses are optimized for second monitor on portrait mode. That is a vertical screen. It is based on idea that mobile devices are more taller then wide and you want the documentation on a tablet or on your second monitor. Our articles are add free and there is no log-in required to read them.

##Languages

We teach following languages: {HTML+CSS, JavaScript, SQL, Dart, Python, Ruby, Julia, Go, PHP, Rust, C, C++, Java, Scala}. In the future we will probably add more but for now we cover these 14 languages.

##Performance

We strive for performance. Our website is design to be super fast. We use to have a slow WordPress website but we have optimized the performance by making a static website with Bootstrap and SVG diagrams. We have quit using WordPress and we are very happy. This enable you to visualize our diagrams on any device at optimal resolution with virtual instant access. No delays and no interruptions for our honorable visitors.

##New members
You can join if you are a developer or wish to become one. Links to our social platforms are on the website main page at the bottom. We are using: Discord, GitHub, Twitter and LinkedIn but now we are also using dev.to so you can connect with us but you need a secret invitation. So contact us for a short interview on Twitter or on Discord. Then after we check who you are we invite you in. 

Enjoy learning and Have some fun: [Sage-Code Homepage](https://sagecode.net)
What does an Engineering Manager do?
Tags: career, productivity, techtalks
Published: 2020-12-30 08:41:02

---
title: What does an Engineering Manager do?
published: true
date: 2020-12-29 23:45:21 UTC
tags: career,productivity,techtalks
canonical_url: https://www.notonlycode.org/what-does-an-engineering-manager-do/
---

In this video I'm talking abouet engineering management - who is an engineering manager? What does an engineering manager do? Do engineering managers write code? After a short walk around Amsterdam I'm going to tell you about different hats that engineering managers need to wear depending on kind of a company they work for.

{% youtube FU2dT-amY-o %}

In the video I mention article by Pat Kua that I highly recommend: 📝 [https://www.patkua.com/blog/5-engineering-manager-archetypes/](5 Engineering Manager Archetypes)

If one day you want to become an engineering mananger you might be interested in following books:  
📚 Leading Snowflakes by Oren Ellenbogen - [https://leadingsnowflakes.com/](https://leadingsnowflakes.com/)  
📚 The Manager's Path by Camille Fournier - [https://www.goodreads.com/book/show/3...](https://www.goodreads.com/book/show/33369254-the-manager-s-path)  
📚Management 3.0 bu Jurgen Appelo - [https://www.goodreads.com/book/show/1...](https://www.goodreads.com/book/show/10210821-management-3-0)

🎥 Video timeline 🎥  
[0:00](https://www.youtube.com/watch?v=FU2dT-amY-o&t=0s) Intro and walk around Amsterdam  
[2:00](https://www.youtube.com/watch?v=FU2dT-amY-o&t=120s) 4 hats engineering managers wear  
[5:09](https://www.youtube.com/watch?v=FU2dT-amY-o&t=309s) What does it mean to manage people  
[9:25](https://www.youtube.com/watch?v=FU2dT-amY-o&t=565s) Where is the engineering in engineering manager?  
[12:04](https://www.youtube.com/watch?v=FU2dT-amY-o&t=724s) Outro
🛡Managing Third-Party Assets Security Risks in Your Web Apps 🧩
Tags: security, apps, risk
Published: 2020-12-29 23:29:50

👤💬 How to manage third-party assets in order to mitigate security risks while developing and maintaining your web application.
[Read more](https://auth0.com/blog/third-party-assets-security-risks-management/?utm_source=content_synd&utm_medium=sc&utm_campaign=sec_risks)
#30daysofelm Day 13: Simple line chart
Tags: elm
Published: 2020-12-29 23:03:37

This is day 13 of my [30 day Elm challenge](https://dev.to/kristianpedersen/30-days-of-elm-intro-2lo2)

Code/demo: https://ellie-app.com/bWyj9j52r9ca1

![Simple line chart visualizing next binary number with same number of 1 bits](https://dev-to-uploads.s3.amazonaws.com/i/zoelu9pz5nixaeufsbzb.png)

# Background

Yesterday's project was about finding the next number with the same number of 1 bits as the current number `n`.

42 (101010) -> 44 (101100)
43 (101011) -> 45 (101101)
44 (101100) -> 49 (110001)
45 (101101) -> 46 (101110)
...

As you can see, the results jump up and down a bit, and I wanted to visualize it within a given range.

I've seen [terezka/line-charts](https://github.com/terezka/line-charts) referenced a few times, so I just went with that one.

Today is a lazy day, which can be nice sometimes. Below is the new part of the code, with hardcoded numbers, while the rest is described in [yesterday's project](https://dev.to/kristianpedersen/30daysofelm-day-12-elm-binary-4ijc):

```elm
getNextNumbersFromRange : List Point
getNextNumbersFromRange =
    List.range 0 100
        |> List.map
            (\index ->
                { x = index |> toFloat
                , y =
					-- This is the part that shows the data
                    getNextNumberWithSame1Bits index
                        |> binaryToInt
                        |> toFloat
                }
            )


type alias Point =
    { x : Float, y : Float }


chart : Html msg
chart =
    LineChart.view2
        .x
        .y
        -- First line
        getNextNumbersFromRange
        -- Second line
        (List.range
            0
            100
            |> List.foldl
                (\val acc ->
					-- Only add index to the accumulator if the number is divisible by 10
                    if modBy 10 val == 0 then
                        val :: acc

                    else
                        acc
                )
                []
            |> List.map toFloat
            |> List.map
                (\v ->
                    { x = v
                    , y = v
                    }
                )
        )


view : Model -> Html Msg
view model =
    div [] [ chart ]
```
🔑 CAPTCHA Can Ruin Your UX. Here’s How to Use it Right
Tags: captcha, security, ux
Published: 2020-12-29 22:40:15

🖥 How CAPTCHA technology got to this point, and why it’s not going anywhere.
[Read more](https://auth0.com/blog/captcha-can-ruin-your-ux-here-s-how-to-use-it-right/?utm_source=content_synd&utm_medium=sc&utm_campaign=captcha_ux)
Help With Mongoose
Published: 2020-12-29 22:30:28

Hello All,

I am running into this warning that is driving me crazy. 
Here is the warning: 
```
(node:38419) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
(Use `node --trace-deprecation ...` to show where the warning was created)
MongoDB Connect: *************.zzkco.mongodb.net
```

and here is my code:
```javascript
const mongoose = require('mongoose');

const connectDB = async () => {
    try {
        mongoose.set('useUnifiedTopology', true);
        mongoose.set('useNewUrlParser', true);
        const conn = await mongoose.connect(process.env.MONGO_URI)
        console.log(`MongoDB Connect: ${conn.connection.host}`)

    } catch (err) {
        console.error(`Error: ${err.message}`);
        process.exit(1);
    }
}

module.exports = connectDB
```

Any help that you can offer is appreciated!
I created a music quiz and it's awesome
Tags: react, showdev, webdev
Published: 2020-12-29 22:19:51

*Tl;dr: If you are a Spotify user, go to [spotiquiz.com](https://spotiquiz.com) and check it out (I have no tl;dr for the Spotify-agnostics, sorry...)*

#The idea
Let's start here with an idea that I had for a while. Create something cool and learn new tools to do it. This app will be a part of my portfolio and I want it to be useful, easy to use and well... cool. Do people like to play quizzes they find on the Internet? I think so. *Sporcle.com* creators probably know something about it. Music quizzes? Probably. (Hey, Sporcle, you're missing out here, by the way.) How about music quizzes with the songs the user actually listens to...?

![](https://media.giphy.com/media/3ELtfmA4Apkju/giphy.gif)

Picking the tools was rather easy. Spotify WebAPI gives user access to playlists, album covers and songs previews. What else would I need? A Spotify account? Luckily enough, I'm a user. By the way, if you are looking for an API to play with or learn how to use them, I would highly recommend this one. It supports four different ways of authorization and gives a pretty vast set of requests to choose from. 

What's next? I felt like I didn't need backend for this app and I could make it a client-side app. I figured React would be something I could utilize here and I wasn't wrong. It's been a journey to understand the concept and learn the basics, but from there it started to be fun with a splash of frustration from time to time. I've been using a course on Udemy to understand and learn React. I'm leaving a link [here](https://www.udemy.com/course/react-redux/) if you're interested.

Combining these three together (idea of a music quiz, Spotify WebAPI and React) I created an app I've called SpotiQuiz. The link is on the top, the code is on the bottom. I hope you give it a try and have a lot of fun.

![Gameplay](https://dev-to-uploads.s3.amazonaws.com/i/z395iufpekqt7e4pvi3f.png)

#Is it cool?
You let me know! I think it is, but I guess I'm biased, so I'll gladly take good reviews, bad reviews, hints what to change and where to upgrade.

![SpotiQuiz logo](https://dev-to-uploads.s3.amazonaws.com/i/ly25hawz0e0edi6w8c0z.png)

Find my code on GitHub: {% github https://github.com/lwolczynski/Spotify-Quiz-v2 no-readme %}
I want to create a mobile playing card game...where to start?
Tags: mobile, game
Published: 2020-12-29 21:50:35

I have an idea for a mobile playing card game that I would like to develop.  I'm a seasoned business application developer, mostly C# and JavaScript on the desktop and web, and generally work in Visual Studio.  I've never done anything specifically mobile (other than responsive websites) and I'm not sure where to start.

It's not going to require a complicated user interface...maybe some animated cards or dice or such thing, but certainly not 3D action.

Do I start with one platform or plan for cross-platform from the beginning?  I don't own a Mac, so I don't think I can do native iOS development (might be wrong on that?).

Where do I start?
LGTM Devlog 7: Creating a Firebase project
Tags: devjournal, github, git, serverless
Published: 2020-12-29 21:13:42

Here we go, new project incoming!

![Creating a new Firebase project](https://dev-to-uploads.s3.amazonaws.com/i/09o20kezty5xct1fwujx.png)
(not the real project ID)

# Post-creation steps
Creating a Firebase project is straightforward. But there's a few steps that need to be done right after doing that to prepare for some dev work.

## Installing/updating the Firebase CLI
Working with Firebase requires using the [CLI](https://firebase.google.com/docs/cli) for it. I need to grab the latest version of it, so I fire up a terminal (I'm using Windows Terminal, and WSL) and grab it with `npm install -g firebase-tools`

![CLI istallation](https://dev-to-uploads.s3.amazonaws.com/i/7f86zt9yf08anx1wnouj.png)

Next, I just do a `firebase login` to log in and make sure I have access to the project.

## Upgrading billing
One of the reasons I recommend Firebase so much for anyone who wants to host a serverless project (such as people making websites in Vue/React and need a login system and databases), is that the free tier is truly excellent - the free limits are very generous (you can see them [on their pricing page](https://firebase.google.com/pricing) ).

However, I need to access the rest of the Google Cloud projects, since I intend to use services like Cloud Tasks. So I will need to upgrade my account from the free one to the pay-a-you-go one sooner rather than later.  Fortunately, this plan still has access to the free tier, so I'd only be paying what I needed (which isn't much).

![Upgrade Billing](https://dev-to-uploads.s3.amazonaws.com/i/w0zh6q5rqsqyuu3wxfw1.png) 

At the same time, I will set up some billing alerts just to keep an eye on things.

## Getting a CI token
I like to be able to deploy stuff simply by making a git commit. This is the job of CI/CD, which I'll set up later, but in the mean time since we're here setting up the Firebase project, I will go fetch the CI token, a small secret token that allows the bearer to make deployments without logging in.

There's a small wrinkle in the plan though: Firebase doesn't have a very good access control: You can't add service accounts that have access to Firebase-specific features like updating the hosting, like you can with Google Cloud proper. Instead you have to use a personal CI token. I don't really like this idea because a personal CI token gives deploy access to ALL of the firebase projects associated with that account, so exposing the token to unauthorized use could potentially impact everything. So, I will have to go about the circuitous route of creating a new GMail account first, adding that to the project with limited permissions, and then fetching a CI token for it. I _think_ it's these two permissions I'll need, but I'll find out later when I try it.

![IAM permissions](https://dev-to-uploads.s3.amazonaws.com/i/0x1g0eazqyvhtc7bepmj.png)

Finally, running `firebase login:ci` and using this new GMail account for logging in, should give me a CI token that only has the permissions I assigned it.
Commiting myself: Starting the 100DaysOfCodeChallenge
Tags: beginners, 100daysofcode
Published: 2020-12-29 20:55:22

Hi, my name is Bernardo Torres. I'm 23 years old from Mexico and I 'm studying Software Engineering.

When I started studying SE I was really exited to learn programming, but after 3 years of studying I feel like I don't know anything about programming and that's mainly because I have a lot of theoretical and non-coding related subjects and I haven't learned anything by myself.

My goal is to become a Software Engineer at a FAANG company, so I have decided to start learning to code by myself. I took this decision in march, when quarantine started, but I have struggled a lot on building the habit of code and learn every day. That's why I decided to start the #100DaysOfCode challenge.

## Starting the challenge  
I feel like having the commitment of sharing publicly my progress is going to help me on building this habit. 

## Plan

My plan is to tweet my progress every day on twitter and to post an article here every 10 days to make a rewind. 

### What am I gonna learn
**From zero**

1. Python
  1.2. Flask
  1.3. Django

2. Javascript
  2.1. Vue

3. Linux

**Improve**

4. HTML/CSS

5. Git

7. English

## Conclusion
I'm making this to build effectivly a good habit and to improve my english thru writting articles and interacting with people on twitter.

I'm fully concious that after 100 days of code I'm just gonna know the basics and the journy is still long.
TermiNetwork networking library for Apple platforms
Tags: ios, swift, opensource, mobile
Published: 2020-12-29 20:53:15

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/hebnwvxlk085qchkn08d.png)
TermiNetwork is a zero-dependency networking solution for building modern and secure applications for Apple platforms. (iOS, watchOS, macOS, tvOS)

Itis designed to provide automatic deserialization with Apple’s Codables and flexible configuration, as well as some advanced features like Certificate Pinning, Interceptors and Mock responses.

### GitHub
https://github.com/billp/TermiNetwork

### Features
- Multi-environment setup
- Model deserialization with Codables
- Choose the response type you want: Codable, UIImage, Data or - String
- UIKit/SwiftUI helpers for downloading remote images
- Routers
- Transformers (convert rest models to domain models)
- Error handling
- Interceptors
- Mock responses
- Certificate pinning
- Flexible configuration
- Middleware
- File/Data Upload/Download
- Pretty printed debug information
My Learning Journey In 3 Weeks.
Tags: beginners
Published: 2020-12-29 20:51:39

I recently signed up Codecademy to be a Full Stack Engineer, The first few lessons were manageable till i struggled with Javascript. But i did not give up. I also signed up for GitHub Education as i am a 18 years old student. Thank you GitHub for the perks to kickstart my journey. Here i am writing my first post on Dev. Hopefully i would finish my full stack developer course in 2021. 

Currently during Covid-19, I made full use of my time to learn to be a developer. Im working as a part-time at Pizzahut serving customers and i enjoy making pizza. I just bought my personal domain at namecheap.com and I hope to make a beautiful portfolio website. I'm also interested learning JAMStack like Next.js
Day 1 of 7 days of VIM challenge
Published: 2020-12-29 20:12:38

Heyy,

I started today(29.12.2020) the 7 days of VIM challenge where I'm only allowed to use VIM as my text editor. 

Why am I doing this? Because I wanted to learn VIM and I want to feel like a pro programmer. Now I will talk a little bit about that project and what I have done today with VIM.

Today I mostly edited my config so I can work perfectly with VIM also I learned some important hotkeys. Most of the time I'm editing Typescript and Javascript code. It was quite tricky to not close my Terminal I'm working on. Mac OS has a Keyboard shortcut that closes the current Windows you are focusing on, the shortcut is <kbd>Command</kbd> + <kbd>w</kbd>. After I closed my Terminal three times in 5 minutes I was quite annoyed so I started to click key by key and not so fast, after a while I started to feel confident with the shortcuts so I started to type faster again. At this time I haven't installed any plugin manager or a autocomplete plugin so after searching for a plugin manager I installed plug. Why did I install Plug? I don't know it was easy to use and all videos I watched used it. After 2 hours my VIM started to lag a little bit and stopped working when I'm typing a round bracket so I was looking for a solution but didn't found one, so if you know you please let me know :D.

So this was mostly the first day of the challenge and I started to like VIM. Here you can find my current [.vimrc](https://gist.github.com/zunamidev/78b1b505d8a4aa1045748b8e04623b0e) If you want to join this challenge use the hashtag #7daysOfVim

Thanks for reading stay tuned for the second day :)
GitLab: You cannot push commits for 'repo' You can only push commits that were committed with one of your own verified emails
Tags: git, github, gitlab
Published: 2020-12-29 20:03:13

If you are like me having multiples git accounts on sourceTree, working with multiple Version Control Provider like GitLab and Github etc. You may cloned a repo with one git account but accidentally commit something with another git account that does not have write access to the cloned repo. 

Hell break loose, you're gonna get error like the following:

```
GitLab: You cannot push commits for 'email_without_access@mail.com' You can only push commits that were committed with one of your own verified emails
```

Tried many times to re-configure your credentials on sourceTree properly but still failed to push? It is because your previous commit is done with an unverified account (without access right to the repo). In this case you need to reset the previous commit to the other author & committer with access right.

###2 Steps to achieve that, here we go:

1) `git commit --amend --reset-author --no-edit`

2) `git -c user.name="Your Name" -c user.email=email_acct@with_repo_access.com commit --amend --reset-author`

Go to sourceTree and view the last commit again, author and committer name should change, now click push and you are good to go :) Please note that it only works for most recent commit. If you have multiple commits with wrong committer, you may stop reading from here.


##Trouble shooting: 

###(1) Is your git account has 2FA turned on?
If you are on 2FA, make sure you create [personal access token](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#creating-a-personal-access-token) on GitLab or [GitHub](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token) and use that as password while sourceTree prompts you for password

###(2) SSH or HTTPS path for remote git destination?
run `git remote -v` to see your remote origin path, it should display your current settings:
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ki3tuuehf87du96d3y95.png)

If you are on SSH and want to try HTTPS,
run `git remote set-url origin https://gitlab.xxx.xxx.com/digital-office/applications-portals/mobile-application/sunshine.git`

HTTPS path format works for me for both `fetch` and `push` as long as above config are set up correctly.

###(3) If you are obligated to use SSH, please make sure you set them up properly, see tutorial: 

GitLab: https://docs.gitlab.com/ee/ssh/#adding-an-ssh-key-to-your-gitlab-account

GitHub: https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
Starting at backend development [part 1]
Tags: node, javascript, express, programming
Published: 2020-12-29 19:56:44

*Hello everyone, in this article I will introduce you to node.js development, focused on backend development.*

*In these series of articles we will be able to learn basic concepts that will let us achieve tasks as creating simple applications.*

*Let’s get started with a little introduction of node.js.*

## **What is backend development?**
Backend development refers to server-side development.
Web development is divided into two big concepts: frontend, and backend. To give you a general idea, frontend development is meant to be what we see when we visit a web page and it includes all graphical resources; on the other hand, backend development contains the business logic.

E.g. Login system from facebook, or uploading video process from Tiktok, the system that carries with all that logic is called backend.

Ready to go more deep in?

## **What is node.js?**
Node.js is an Asynchronous event-driven Javascript runtime. But, what does it means? Well, let's go step by step.

**1. Runtime? Mmm, what is it?**
Runtime provides the environment in which programs run.
This environment may manage how the program uses the memory, or how it interacts with the operative system.

**2. Asynchronous?**
Normally, a given program's code runs straight along from top to bottom, running only one thing at once. Imagine you have a function that execute a process that takes time, your whole program will be stopped until your function finishes its process.

This isn't very useful because the user will have to wait a lot of time! and your program may crash if there are many people requesting something at the same time.

So, how can we avoid that? Asynchronous programming is the answer!

**3. Event-driven**
Is a programming paradigm in which the flow is determined by events, such a user interaction (like clicks), sensors, HTTP methods, etc.
There's a main loop that listen to an event, and then triggers a callback to handle it.

We will discuss these topics deeper afterwards, for now it is enough for us to know them in general terms.

*In the next chapter we're going to learn more about node.js in web development, its use and its potential as Javascript technology.*


Here my [twitter](https://twitter.com/RsSpaghetti?s=09) account.
And here my [github](https://github.com/alejandro0619)