teleren/devto huggingface dataset:
How to enable Chrome's Hidden Bottom Toolbar in Android
Tags: google, chrome, trick
Published: 2020-02-25 21:35:12

I want to share an amazing trick with you that I found today on the internet.

You must have felt it very difficult to reach the Google chrome browsers options and settings in mobile device as it is present at the top of the browser which is very hard to reach with your fingers in big screen mobile phones.

Good news, there is a trick using which you can enable a toolbar at the bottom of your browser so that you can access options like switch tab, search and share easily.

>Note- I have done this in my Android phone only so I'm not sure if you can do the same in IOS.

Here's how you enable this hidden bottom toolbar-

### Step 1:

In your chrome address bar type the following path-

```
chrome://flags 
```

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/12gll86r6wepfnfrsopn.jpg)

### Step 2:

Search for “Duet” in the search bar.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/8saod8twp4uwi58hs4l6.jpg)


### Step 3:
Tap the drop-down menu next to “Chrome Duet” and select any one of the button configuration you want from the drop-down menu.

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

### Step 4:
:tada: Now restart your browser and enjoy the new bottom toolbar.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/a8oaun9hc5bm9s6wf9ka.jpg)
Why enumerate?
Tags: python, beginners
Published: 2020-02-25 21:21:31

This post will discuss the <a href="https://python.org">Python</a> <a href="https://pythonbasics.org/enumerate/">enumerate</a> function quickly. Python is known to make code readable and using enumerate will make your code more readable. 

## Simple loops

Loops let you repeat lines of code, the most common being for loops and while loop. If you have previous experience with <a href="https://pythonprogramminglanguage.com/for-loops/">for loops</a>, you may be inclined to use an index (i) on the array.

```python
>>> array = ['a','b','c','d','e']
>>> for i in range(len(array)):
...     print(array[i])
... 
a
b
c
d
e
>>> 
```

If you have been programming during the C++ days, you may even be inclined to do something like this:

```python
>>> i = 0
>>> while i < len(array):
...     print(array[i])
...     i = i + 1
```

This is overcomplicated. Python is mucher easier

## How to use enumerate

This works, but it's not Pythonic. Instead `enumerate` makes this more readable (It's also easier to code).

The enumerate function takes an iterable (<a href="https://pythonbasics.org/list/">array</a>) and for each element gives the value and index.

```python
>>> array = ['a','b','c','d','e']
>>> for index, item in enumerate(array):
...     print(item)
... 
a
b
c
d
e
>>> 
```

Much better! You get the index as well as the element, without having to keep track of the index variable.

The `enumerate` function works on arrays (lists) or other types of sequences like tuples, strings etc.

```python
>>> array = [ 1,3,2,6,3,9,4,12,5,15,6,18,7,21,8 ]
>>> for index, item in enumerate(array):
...     print(item)
... 
```

So `enumerate` is a very useful function that makes programming a bit simpler.
Udacity Full-Stack Nanodegree Journey
Tags: webdev
Published: 2020-02-25 20:55:56

Hey, this is my first post. I'm sure I'll post about other things, but I thought a great way to start on this platform is to document my journey through Udacity's Full-Stack Nanodegree.

I'd like to preface all of this by saying I have CS degree and some experience in the software engineering already. Currently, I do a lot of front end work in TypeScript and React at my job with some back end JavaScript work thrown in so I'm not a beginner. With that said, I do want to expand my skill set and learn more about the back end, as I think that's where I'm weakest.

So for the foreseeable future I'll be documenting what I learn from the Nanodegree, my work on the projects in the Nanodegree, and my general thoughts on the structure of it all. I haven't decided if I'm going to do an update once every week or every two weeks, but I'm sure I'll figure that out as we go.

Looks like the first project is some sort of CRUD application with the purpose of "connecting musicians with venues" and it seems pretty straightforward. Here's the tech stack for it:

