teleren/devto huggingface dataset:
Flutter and Me
Tags: flutter, dev, android, ios
Published: 2019-11-01 08:43:37

---
title: Flutter and Me
published: true
description: Advice 
tags: #flutter #dev #android #iOS
---

Hello devs ...So I applied to some marketing agency in my locality as a front end developer with specialization in react. I was called for an interview and then I was told they're currently need someone with mobile experience specifically flutter to work on their upcoming apps. 

My interviewer told me he was very much impressed with github repo page but he would like me to join them but will learn flutter since that was going to be their main stack for mobile apps.  I had to start learning right away and I could tell i  was making progress with it. Fast forward to three weeks of my stay , he asked me whether I could build a lock screen . The purpose of this is to display custom ads on them to customers. I told them  I could do it but I will take some time. I know somehow I could do it but  I just don't know how to go about this, to the execution. 

I feel like a fraud and sooner or later I will tagged as incompetent to serve as a developer in their company. 

Note: this happens to be my first developer role as I have never had any professional experience before and there is no other developer to look up to. It's all by myself.

Please I need some advice. What should I do?
8.7 Permutations Without Dups
Tags: javascript, algorithms, recursion, programming
Published: 2019-11-01 08:31:38

######**NB: This post is a part of the series of solving the challenges from 'Cracking The Coding Interview' book with JavaScript. I'll post only the challenges I've figured out on my own - and will try to describe my reasoning behind the solution. Any ideas on how to solve it differently or in a more optimal way are very welcome 😊**

_Write a method to compute all permutations of a string of unique characters._

I've approached this one by taking a specific example: finding all permutations of `123`. Permutations are all the possible combinations of elements, so from `123` we need to get the following ones: `123, 132, 213, 231, 312, 321` - 6 in total. Let's say we knew all permutations of a string of `12`, could we then somehow get the permutations of `123`? Sure!  See the drawing:

