teleren/devto huggingface dataset:
[ubuntu] How to set your country time  in Docker 🐳
Tags: linux, docker
Published: 2021-04-13 05:45:52

check local date
```bash
date
```
You can see that it is written in utc time.

```bash
Tue Apr 13 05:39:01 UTC 2021
```
How to set your country time.
You can set up continents and countries using the tzselect command.

```bash
tzselect
```
```bash 
Please identify a location so that time zone rules can be set correctly.
Please select a continent, ocean, "coord", or "TZ".
1) Africa
 2) Americas
 3) Antarctica
 4) Asia
 5) Atlantic Ocean
 6) Australia
 7) Europe
 8) Indian Ocean
 9) Pacific Ocean
10) coord - I want to use geographical coordinates.
```
```bash 
 1) ?land Islands         18) Greece                35) Norway
 2) Albania               19) Guernsey              36) Poland
 3) Andorra               20) Hungary               37) Portugal
 4) Austria               21) Ireland               38) Romania
 5) Belarus               22) Isle of Man           39) Russia
 6) Belgium               23) Italy                 40) San Marino
 7) Bosnia & Herzegovina  24) Jersey                41) Serbia
 8) Britain (UK)          25) Latvia                42) Slovakia
 9) Bulgaria              26) Liechtenstein         43) Slovenia
10) Croatia               27) Lithuania             44) Spain
11) Czech Republic        28) Luxembourg            45) Svalbard & Jan Mayen
12) Denmark               29) Malta                 46) Sweden
13) Estonia               30) Moldova               47) Switzerland
14) Finland               31) Monaco                48) Turkey
15) France                32) Montenegro            49) Ukraine
16) Germany               33) Netherlands           50) Vatican 
City
17) Gibraltar             34) North Macedonia
```



===================================
If you want to change Docker's time 
- Use tzdate (in docker)
```bash 
 sudo apt-get install tzdata
 dpkg-reconfigure tzdata

```

-  Link the desired time zone to /etc/local time.(out docker)
```bash 
sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
```
Then run the docker.
```bash
 sudo docker run ...
  -v /etc/localtime:/etc/localtime:ro \
  -e TZ=Asia/Seoul
```
#RenderRoundtable: Sending The Ladder Down With Scott Hanselman 
Tags: javascript, react, career, news
Published: 2021-04-13 21:56:31

For this week's #RenderRoundtable (hosted on Twitter Spaces!), we wanted to revisit some topics that are not only important but that matter to us as a community. We sat down with [Scott Hanselman](https://twitter.com/shanselman) to discuss his wide variety of skills as a coder, blogger, author, teacher, speaker, and YouTuber, but also what it means to be someone passionate about "sending the ladder down," to bring up those who are often overlooked in tech.

Scott shared his amazing journey in technology with us, and for those of you who missed it, I wanted to discuss a few things that were particularly empowering and important. Scott mentioned that his intro to technology was actually through a teacher of his-- and while this may seem innocuous, we had a very candid conversation about how educators can often serve as gatekeepers, especially in tech. If you're a mentor, you can genuinely change someone's trajectory, so choose kindness and faith over criticism and redirection.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9amjwho9324h4ety2gti.png)

Next week, we'll be continuing the conversation with [Pariss Athena] (https://twitter.com/ParissAthena)-- the founder and CEO of [Black Tech Pipeline](https://blacktechpipeline.com/). Pariss has done some amazing work in the diversity space and really embodies the fervor and dedication it takes to recruit and retain Black tech talent. During our conversation with Scott, tons of participants had questions about finding, recruiting, and working with underrepresented groups, so let's continue the conversations that enable us to do the work that matters, next Thursday, April 12th, at 7:00 PM EST.