* [Python 3](https://www.python.org/)
* [Flask](https://flask.palletsprojects.com/en/1.1.x/#)
* [PostgresSQL](https://www.postgresql.org/)
* [psycopg2](https://pypi.org/project/psycopg2/)
* [SQLAlchemy](https://www.sqlalchemy.org/)
* [Flask-SQLAlchemy](https://flask-sqlalchemy.palletsprojects.com/en/2.x/#)

Out of the above, I've worked with Python 3, PostgresSQL, and psycopg2. I sadly haven't done anything with Flask in the past, so the project should be a good learning experience. I briefly dabbled with Django, though.

I look forward to learning more, and hopefully posting more too. I'm not entirely sure if I'm just going to offer snippets of my journey or do full recaps at regular intervals. We'll see.
Have you taken the 2020 Stack Overflow survey?
Tags: discuss
Published: 2020-02-25 20:53:14

---
title: Have you taken the 2020 Stack Overflow survey?
published: true
description: 
tags: discuss
---

For some reason, this survey didn't hit my radar until just now. I'm usually on top of it! Looking forward to the insights from this year.

If you want to take it: https://stackoverflow.az1.qualtrics.com/jfe/form/SV_eL0mFVwuo7KWeXP
Why I Became a Software Engineer
Tags: beginners, newbie, career
Published: 2020-02-24 22:08:02

For most of my life I had been blindly drifting down the path that I felt was expected of me, the road of least resistance.

Go to college, get a job, live a happy life?

Initially, all was going well. I was accepted to the University of Washington with the hope of majoring in computer science... and immediately bombed my chemistry course. 

After two applications and two denials to the CS major I was left with two options. Transfer schools to pursue CS further, or pick a different major.

If I transferred, it would be an acknowledgement of my failure to my family and friends, so I took the easy way out, put my CS aspirations on hold, and chose a new major that I knew I would do well in.

Years later I graduated with my degree in Psychology and was left with the question of what I wanted to do with my life. I wasn't ready to commit to grad school yet so I decided to take some time off and do some introspection.

After ultimately deciding that I didn't want to pursue Psychology and further and bouncing around at dead end jobs I felt that I needed a change.

I hated the feeling of being stagnant, hated that I didn't learn anything new, and hated myself for being too scared to put myself out there and leave my comfort zone.

It was finally time to jump into the unknown and pursue my own dreams and passions instead of trying to become what I thought others wanted me to be. 

Why did I become a software engineer? Because I love learning new things, solving problems, finding meaning in my work, and most importantly, being myself.
Meteor un framework fullstack para NodeJS
Tags: meteor, node, javascript
Published: 2020-02-25 20:18:04

[Escuchar podcast](https://anchor.fm/tecnotrucos/episodes/Meteor-in-framework-fullstack-para-nodejs-eb1qhq)
{% spotify spotify:episode:7we3IDiV0hmC83MKkhzKxS %}

Meteor es un framework de desarrollo único en su género que permite programar aplicaciones web en tiempo real con la posibilidad de generar aplicaciones móviles.

Si quieres conocer más sobre este framework, escucha este podcast.
Hello World!
Published: 2020-02-25 20:17:29

Hello!
I am ArcticFox.
Recently, I've gotten really into coding. You see, I've always being interested in doing it for as long as I can remember and even did a good bit of it in 2017 but I didn't learn much at all. At the start of January, I decided to try get back into coding and found myself in love with it. I love the idea of being able to make practically anything on a computer. 
I have done HTML, CSS and JavaScript. 
I will be attempting to improve my Python skills starting this week using resources such as CodeCademy, W3Schools and maybe try FreeCodeCamp!
I'm still a bit of a noob when it comes to coding but it is something I am passionate about.
NodeJS, la plataforma para programar en JavaScript
Tags: node, javascript
Published: 2020-02-25 20:14:10

[Escuchar podcast](https://anchor.fm/tecnotrucos/episodes/Nodejs--la-plataforma-para-programar-en-JavaScript-casi-cualquier-cosa-eb18n4/a-a1ig576)
{% spotify spotify:episode:1hKWMspdMYurnA7Ym8eeAi %}

JavaScript ha pasado de un lenguaje de segunda división a un lenguaje de primer nivel sobre el que se desarrollan muchísimas aplicaciones para servidores, utilidades o aplicaciones de escritorio.

Descubre todas las posibilidades que nos brinda NodeJS
PHP: How to generate a Unique id in PHP (Alphanumeric String)
Tags: faq, php
Published: 2020-09-08 20:29:20

---
title: PHP: How to generate a Unique id in PHP (Alphanumeric String)
published: true
date: 2020-02-25 20:12:26 UTC
tags: FAQ,PHP
canonical_url: https://www.parthpatel.net/php-generate-unique-id-string/
---

In php, there are many ways to generate **unique alphanumeric id**. First of all, we will understand why we might need unique alphanumeric id in first place.

In applications, normally we use unique integer ids which is generally generated by database itself ~ Auto-increment, unique integers. But sometimes we need unique alphanumeric string as ids instead of simple integers.

**Few Reasons:**

- Unique ID is needed if you have multiple-server app architecture i.e -- Your database is stored in multiple servers
- If you want to merge different branches of data without clashes
- Unique ID is helpful and must if you want to prevent sequence discovery of data in application or API endpoints.

### Generate Unique Alphanumeric String using **uniqid()** function in PHP

In PHP, there is a very helpful function **uniqid()** which generates unique alphanumeric string for you. The function has two parameters ~ though both are optional --

1) $prefix -- you can prefix the generated id with any string  
2) $more\_entropy -- By default, it sets to  **FALSE** but if set to  **TRUE** , it will add additional entropy ~ basically it means that it will increase the uniqueness of the returned string

**Example:**

```
//generates 13 character random unique alphanumeric id
echo uniqid();
//output - 5e6d873a4f597

//generates 13 character random unique id with prefix - db
echo uniqid("db");
//output - db5e6d875de7ba5

//generates 23 character random unique id with prefix - db but with more randomness
echo uniqid("db",true);
//output - db5e6d8782d90365.80737996

//generates random unique id with random prefix - higher randomness than fixed prefix
echo uniqid (rand (),true);
//output - 5e6d88383c9abdb5e6d88383c9b118314536965e6d88383c9b75.70966391
```

As you can see above, we can use **uniqid()** function in different ways to generate unique id.

### Generate Unique Alphanumeric String using **random\_bytes()** function in PHP

In **PHP 7.x** , there is another powerful and more secure function to generate random alphanumeric string -- **random\_bytes()**. It requires only one parameter -- length, and it generates cryptographically secure pseudo-random bytes. Further, passing its output to another function **bin2hex()**, will give you unique random string.

**Example:**

```
$bytes = random_bytes(16);
echo bin2hex($bytes);
//output - 68309ba352806f9a943e16e74e5a9da3
```

Thus, using any of the above methods, you can create unique random strings and use it instead of basic integers and thus secure your application. Hope this helped you out.

Adios

 

The post [PHP: How to generate a Unique id in PHP (Alphanumeric String)](https://www.parthpatel.net/php-generate-unique-id-string/) appeared first on [Parth Patel - a Web Developer](https://www.parthpatel.net).
Frameworks PHP en la actualidad
Tags: php, laravel, symfony
Published: 2020-02-25 20:09:11

[Escuchar podcast](https://anchor.fm/tecnotrucos/episodes/Frameworks-PHP-en-la-actualidad--cules-son-y-cmo-usarlos-eb059h)
{% spotify spotify:episode:6D0HTQc6xdjmguBmCHaJi0 %}
El desarrollo en PHP ha evolucionado con PHP 7. 

Podemos distinguir entre frameworks orientados a componentes como Symfony, que podemos personalizar para elegir sólo lo que vamos a utilizar, o frameworks monolíticos a lo Ruby On Rails, como Laravel, que buscan cubrir todo el stack de tecnologías que necesita un proyecto.
Drupal 8, un CMS y un framework completo de desarrollo
Tags: drupal, cms, php, symfony
Published: 2020-02-25 20:06:37

[Escuchar podcast](https://anchor.fm/tecnotrucos/episodes/Drupal-8--in-CMS-y-un-framework-completo-de-desarrollo-eavd4m/a-a1i2i8v)
{% spotify spotify:episode:2FdUJKrwjyp92xuRdk2nrj %}
Drupal, en los últimos años se ha convertido en una opción estupenda para muchos desarrollos. 

Si tenemos que plantear un desarrollo en el que tengamos previsto dar acceso a varios perfiles de usuario para poder editar y gestionar diferentes tipos de contenido y formularios, sin duda Drupal es muy buena opción.
Frameworks de desarrollo en JavaScript
Tags: react, vue, jquery, backbone
Published: 2020-02-25 19:57:41

[Escuchar podcast](https://anchor.fm/tecnotrucos/episodes/Frameworks-de-desarrollo-en-JavaScript-eavahq/a-a1i20mt)
{% spotify spotify:episode:2gxCBFeKOTBzfz7W7t8tgm %}

Por si no lo sabes el mundo de la programación web ha cambiado. Atrás quedaron los tiempos de jQuery, que indudablemente se sigue manteniendo en muchos proyectos antiguos.

En la actualidad los frameworks JavaScript buscan la modularidad, la reutilización y la creación de componentes que incluyen estilos y funcionalidad que se puede personalizar con propiedades.

Haré un pequeño repaso de las opciones que debéis conocer si queréis ser programadores frontend web en la actualidad.
My Favorite Code Conference
Tags: career
Published: 2020-02-25 19:56:16

I am so happy to be a part of what I believe has been the best conference in our industry since its inception three years ago...

## **[👉 CodeLand 2020](https://codelandconf.com/)**

In case you missed it:

{% link https://dev.to/devteam/special-announcement-from-dev-4oi %}

Why is CodeLand such a great environment? The devil is in the details. For one, the talks are heavily vetted to deliver value and speakers are instructed to strip away buzzwords in favor of concise, inspiring 15 minute talks.

The beautiful venue at NYU in downtown New York City across from Washington Square Park in the summer also helps.

![Washington Square Park](https://imgs.6sqft.com/wp-content/uploads/2018/08/01103439/WashingtonSquarePark.png)

With activities like office hours, resumé reviews, professional headshots, the likelihood that attendees come away with real career value is about as high as possible. Conferences are great for keeping up with industry trends, making connections, etc. and I think CodeLand delivers the best platform for all of this.

CodeLand is priced so that more people can attend, and there is a great scholarship program on top... It's not exclusively for those swiping a corporate credit card.

## **DEV Involvement**

Because we are part of this, there will be opportunity to meet up with folks from this online community. It will also mean that we will have a thematic influence on the conference, and that theme is **open source, collaboration, and the evolving software career**. We believe that the next decade of this industry will mean collaboration of all kinds between companies and communities, shared resource, shared learning opportunities, and a central role for community.

Expect several talks and workshops to touch on these themes. We will also provide workshops surrounding using DEV for career growth, but also using our open source tools in different ways.

We have new frontiers ready to launch and CodeLand will be at the center of it all...

{% link https://dev.to/devteam/the-future-of-dev-160n %}

If you are interested in getting more involved in our ecosystem and being an early adopter of the DEV distributed social forum software, please attend. We will have plenty to go over.

## **Early-bird ticket sales end tomorrow**

[CodeLand tickets start at $99](https://codelandconf.com/), and while there will continue to be scholarship opportunities, your chance to get in at this price closes soon.

We have not closed the CFP, and therefore have not announced speakers and workshops yet, so if you are going to buy early-bird, it is on the faith that we will have a great lineup. (P.S. Still time to apply to the CFP)

## **[👉 CodeLand 2020](https://codelandconf.com/)**

**See you in New York 💜**
Just a little piece of advice for anyone starting out as a front-end developer.
Tags: webdev, beginners, career, programming
Published: 2020-02-25 19:37:22

---
title: Just a little piece of advice for anyone starting out as a front-end developer.
published: true
description: This is just a short text with some advice for those starting out as a front-end developer.
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/su7jjcs5fio8sbuquqds.jpg
tags: webdev, beginners, career, programming
---

The advice for those starting out as a front-end developer is: Don't rush.

I know. Trying to learn something and watching the technology change every day, faster than you can learn "the basics", can be desperate and almost suffocating. But keep calm, that's how it is.

Keep studying, training, hearing about what you're trying to learn, doing some things to practice, trying harder and, when you don't even expect, you can master what you couldn't before.

Over time, all the things you were trying to learn start to make sense and fit together. Everything starts to be easier to assimilate and understand and you start to see everything from another perspective. An easy one, a better one.

You change, evolve, improve yourself and learn to see and solve problems in new ways. You start to ask other questions, think of new approaches to solve a problem, and even the doubts, witch never stop to exist, will evolve and change with you.

Learn to identify and even value these moments of difficulty and lack of knowledge.

I know, it seems crazy to say that now, but those moments will be the identifiers of evolution in your history. You will look back and remember what used to be difficult to resolve and be sure that you have evolved.


I wish you all a lot of success!

Hugs.

---

_This text was originally written in Portuguese and translated into English with the intention of improving my writing in English. If you have read any errors and / or have any suggestions, please write in the comments. Certainly I will be grateful._
Craft Troubleshooting Round Up
Tags: frontenddev, troubleshooting, craftcms, cms
Published: 2020-02-26 18:20:11

---
title: Craft Troubleshooting Round Up
published: true
date: 2020-02-25 19:27:31 UTC
tags: front-end-developmen,troubleshooting,craft-cms,cms
canonical_url: 
---

So my new mantra is that if something takes me more than a few minutes and a google search to solve, then someone else out there might benefit from me posting the results of my troubleshooting. These things typically aren’t big enough for individual blog posts so they’ve been going on my personal Instagram so far. But I will round them up here for your benefit, lucky you!

### Honeypot field in Craft CMS Freeform Forms

I was working on accessibility for a site that was using Craftcms Forms plugin. I’ve submitted this to Solspace and they’ll be updating it in a future release but until then …

Basically the form was not passing accessibility checks for the honeypot field and needed a tabindex of -1 added. So line 632 or so in the plugin I’ve added the code shown below and bam, we pass the accessibility tests.

{% instagram B76wCRVgtVn %}

### When “entry” doesn’t exist on the homepage

Occasionally when we run some of the Craft CMS updates the homepage there’s an “entry does not exist” error. Depending on the update some of the settings on the homepage section may have changed and require some attention. In this case, we just needed to recheck the “home” icon in the site settings.

{% instagram B85RLA8gTZL %}

### Solspace Calendar not showing repeat toggle

Finally, I had a request to add the ability to repeat an event using Solspace Calendar plugin. Well, what’s going on here? I have other sites using the same plugin that allow repeating events, why isn’t this one? Well, we had just run the latest update that included a new “lite” version of the plugin. Apparently the lite version does not include the repeat toggle so we just need to go into our plugin page and switch from the “lite” version back to our “pro” version that matches our license key.

{% instagram B9ACvCvgpUX %}

Well I hope some of these things help you out! Stay tuned, there’s bound to be more troubleshooting around here.

* * *
How to access Office 365 email from GMail
Tags: office365, outlook, gmail
Published: 2020-02-25 18:52:01

I'm writing this so I don't forget how I did and so that I can find this setting one day. Here's how I handle my Office365 email address from my GMail client. Because generally, the internet mostly explains how to migrate from GMail to Office 365 or vice versa...

The purpose of this manipulation is to allow me to continue to use GMail web interface for:

* receive emails from my Office 365 address,
* send emails with this address.


## Get Office 365 emails into GMail

This part of the configuration must be done from Outlook 365 (in French in my case):

* Click the "Settings" icon (a gear at the top right in the menu bar).
* Click on "Show all Outlook settings" at the bottom, which opens a new window.
* Click the "Mail" submenu and then "Transfer".
* Fill in the GMail address where to send the emails (like "prenom.nom@gmail.com" for example):

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

Then validate by clicking "Save" at the bottom right.


## Sending Office 365 emails from GMail

This part of the configuration is done from GMail:

* Click on the "Settings" icon (a gear in the top right corner).
* Choose the "Settings" submenu.
* Go to the "Accounts and Import" tab.
* There is a section "Send mail as" => click on "Add another email address".

First, you have to enter your address on the Office 365 server:

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

Then click on "Next step »" and set up the corresponding SMTP server:

* Address: smtp.office365.com
* Port: choose "587"
* Username: give the Office 365 email address, e.g. "prenom.nom@societe.fr"
* Password: enter the password corresponding to this email address
* Select "Secured connection using TLS"

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

After clicking on "Add Account »", the "Send mail as" section now contains the following information:

```
Prenom Nom <prenom.nom@societe.fr>
Mail is sent through: smtp.office365.com
Secured connection on port 587 using TLS
```

Just below, it is better to define that by default you want to reply to messages using the address to which the message was sent. To do this, select the option "Reply from the same address the message was sent to", rather than "Always reply from default address (currently prenom.nom@gmail.com)".


## Conclusion

It works. And most importantly, I now have access to my Office 365 address from both GMail and Outlook.

But for the record, I tested different methods until I found something that works (and I didn't look any further). I'm interested if someone knows a better solution and ideally the "official" settings.

---

This post was originally published on [blog.pagesd.info](https://blog.pagesd.info/2020/02/25/access-office-365-mail-from-gmail/).
Cover image : [Antique Oil Painting - PHO.TO](https://funny.pho.to/fr/antique-oil-painting/).