![Alt Text](https://thepracticaldev.s3.amazonaws.com/i/egtu2ln5k3ot49m9anee.png)

We know that permutations of `12` are `12` and `21` - and it looks like we just need to add _3_ to every possible position for each of those arrays in order to get out result 🎉(result should be all arrays in the pink circle). The transition from `1` to `12` works in a similar way: to get all permutations of `12` we just need to put `2` in all possible indices in the string of `1` - either before 1 (`21`) or after (`12`).

In Javascript this logic can be reflected by the following code:

```javascript
function getPermutations(str) {
  const lastIndex = str.length - 1;
  const lastChar = str[lastIndex];
  if (lastIndex === 0) { return [str]; }
  const prev = getPermutations(str.slice(0, lastIndex));
  return prev.flatMap(elem => {
    const result = [];
    for (let i = 0; i <= lastIndex; i ++) {
      const newElem = elem.slice(0, i) + lastChar + elem.slice(i);
      result.push(newElem);
    }
    return result;            
  });
}
```

With `getPermutations(str.slice(0, lastIndex))` we're calculating the permutations of a shorter string (string without the last character), and then mapping over the array of these permutations. Each element in the map  is then looped over, so that we could create a set of new strings with added last character. This way, for an element `12`, we would be able to return [`312`, `132`, `123`]. Finally, flatMap allows to return the result as one array - `[312, 132, 123, 321, 232, 213]` instead of `[[312, 132, 123], [321, 232, 213]]` - which is convenient for the next iteration of the recursion
Darwinism in Programming Language Proliferation
Tags: news, discuss, languagetheory
Published: 2019-11-01 08:23:00

A really interesting article was just published in _Computing and Software Science_ titled "The Next 7000 Programming Languages" (a play on Peter J. Landin's classic ["The Next 700 Programming Languages"](https://en.wikipedia.org/wiki/ISWIM), published in 1966).

The paper draws an analogy between popular programming languages and various species of plants trying to survive on a given patch of land. The article:

- likens climate change -- an external driving force which affects the diversity and suitability of certain species of plants -- to multi-core processors, which have recently filled a similar role for programming languages, encouraging multi-threaded programs and map-reduce pipelines

- views supported libraries, packages, and frameworks as symbiotes -- other plants and animals which help a given species to survive

- discusses how programming languages, like plants, fill particular niches, and although there may be languages that perform well in multiple environments (Scala is given as an example), as a general rule, there are no "universal" programming languages which work well in all niches

If you're interested at all in the history and development of programming languages, or where they're headed in the future, I definitely recommend [this article](https://link.springer.com/chapter/10.1007/978-3-319-91908-9_15). If you do read it, come back here and let's get a discussion going!

> [Cover image](https://github.com/stereobooster/programming-languages-genealogical-tree) by @stereobooster
O que não cabe na cabeça
Tags: cognition, writing, ptbr
Published: 2019-11-02 20:34:23

---
title: O que não cabe na cabeça
published: true
date: 2019-11-01 08:20:22 UTC
tags: [cognition, writing, ptbr]
canonical_url: https://buttondown.email/helder/archive/o-que-nao-cabe-na-cabeca/
---

Tem uma coisa parte óbvia e parte mágica que descobri esses tempos atrás. Chama-se “externalizar cognição”.

Aprendi o nome lendo o livro Teaching Tech Together, que é sobre ensino de programação. Excelente o livro, aliás, recomendadíssimo.

Esse é um daqueles casos em que você pensa “eu já sabia disso”, mas de alguma forma quando alguém dá um _nome_ pra coisa, as ideias relacionadas se aglomeram em torno daquele novo núcleo na cabeça, e ele vai atraindo coisas novas quando você aprende e relaciona com ele.

No caso, “externalizar cognição” é basicamente escrever e desenhar. Pegar algo que está na sua cabeça e botar pra fora no mundo físico de alguma forma que você possa olhar de fora. Aí você consegue juntar com outras coisas também externas, fazer relações, etc. que não faria antes. Você “reifica” o conceito, onde “res” é latim para coisa: é a coisificação do pensamento.

Por que isso ajuda? Um motivo é que a nossa memória temporária é limitadíssima. De acordo com estudos mais recentes, parece que a gente consegue lembrar de 4 a 6 “coisas” na cabeça de uma vez só. Palavras, números, conceitos pequenos ou grandes.

Aí como é que você pensa na sétima coisa e relaciona ela com a primeira? Não dá, porque para a sétima entrar alguma tem que sair. Ok, pode não ser sempre a primeira que sai, não é em ordem, mas a ideia é essa.

Um jeito de lidar com isso é o que chamam de _chunking_. A gente agrupa conceitos em abstrações de mais alto nível, e aí dá para pensar em “corpo humano” e ocupar só uma das 4-7 posições. Não dá para pensar em cada órgão individualmente tudo de uma vez.

Pra “chunkear” (agrupar) as coisas às vezes é preciso ver um monte delas juntas até a gente perceber algum padrão. Aí a gente usa papel, computador, pincel, etc. pra pôr as coisas pra fora coisificadas. Ainda dá pra prestar atenção em poucas de cada vez, mas aí elas não se perdem quando a gente tira o olho de uma e foca em outra. Dá pra ficar indo e voltando e traçando relações até sair a coisa que a gente está querendo pensar.

Meio óbvio né? Nada novo, também.

Esses dias eu estava lendo Pedagogia do Oprimido do Paulo Freire por indicação de uma amiga, e ele fala justo disso em relação à alfabetização. Bem bonito o jeito que ele descreve esse “despertar” que acontece quando você passa a conseguir ver seu mundo e a si mesmo em terceira pessoa, manipulá-los em símbolos, transformá-los, ver as diferenças entre o real e o reimaginado, e começa a pensar em como levar o que está ao que pode ser.

Por isso que escrever não é só pra dizer o que você já tinha pensado em dizer. É pra pensar o que não cabe na cabeça.
[0.2] Python for beginners introduction-2
Tags: python, webdev, beginners
Published: 2019-11-01 07:29:37

Lets continue with the discussion left in introduction-1.
     Go through Introduction-1 https://dev.to/mohit355/python-for-beginners-introduction-1-391p  so that this will be easy for you to understand.
so,lets continue

#Section-3   (general functions)

   1.String Concatenation
   2.How to take User input in python
   3.Int() function in Python
   4.More about variables
   5.split() method in Python
   6.Exercise for you
   
#Section-4 (string formatting)

   1. String formatting
   2. String indexing
   3. String Slicing
   4. Step Argument
   5. Exercise for you

#Section-5 (String methods)
  1. String methods
  2. Find and Replace Method
  3. Center Method
  4. String are Immutable
  5. Assignment operator
  6. Exercise for you

#Section-6   (conditions in Python)
  1. If Statement
  2. Pass statement
  3. If-Else statement
  4. Nested if-else
  5. And,Or Operator
  6. if-elif-else statement
  8. Exercise for you
  9. In keyword
  10. Check empty or not
  11. Exercise for you

#Section-7 (Looping in Python)
  1. While loop in Python
  2. Problem solving-1
  3. Problem solving-2
  4. Problem solving-3
  5. Problem solving-4
  6. Exercise for you-1
  7. Exercise for you-2
  8. Exercise-1 Solution
  9. Exercise-2 Solution
  10. Infinite loop
  11. For loop
  12. For loop Example-1
  13. For loop Example-2
  14. For loop Example-3
  15. Break and Continue keyword
  16. DRY principle of coding
  17. Exercise for you-1
  18. Exercise for you-2
  19. Exercise for you-1 solution
  20. Exercise for you-2 solution


I will continue this in next part  https://dev.to/mohit355/python-for-beginners-introduction-3-11k4

-> If you have any problem regarding this series then use the comment box . I will definitely reply you
🖐️ <Hi I'm Marc/>
Tags: introductionhelloworld
Published: 2019-11-01 07:03:26

Hey guys!

I've stumbled upon this realm and have been hooked. 

Everyday there's always something new to learn here.

I live in Singapore and if I'm not coding, I'm in some country traveling for fun.

My main language is VB.Net for both desktop and web.

I am currently mastering C# and .Net Core on my free time.

Nice to meet you :D
Learn JavaScript - Become a Zero to Hero
Tags: javascript, webdev, tutorial, beginners
Published: 2019-11-01 06:51:14

Become a Zero to Hero in JavaScript. Step by Step instruction & Multiple examples for better Understanding

If you are new to JavaScript or Want to explore your existing JavaScript knowledge, you are in the right place to move ahead.

Complete JavaScript Tutorial with Step by Step instruction and detailed examples. You can find that in my video I have used real-world example and tried to explain every chapter with multiple examples.

To become a successful developer, only watching will not make you master, you have to do the practice of each section from your side and move to the next chapter with your practice. If you do practice same time after complete the lecture, it'll easy for you to move ahead and helps to make you maser in JavaScript.

**What you’ll learn**
* How to Write JavaScript.
* How to Declare JavaScript Variables.
* JavaScript Operators
* Data Types of JavaScript
* Working with Date
* How to Create and use Functions
* Array and different methods of Array
* If / else if Conditions
* Javascript Object
* Events like onClick, OnBlur, onMouseOver, onMouseOut, etc
* Loops like For Loop, While, Do While
* Switch Statements
* Working with DOM (Document Object Model)
* Simple to Complex example to each section

{% youtube NMaRESBvs0g %}
Pitfalls of Vue's reactivity
Tags: vue, javascript, webdev
Published: 2019-11-01 06:51:12

My Vue views would sometimes refuse to automatically re-render. After slamming `Vue.$forceUpdate()` everywhere in my codebase, I decided enough was enough and dove into Vue’s reactivity system.

[View the post here](https://medium.com/better-programming/pitfalls-of-vues-reactivity-21a5f24ceb38?source=friends_link&sk=a4a86272d6d6772114c09755373d335e)
[0.1] Python for beginners Introduction-1
Tags: python, beginners, webdev
Published: 2019-11-01 06:50:08

Hello Friends,
                I am going to start Python tutorial for Beginners. It will cover every aspect of the python from beginners to advanced level.

So, start learning and keep learning.

#What will covered in this tutorial


  #Section-1
   1. Python2 vs Python3
   2. Download and install Python 3.x  (x be any number)
  
  #Section-2
         1. Python basics
            -> Print function
            -> Comment in python
            -> Escape sequence
            -> Raw String
         2. Python as a Calculator
         3. Variables in Python

Next in Introduction-2 link is https://dev.to/mohit355/python-for-beginners-introduction-2-1ng7
Getting Started as a Self-Taught Engineer
Tags: beginners, codenewbie, career, books
Published: 2019-11-01 00:18:34

---
title: Getting Started as a Self-Taught Engineer
published: true
description: Seventy pages about my personal journey from art school graduate to software engineer with takeaways and advice
tags: beginners, codenewbie, career, books
---

![Foot in the Door Social Media Image](https://www.multimedia-minds.com/wp-content/uploads/2019/10/Foot-in-the-door-2.png)

I made this book as a resource I wish I had when I was starting out. I was inspired to start writing the book about a year ago but originally was going to write a book detailing my entire tech career. This turned out to be an overwhelming task because I've job hopped many times. 

Fast forward to the beginning of October and I found out about the [Just F*ing Ship It Challenge](https://womenmake.com/just-ship-it-challenge-2019) sponsored by [Women Make](https://womenmake.com). It occurred to me that I could shorten the book and just write about the beginning of my tech journey getting my foot in the door, rather than needing to cover every single job I've had. 

There are so many resources out there for learning to code, but what about maintaining motivation and persistence during the hard times? It's easy enough to google different technologies but what about figuring out which courses are right for you and your learning style? These are the types of things I tackle in the book.

Honestly I still feel like there is so much more to say. **Being a woman with an arts background I experienced a great deal of imposter syndrome, self doubt, and anxiety during my transition**. I hope this book helps other non traditional folks enter the tech field feeling like they have more resources at their disposal. If I managed to do it, I believe with determination and patience you can do it too!

##[Get the book now on Amazon!](https://www.amazon.com/dp/B0813XNFNF)##
How do I can share my work?
Tags: machinelearning, python
Published: 2019-11-01 06:33:23

Hello everyone! Im currently learning deep learning and working on Image Segmentation task. Because on the way of doing that task, I tackled a lot problems and think that others maybe tackle the same as mine. That made me want to start a blog about building a deep learning model to solve a particular problem. But I dont know what is the possible way to start a blog and can earn some lunch fee on the other hand. What do you guys think about it, I need your guys advice!
"gradle migrateToAndroidX" - beta testers needed
Tags: android, showdev
Published: 2019-11-01 06:14:18

Hello Android devs,

I am looking for beta testers / early adopters for a new project I have been working on together with LouisCAD.

We want to provide a **reliable, simple, fun way to migrate an old Android project using the support libraries to AndroidX**.

## Why?

There are [hundred of thousands of projects that are still using "com.android.support:appcompat-v7" and friends](https://github.com/search?q=com.android.support%3Aappcompat-v7+filename%3Abuild.gradle&type=Code&utf8=%E2%9C%93) which are **not supported** anymore.

The Android team asked everyone to migrate to AndroidX instead, but in our opinion they have fucked up the migration story part of it. Which creates a big mess for app developers and library authors.

In theory, all you have to do is to use the menu entry:

   **Refactor > Migrate to AndroidX**

In practice, our experience was waiting minutes with an unresponsive IDE, then giving up with no other choice than force closing Android Studio, and finally getting a broken project, with some dangling fully qualified references (instead of proper import replacement). 


## What does it look like?

```bash
$ ./gradlew migrateToAndroidX

## Checking that you use compileSdkVersion 28
✔ 🆗 You are using compileSdkVersion 28

## Migrating classes from support libraries to AndroidX.
✔ 🆗 Parsing file androidx-class-mapping.csv
✔ 🆗 Modules: [Application]
✔ 🆗 Found 18 source files that may need migration
✔ 🆗 File androidx-class-mapping.csv parsed correctly
✔ 🆗 Starting batch migration...
Migrating file "CameraActivity.java" … overwriting file…  Done. ✔🆗
Migrating file "Camera2BasicFragment.java" … overwriting file…  Done. ✔🆗
Migrating file "build.gradle" …
✔ 🆗 2 source files (kt,java,xml) have been migrated (16 didn't need it).
✔ 🆗 0 gradle files have been migrated (1 didn't need it).

## Detecting Gradle properties
✔ 🆗 gradle.properties already contains [android.useAndroidX, android.enableJetifier]

## Your turn: add the AndroidX libraries to app/build.gradle

// app/build.gradle
dependencies {
    implementation(AndroidX.legacy.supportV4)
    implementation(AndroidX.legacy.supportV13)
    implementation(AndroidX.cardView)
    implementation(AndroidX.appCompat)
}
```

## I am in! What do you need?

To make the project **reliable**, we need people willing to beta test it once we make it available. 

You may have a project that needs to be migrated, or that you have migrated already but you can find the commit before in the commit history.

If you are interested, please inform us by leaving a comment.

If you follow us here, we can reach you via https://dev.to/connect


{% user jmfayard %}

{% user louiscad %}
Stream 10/31/2019 - Successful Rails 6 Upgrade
Tags: devjournal, blog
Published: 2019-11-01 05:52:36

### Check Out the Stream @ [https://twitch.tv/talk2megooseman](https://twitch.tv/talk2megooseman)


# Today Objective

- [x]  What to call today's log
- [x]  Review last streams TODOs
- [x]  Fix a bug with showcase page timing out on occasion
- [x]  Add in Sentry to our application for error monitoring
- [x]  Continue upgrade Rails journey

# Notes

- Found out the root cause for the showcase page on stream-cc erroring out. It turns out that I reached a breaking point when there are A LOT of streamers that have the extension installed. So when I am requesting stream information for those channels that are living using it, I am exceeding the single length of a request causing a 404 to Twitch. Neede to add chunking for requests so I don't try to grab ALL of the channels at once.
- While going through the gems that need to be upgraded. I noticed the talk_like_a_pirate gem 0.2.2 version had not been released yet so I filed an issue [https://github.com/stevehodges/talk_like_a_pirate/issues/7](https://github.com/stevehodges/talk_like_a_pirate/issues/7)
    - The maintainer seems responsive since he had merged my pull request so hopefully, they get around to this soon.
- Successfully upgraded our app to Rails 6
    - Followed the guide on the Rails site [https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-5-2-to-rails-6-0](https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-5-2-to-rails-6-0)
    - Also ran `rails app:update` and checked for any new changes in the configs

# Shoutouts and Thanks

- Kilmon007
    - For coming by and saying hi and enjoying stream cc extension
    - For their very first SUB!!!

# Future action items

- [ ]  Keep eye on: [https://github.com/stevehodges/talk_like_a_pirate/issues/7](https://github.com/stevehodges/talk_like_a_pirate/issues/7)
- [ ]  Need to resolve test failures
Angular cheatsheet + interview questions
Tags: angular, typescript, tutorial, opensource
Published: 2019-11-01 05:52:12

Sometimes we learn something about new technology and then forget it because we didn't use it. That's why I've created cheatsheet for my students and I made it public for you. Basically, it is what you need to know to use Angular + a few interview questions. Feel free to use it and contribute 🤓

https://github.com/delprzemo/angular-cheatsheet
Why FireO is important for Google Firestore 
Tags: firestore, firebase, orm, python
Published: 2019-11-01 05:19:15

FireO make life easier for developers when you are working with Google Firestore. Now using FireO you can create models and operate Firestore operation easily. 

Read More how FireO useful [FireO Doc](https://octabyte.io/FireO/)

Appreciate our work by giving stars to [FireO](https://github.com/octabytes/FireO)
Scope in scope Angularjs [#2 Scary Code]
Tags: scarycode
Published: 2019-11-01 14:28:17

---
title: Scope in scope Angularjs [#2 Scary Code]
published: true
date: 2019-11-01 05:01:24 UTC
tags: Scary Code
canonical_url: https://boobo94.xyz/scary-code/scope-in-scope-angularjs/?utm_source=rss&utm_medium=rss&utm_campaign=scope-in-scope-angularjs
---

```js
scope.scope.isValid = true;
```

Today I have something cool for you. Except that I don’t like Angular.js, because are other options better than it out there. But this is so amazing to me. To declare a scope in scope, wow! So nice <3, enjoy it!

If you want to know more about Angular.js or Scope I invite you to the [official documentation](https://docs.angularjs.org/guide/scope).

Remember, this is a series with scary code, so if you wanna see the complete list, you can [do it here](/scary-code/)

The post [Scope in scope Angularjs [#2 Scary Code]](https://boobo94.xyz/scary-code/scope-in-scope-angularjs/) appeared first on [boobo94](https://boobo94.xyz).
Dynamic Arrays
Tags: computerscience, algorithms, datastructures, csharp
Published: 2019-11-01 04:31:26

## Resources

1. [Dynamic arrays overview](https://www.interviewcake.com/article/python/data-structures-coding-interview#dynamic-arrays)
1. [Dynamic arrays overview and implementation](https://brilliant.org/wiki/dynamic-arrays/)
1. [Dynamic arrays implementation](https://www.geeksforgeeks.org/how-do-dynamic-arrays-work/)

Takeaways:

* Dynamic Arrays resize when they reach capacity, usually by doubling.
* Dynamic Arrays, for insertions, have a worse case Big O of `O(n)` (linear). But due to doubling, the amortized* time complexity of Dynamic Arrays is `O(1)` (constant).
* A Dynamic Array's space complexity is at worst `O(2n)` (immediately after doubling), with `O(n)` being wasted space (the empty half of the array). [Note: `O(2n)` in Big O is _reduced_ to `O(n)`](https://stackoverflow.com/a/19371607) - therefore the space complexity of a Dynamic Array is `O(n)`.

*Another way of saying _average_. [Per Wikipedia:](https://en.wikipedia.org/wiki/Amortized_analysis)

> amortized analysis considers both the costly and less costly operations together over the whole series of operations of the algorithm

[Per Brilliant:](https://brilliant.org/wiki/amortized-analysis/)

> Often, a data structure has one particularly costly operation, but it doesn't get performed very often. That data structure shouldn't be labeled a costly structure just because that one operation, that is seldom performed, is costly.
>
> So, amortized analysis is used to average out the costly operations in the worst case. 

Here's the finished implementation with test code:

{% gist https://gist.github.com/jbolton209/eec647a73c365b795b72063fb2efe8d7 %}

If you found any errors in this post, please let me know!