Spaces aren't the only place we want to chat with you guys, so be sure to purchase your tickets to [RenderATL](https://renderatl.com) if you haven't already, [subscribe](https://bit.ly/3etgr5N) to our newsletter for important (and exclusive!) conference updates, and follow us on [Twitter](twitter.com/renderatl) to make sure you catch the next #RenderRoundtable!

Until next time!
next/image - Make image fill available space without specifying height or width
Tags: react, nextjs, css, performance
Published: 2021-04-13 21:13:45

The Next.js Image component has built-in Lazyloading but forces you to specify a width & height. Yet most times you do not know this information beforehand. Nor do you want images to look squashed by providing the wrong width or height.

I discovered with a few lines of CSS you can get around this. Thus your images will fill all the available space in the div.

So wrap the <Image /> component with an `unset-img` class and give the <Image /> component itself the className `custom-img`. Note the layout mode must be set to "fill". 
```jsx
<div className="unset-img">
  <Image alt="Mountains" src="/project/pexels-photo.jpeg" layout="fill" className="custom-img"
   />
</div>
```
Here is the CSS which overrides the next.js functionality.

```css
.custom-img {
  object-fit: contain;
  width: 100% !important;
  position: relative !important;
  height: unset !important;
}

.unset-img {
  width: 100%;
}
.unset-img > div {
  position: unset !important;
}
```
How To Secure Your Zoom Meeting
Tags: zoom
Published: 2021-04-13 21:06:04

## Know the Lingo
You may have heard about **_Zoom bombing_** or **_Zoom raiding_**, which;

> refers to the unwanted, disruptive intrusion, generally by Internet trolls, into a video-conference call ([Wikipedia](https://en.wikipedia.org/wiki/Zoombombing)).

Zoom bombing can happen to unsecured, unprotected Zoom meetings. The unwanted visitors will relentlessly torment any _actual_ participants, thus rendering the meeting useless.

## So what should I do?
Well, there's lots of ways to secure your meeting. Let's take a look at what security features Zoom has to offer when setting up a meeting.

### Don't use your Personal Meeting ID for public meetings
This might not seem obvious on the surface. If you are going to send out a meeting invite that others will share, **don't** use this one. Your Personal Meeting ID (PMI) does not change _unless_ you change it.

### Instead, schedule a new meeting
Click on the **+** icon, then select **Schedule Meeting**:

![schedule meeting](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8yx21ext1dg0ojs0ed5s.png)

Then, you will be able to set up the options for your meeting:

![options](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6i6a3cv6s1dz856umhoq.png)

On this page, you are going to want to enable the password field, and use your own unique password. Another tip is to make sure to enable the **waiting room**. This will ensure that any guests (either wanted or unwanted) don't just join straight into the main meeting room.

### Advanced Options
Down at the bottom, if you click the **Advanced Options** dropdown, you are able to enable a few more security features:

![advanced](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yfygvo96guup228wzn9j.png)

I'd suggest **Mute participants upon entry** and if possible for your organization, **Only authenticated users can join**

### In-Meeting Security
Once the meeting has started, there are even more security features for you to choose from. These can be found by clicking on the **Security** shield on the bottom. Options include:
- Lock Meeting (does not let anyone else inside of the meeting)
- Enable Waiting Room (if you haven't already)

and options to limit participants' ability to:
- Share their screen
- Rename themselves
- Unmute themselves

![more security](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cd53felzk9f8s64gbewy.png)

These are the basics to securing your Zoom meeting. There are far more options if you really want to limit other features within the meeting, but I won't get into every one. Be sure to consult [Zoom's own website](https://zoom.us/) if you are interested in finding out more.

## Additional Resources
- [Best Practices for Securing Your Zoom Meetings](https://zoom.us/docs/doc/Securing%20Your%20Zoom%20Meetings.pdf)
- [Zoom Security](https://zoom.us/trust/security)
- [How to Keep Uninvited Guests Out of Your Zoom Event](https://blog.zoom.us/keep-uninvited-guests-out-of-your-zoom-event/)
Cultural Hegemony In Workplace Culture
Tags: racism, workpaceculture, culturalhegemony, slack
Published: 2021-04-13 21:02:00

A long time ago I wrote this little thing and
I just re-read it and
I still stand by it; 
**ham-fisted indifference is the saturation stain of arrogance and slimy irreverence in a culture; a signal to the dehumanised that they still mean nothing.**

Please continue reading, it's good for you!

## The global survey
On the 7th of October, 2020 - the team at Slack [posted a thing on their blog](https://slack.com/intl/en-gb/blog/collaboration/workplace-transformation-in-the-wake-of-covid-19
), which discusses _"New data from a *global* survey of more than 9,000 knowledge workers"_. 

In the article, the term `global` is used to misrepresent the survey data. The survey was not `global` because only people in the following continents were surveyed:
- North America
- Europe
- Asia
- Australia

We see this also, when presenting the data on a World Map®; further indicating that the authors don't use `global` as it relates to 'whole of the set of knowledge workers which were surveyed', but rather as it relates to 'the whole world'. This is a misrepresentation of 'the geographical distribution of the whole set of knowledge workers which were surveyed'.

By using the term `global` as an aggregate for "America, Asia, Australia and Europe" is not only misleading, but - when considering the context of the article: remote work and working from home; it is stark reminder that cultural hegemony in the workplace pervades the very homes of the very people marginalised by it.

To add insult to injury, the presentation of the survey data on the World Map® exemplifies the ham-fisted indifference to Africa and South America by placing labels for European and North American statistics directly on top of Africa and South America. 

![image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ui1gi3rg5tczhgtqb5b4.png)

### Slack's idea of global doesn't include three of the continents on this planet

To me, this says "While South America & Africa do exist, on some level, not one thing that anyone has to say on either continent really matters".

### At least they removed Antarctica

You may have noticed that Antarctica was not included in the survey and was removed altogether from the World Map®. As confusing as the decision to exclude Antarctica from the World Map®, at least it was given some thought. Maybe Slack should have just removed South America and Africa? Oh wait, but then where would the labels go?

## I keep updating this shit
Over the years I've been updating to better express myself and the consequences of this terrible thingy that I'm writing about. I'll keep at it until I'm satisfied. At this stage, there are a lot of ways in which I can improve this doc and  I will continue doing so :) It's so infuriating to write about and it's an extremely emotional topic for me, so I can only spend short amounts of time on it.
Elm and TailwindCSS with purge included
Tags: elm, tailwindcss, purge
Published: 2021-04-13 20:48:03

Elm with Tailwind CSS
=====================

## What ?

A simple start project with an Elm using Tailwind CSS styles with purge included.

## Why ?

Because Tailwind CSS is nice and when use it with Elm is a lot of power and beauty.

## How ?

Ensure you have recent versions of Yarn and Elm installed and then run:

```bash
yarn
yarn dev
```

If that works you may open your favorite browser to http://localhost:5000/ and
make changes to your code live.

If you want to export a final optimited version of your code you may run `yarn build`.

Please take a look to:

* `package.json`
* `postcss.config.js`
* `tailwind.config.js`
* `public/assets/pcss/styles.pcss`
* `src/Main.elm`

**NOTE:** Of course you can use NPM instead of Yarn, in that case you may change the
watch scripts from `package.json` from `yarn` calls to `npm` calls.

## Where ?

This repo is initially published at https://github.com/csaltos/elm-tailwindcss/
and you may see a demo at https://csaltos.com/elm/tailwindcss/
Talk Notes: "Self-Care on Rails" (RailsConf 2021)
Tags: techtalks, rails
Published: 2021-04-13 20:15:10


✨ **What is this post about**: As a part of my professional growth, I make time to watch conference talks on Ruby, Rails, JS, React, tech writing, and tech trivia. Previously, I'd just watch them but now I will take and publish notes for future reference. This talk was a part of RailsConf 2021 that I'm participating at the time of writing. 

✨ **Talk:** 'Self-Care on Rails' by @bengreenberg , or [Ben Greenberg](https://twitter.com/RabbiGreenberg)

✨ **One-paragraph summary**: This past year has been one of the most challenging years in recent memory. The pandemic has taken a toll, including on children. Adults used their professional skills to help make the year a little better for the kids in our lives: Therapists counseled, entertainers delighted, teachers educated... and Rails developers developed!

✨ **Impression**: I appreciate the human-side of the Rails community that Ben represents; the talk was inspiring and also grounding

---

## Table of contents:
- [Notes](#Notes)
- [Side Notes](#side-notes)
- [Read more](#read-more)


---

## Notes
- "...citizens of a democracy are collectively responsible for what their society allows; they have a special duty towards those it systematically fails, and this burden falls most heavily on those most rewarded..." (Chiala Cordelli)
- a new initiative in the Open Source community: Hippocratic License
  - "...we are starting to realize that the software that we create has a real and lasting impact on the world in which we live" ([An Ethical License to Open Source](https://firstdonoharm.dev/) - how will your code be used? will it be bettering the world at large?
- "If I am not for myself, who will be for me?"
  - self-interest can mean asserting yourself among others and that's not a bad thing!
  - your interest is among others and it matters
- We are facing mental health crises (loneliness, etc.) and it's affecting all of us: adults and youths alike
- **webRTC**: real-time communication
  - open web standard and available as regular JS APIs in the majority of browsers
  - it supports video, voice, and generic data to be sent between peers
- Ben mentioned two apps he built: 
  - [a video-sharing app](https://github.com/nexmo-community/rails-video-watch-party-app) he built for his son's birthday party,
  - [a gem he published](https://github.com/bencgreenberg/school-health-declaration-automation) that uses web-scraping to automate school form submission (btw. [his blog post on building this](https://dev.to/bengreenberg/automate-school-forms-with-web-scraping-in-ruby-2c3j) is amazing)
- **the more you help yourself, the more you help others** ✨

---

## Side notes:
- I love Ben's attitude, kindness, and jokes
- "You can't escape JavaScript ;-; " - Ben 😹

---

## Read more
- [webRTC](https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API)
- [Blog: Automate School Forms with Web Scraping in Ruby](https://dev.to/bengreenberg/automate-school-forms-with-web-scraping-in-ruby-2c3j)
Talk Notes: "'Junior' Devs are the Solution to Many of Your Problems" (RailsConf 2021)
Tags: techtalks
Published: 2021-04-13 19:48:59

✨ **What is this post about**: As a part of my professional growth, I make time to watch conference talks on Ruby, Rails, JS, React, tech writing, and tech trivia. Previously, I'd just watch them but now I will take and publish notes for future reference. This talk was a part of RailsConf 2021 that I'm participating at the time of writing. 


✨ **Talk:** 'Hosting: "Junior" Devs are the Solution to Many of Your Problems' by [Josh Thompson](https://twitter.com/josh_works)

✨ **One-sentence summary**: Early-career Software Developers, or ECSDs, have incredible value if their team/company/manager doesn't "lock themselves out" of accessing this value. Whoever figures out how to embrace the value of ECSDs will outperform their cohort. 📈💰🤗

✨ **Impression**: I'm so glad that Josh has shared the [slides and papers](https://josh.works/railsconf) on his website for us to peruse because, sadly, the talk was a bit chaotic and difficult to follow. 

---

## Table of contents:
- [Notes](#Notes)
- [Read more](#read-more)

---

## Notes
- myth: "Junior devs take too long to onboard" (3-6 months)
  -  everyone takes a long time to onboard if you don't have a smooth onboarding process
  - 3-6 months sounds like a guess-game
- New devs suffer from the impostor syndrome and want to feel that they are bringing meaningful contributions
- Involve experienced devs working with Entry Career Software Devs: 
  - increases the capacity of the entire team
  - upfront investment but a meaningful return
- **When planning the onboarding experience:**
  - what needs to happen between them getting access to GitHub and setting up their env AND them getting a ticket?
  - maybe there are some talk suggestions?
  - maybe you can record an application demo + embed it in your wiki? 
  - is there a feature that involves crucial parts of the application that the person can rebuild (using git log)?
- Example of a roadmap to improving the Early Career Software Developer onboarding:
  1. Create a ticket to make the effort legible
  2. Experienced Eng does set-up from scratch "as soon as possible"
  3. Next hire, the same engineer sits with the new eng while working through that guide
  4. Update the doc
  5. Go hire ECSD, same eng repeats the process with the ECSD
- Measure the process:
  - **what's measured gets managed**
  - you will be improving this process because you're attentive to that
  - report during the stand-ups
- **How to get the organization to hire more juniors**: 
  1. get folks to agree that there is a problem
  2. show that much of the tasks already performed anyway
  3. show the cost-benefit of the solution 
  4. present metrics of success 

---

## Read more
- [slides and papers](https://josh.works/railsconf)
Hactoberfest2020
Tags: hacktoberfest, opensource, github
Published: 2021-04-13 19:47:00

My Experience
This was my first experience in opensource community during hacktoberfest2020. I was unknown about opensource community and also about github contributions. I came to know when I attended different talks on github contributions. The events were conducted by developer students club. They helped me to grow my knowledge about github and also a friend from india told me about hacktoberfest. He guided me and I made my First Pull Request on his repository. After that I started founding beginner level repositories and those who had hacktoberfest tag. There are many good people on github and they also helped me to correct my mistakes. I made thirteen PRs! From those eleven Prs were accepted. Finally I got my T-Shirt and Stickers. It was mine experience. What's yours? Tell me in comments.
Learning from dev courses...or from side projects?
Tags: discuss, career, learning, writing
Published: 2021-04-13 19:43:03

---
title: Learning from dev courses...or from side projects? 
published: true
description: A thought about spending time on course or on a side project.
tags: discuss, career, learning, writing
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/si0dc5erm6lq311oslyi.png
---


I love to complete a good course on software development or design. It makes me feel that I learned something new and I feel confident about it. 💪

This last until I face a project and I realize I either forgot some parts or I don't know how to use it here. 

First I thought, the is a problem with my note taking technique or the course material...

Then recently a friend asked me to build a web app for her small business. It was all on me:
- hosting
- landing page
- brand + UI design
- database design
- authentication 
- mails
- i18n 
- etc.

In that half year of discussions, design and development I feel learned a tons and I thought to share with you. 

Having a stake in the game changed the way I build knowledge. 

If you haven't been responsible to build something for somebody else, I can highly recommend! Even more, I am always happy to collaborate!
Inshot Video Editor
Tags: mobile, android, googlecloud, app
Published: 2021-04-13 19:40:45

Video Editor Free – Video Maker, is a professional video edit app that you could splice photos into a music video with one click. Video maker and editor offers excellent video editing features where you can edit and crop videos with video cropping, trimming video, and add free music with video.
https://play.google.com/store/apps/details?id=com.inShot.editorinshotmaker
Python GUI, PyQt or tkinter?
Tags: python
Published: 2021-04-13 18:44:44

You can make a GUI with Python using the modules [tkinter](https://en.wikipedia.org/wiki/Tkinter) or [PyQt](https://wiki.python.org/moin/PyQt). Wanna make a GUI application in Python 3?

You have to choose between the Tkinter and PyQt libraries.

I have been using Tkinter for some time now (as in 15 Years) and am familiar with it. In our current project we have started to use PyQt classes and I find them more intuitive. 

Tkinter is a bit more verbose, Qt more convenient. Tkinter used to be part of the standard python library which is installed on most systems

## PyQt

pyqt is an object-oriented Python binding of the cross-platform Qt GUI toolkit.

PyQt provides full access to all Qt 5.x stable widgets.
It is [simple](https://pythonbasics.org/pyqt-hello-world/), mostly API compatible and very efficient. Another goal of [PyQt](https://pythonpyqt.com/) is to be a bridge between the huge
number of existing Qt applications and Python programmers.

Some of the major features are:

* Python syntax in .py files, no need for .ui files;
* A unique Pythonic interface: Python variables can be used as properties;
* Powerful event system with multi-level undo/redo support;
* Full integration with the Python interpreter (call Python from Qt applications; call Qt application from
Python);
* Access to all (nearly 400) non-deprecated functions and properties of the Qt 5.x API.
* Cross-platform on computers and embedded devices
* Supports many widgets, even a widget to play [video](https://pythonprogramminglanguage.com/pyqt5-video-widget/)

![pyqt](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fgbxozdjdw15a6g63orh.jpeg)

## tkinter

Python includes a graphical user interface (GUI) toolkit called Tkinter. Tkinter is based on the original Tcl/Tk package and provides a set of classes to create and control graphical user interfaces.

Tkinter is the Python interface to the Tcl/Tk GUI system.
It is a wrapper around Tcl/Tk that allows for rapid [GUI](https://pythonspot.com/tk-window-and-button/) development in Python.

It provides both a traditional (Tkinter) interface and more modern Scrolled Canvas, and other Tkinter-like widgets.
It was written to provide a [simple](https://python-commandments.org/tkinter-basics/), portable and capable interface for Python programs that need a windowing environment.

It has been tested on MS-Windows, X-Windows (Linux, Solaris, ...), MacOS, BeOS, AmigaOS, QNX, VMS and pSOS+.

## Comparison

The number of widgets is very limited in tkinter compared to PyQt. On top of that, PyQt comes with a drag and drop [designer](https://pythonbasics.org/qt-designer-python/) program.

Tkinter also has quite an old-fashioned look, as compared to PyQt which can mimick a native OS look.

If you are new to PyQt, [this course](https://gum.co/pysqtsamples) is a good place to start.