teleren/devto huggingface dataset:
Ananya will #breakthebias in 2022
Tags: wecoded, career, womenintech, motivation
Published: 2022-03-09 05:54:26


## I pledge to break the bias by changing my brand to be the technical go-to-person in my team and organization.
 

**No more thankless jobs**
In over four years of my software engineering experience I have been nudged towards thankless jobs like hosting social events and non technical work. Often I even volunteered to do it myself to increase like-abilty. I want to stop wasting my energy there and focus on what makes me technically competent. That involves checking in with the career ladder guide regularly and prioritizing my goals around them. I want to continue to read and learn outside work hours and not shy away from expressing my opinion based on the things that I've learnt.

**Get more visibility**
I will continue to address subtle dismissal and questioning by coming prepared to discussions with clear and detailed documentation, and taking charge in conversations. I have been left out of discussions and not invited to meetings and one of the strategies that has worked for me is to actively make myself more visible. This can be done by organizing discussions, speaking up more in meetings or even writing documentation that other people refer to. Fulfilling my on-call responsibilities well and supporting partner teams is another opportunity to increase visibility with clients. 

**Believe in myself**
I will trust my knowledge, preparation and sincerity. I will count others' appreciation towards me. I will believe in my intelligence and be brave about being me.
⚙️ ❮ Unique ID ❯
Tags: zsh, tooling, productivity, shell
Published: 2022-03-09 05:45:35

![❮ ZI ❯](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/u4j7yw2itgeth8bumv8c.png)

<div align="center">

[https://z.digitalclouds.dev](https://z.digitalclouds.dev) | [GitHub](https://github.com/z-shell) | [Twitter](https://twitter.com/zshell_zi)
</div>

---

This plugin provides a **unique number** that identifies a **running** Zshell session, in its shell variable `$ZUID_ID`.

Besides this unique number, also a unique _codename_ is provided, in shell variable `$ZUID_CODENAME`.

Once you load this plugin, the two parameters will be set, and their values will not be available to other Zshell sessions (being thus _unique_).

`$ZUID_ID` is a progressing number starting from `1`.

`$ZUID_CODENAME` is chosen from a list of predefined codenames, see the default list below.

An example use case is to hold logs in files `.../mylog-${ZUID_CODENAME}.log`,

 so that two different Zshells will not write to the same file at the same time.

---

Default codenames are:

- atlantis (for `ZUID_ID` == `1`)
- echelon (for `ZUID_ID` == `2`)
- quantum (etc.)
- ion
- proxima
- polaris
- solar
- momentum
- hyper
- gloom
- velocity
- future
- enigma
- andromeda
- saturn
- jupiter
- aslan
- commodore
- falcon
- persepolis
- dharma
- samsara
- prodigy
- ethereal
- epiphany
- aurora
- oblivion


Zstyle configuration allows to customize the codenames:



```shell
zstyle :plugin:zuid codenames paper metal wood plastic # first 4 shells will have those codenames
```


## Install Zsh Unique ID

**The plugin is "standalone"**, which means that only sourcing it is needed (without using a plugin manager).


 So to install, unpack `zsh-unique-id` somewhere and add:


```shell
source {where-zsh-unique-id-is}/zsh-unique-id.plugin.zsh
```


to `zshrc`.


Sourcing is recommended, because it can be done early,
 at top of zshrc, without a plugin manager – to acquire the unique identification as early as possible.


### With [ZI](https://github.com/z-shell/zi)


Add `zi load z-shell/zsh-unique-id` to your `.zshrc` file. ZI will clone the plugin the next time you start zsh.

 To update issue `zi update z-shell/zsh-unique-id`.


### With Antigen


Add `antigen bundle z-shell/zsh-unique-id` to your `.zshrc` file.

 Antigen will handle cloning the plugin for you automatically the next time you start zsh.


### With Oh-My-Zsh


1. `cd ~/.oh-my-zsh/custom/plugins`
2. `git clone git@github.com:z-shell/zsh-unique-id.git`
3. Add `zsh-unique-id` to your plugin list.


### With Zgen


Add `zgen load z-shell/zsh-unique-id` to your .zshrc file in the same place you're doing your other `zgen load` calls in.
⚙️ ❮ ZZComplete ❯
Tags: zsh, tooling, productivity, shell
Published: 2022-03-09 05:41:08

<div align="center">
  <a href="https://github.com/z-shell/zi">
  <img src="https://raw.githubusercontent.com/z-shell/zi/main/docs/images/logo.png" alt="Logo" width="60" height="60"><img/></a>

[https://z.digitalclouds.dev](https://z.digitalclouds.dev) | [GitHub](https://github.com/z-shell) | [Twitter](https://twitter.com/zshell_zi)

- Please see related [**post**](https://dev.to/z-shell/zui-for-zsh-hackers-61k) as **this is additional tool for** [⬢ ZUI](https://dev.to/z-shell/zui-for-zsh-hackers-61k).
</div>

---

## Asciinema preview

You can resize the video like a normal web page, i.e.: with `Ctrl`/`Cmd`+`plus` and `Ctrl`/`Cmd`+`minus`.

[![asciicast](https://asciinema.org/a/293365.svg)](https://asciinema.org/a/293365)

## Motivation

Complete options from manual pages – press <kbd>Ctrl-F</kbd> to start the completer.

The completion of options has drawbacks:

1. The user has to remember a part of the option he wants to complete.
2. OR he is forced to read through all the options (listed after <kbd>TAB</kbd>).

With ZZ Complete, the user can:

1. Search in the manual for arbitrary text related to the option.

2. Then select the option that's located nearby the found text.

3. Also, the user can read about the possible values of the options and select them too.


## Installation


### Dependencies

The plugin needs also [ZUI](https://github.com/z-shell/zui) plugin and a Zsh that is built with the `zsh/curses` module.

### Manual

Clone the Repository.

```shell
git clone https://github.com/z-shell/zzcomplete ~/path/to/zzcomplete
```

And add the following to your `zshrc` file.

```shell
source ~/path/to/zzcomplete/zzcomplete.plugin.zsh
```

### ZI

Add the following to your `zshrc` file.

```shell
zi light z-shell/zzcomplete
```

### Antigen

Add the following to your `zshrc` file.

```shell
antigen bundle z-shell/zzcomplete
```

### Zgen

Add the following to your `.zshrc` file in the same place you're doing your other `zgen load` calls in.

```shell
zgen load z-shell/zzcomplete
```

### Oh-My-Zsh

Clone the Repository.

```shell
git clone https://github.com/z-shell/zzcomplete.git \
  ~ZSH_CUSTOM/plugins/zzcomplete
```

And add `zzcomplete` to your plugin list.
Introducing Cakecutter🍰- Start projects quickly from Cakes (templates)
Tags: showdev, rust, productivity, devops
Published: 2022-03-09 05:17:36

After I posted the [create-python-app blog](https://dev.to/dhravya/create-react-app-but-for-python-1fa9), a member of the dev community (@abhinav1217) suggested me to modularize it - so that people can write all sorts of templates and can do all sorts of stuff with it.

This was an amazing idea for me. I started thinking about the implementation right away. Here's what I came up with - [Cakecutter](https://github.com/Dhravya/Cakecutter).

Cakecutter is a utility tool that helps you to create new projects quickly from pre-built cakes - The cakes can be as insane as your imagination, with multiple files, boilerplate code, command runs, etc. (More to be added soon, but I'm not sure what I should add)

All `Cakefiles` (The file that act as templates) are easily shareable and can be made by beginners because of the easy syntax of TOML (tom's obvious, minimal language).

According to the Cakefile, the rust script automatically generates the project for you, almost instantly, and runs any commands in a chronological order. Here's a Demo: 
![Demo](https://us-east-1.tixte.net/uploads/img.dhravya.dev/l0ikgtw4f0a.gif)

(Notice how it initialised venv and ran requirements.txt)

Cakefiles are incredibly easy to configure, here's a simple file that generates a python project (same as create-python-project)
```toml
[filestructure]
root = ['.gitignore', '.env', 'requirements.txt', 'README.md', 'LICENSE']
src = ['main.py']

[content]
src--main-py = """
print("Hello World")
"""

-gitignore = """
target/
.env
venv/
"""

requirements-txt = """requests"""

[commands]
1 = ['python', '-m', 'venv', 'venv']
3 = ['python', 'src/main.py']
```

So you can write multiple cakefiles for yourself (according to your needs, for different languages) and run them every time you start a project. Add a `Cake.toml` file in your github repository to encourage others to use the cakefile and the project as a template!

## Features
- Create projects from pre-built cakes (templates) and make your own!
- Supports all languages (Python, Js, Rust, Go, you name it.)
- Cross-platform
- Super fast ⚡
- Get Cakes from github or use local Cakefiles

### Usage
```
cakecutter [TEMPLATE_NAME]
```
You can also use cakes from github (Provided they have a `Cake.toml` file in the root directory of the repository):
```
cakecutter https://github.com/dhravya/cakecutter
```

I'll add example templates (For python, js, etc. ) soon. Feel free to comment your thoughts below!
- What more can I add?
- What should python, js, rust, etc. templates have?
- Would you use it in your everyday lives?

The project is super duper light ,[a little more than 40 kbs](https://crates.io/crates/cakecutter) so don't worry about that either
Day 13/100, 100 Days of Code
Tags: javascript, beginners, codenewbie, devjournal
Published: 2022-03-09 05:07:49

Ok so, I'm actually a few days further than 13 but I keep forgetting to post! Or I get to wrapped up with the day and get lazy. But I am still coding, which is a good thing.

Took a break from online classes the last couple days and decided to take on a small project. I must say... I've learned more in the last 24 hours than I have in the last week.  I'm starting to understand why seasoned coders will say to build something. Anything.

The project was to create a Pokedex. Heard of Pokemon? It's basically a tracker that has information on all the original Pokemon. A database. I'm following a tutorial on youtube for it, and it's pretty fun. A breath of fresh air from class.

So the part I've been working on is the Javascript(obviously). The html and Css code were provided. Although I'm not technically writing the JS from scratch, I'm still understanding more by following along with the instructors code and typing it out myself. I haven't finished yet. Maybe this will be my first thing I upload to github? I've learned a little about the **fetch** method and API's, and how to access my html and css files.

Finished off the day with more class content. Learning how to use the **this** keyword, and when to use an arrow function vs the method with it.

I'll remember to post tomorrow! happy coding
Model Dapur Kekinian Modern Untuk Desain Interior Rumah
Tags: interiordesainmedan, jasainteriordesainmedan, jasakontraktormedan, kontraktormedan
Published: 2022-03-09 04:21:54


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qs2kpnch3m33frd1p03g.jpg)
Memiliki dapur yang menarik dan nyaman adalah impian semua orang. Tampilan dapur yang menarik bisa menambah semangat kita untuk memasak. Dapur yang sesuai dengan desain interior tata ruang rumah bisa meningkatkan keindahan ruang hunian. Membuat dapur yang cantik bukan lah suatu hal yang mudah. Karena membutuhkan dana yang tidak murah pula. 

Adanya berbagai keterbatasan dan kendala sering kali membuat kita semakin sulit untuk mewujudkan dapur yang menarik. [Jasa Kontraktor Medan](https://kontraktor.kactusidea.com/) atau dengan [Jasa Interior Desain Medan](https://kontraktor.kactusidea.com/) agar dapat membantu kamu dalam menciptakan dapur yang menarik. Berikut ini ada beberapa model dapur kekinian Modern yang bisa kamu jadikan referensi :

<strong>Desain Dapur Minimalis</strong> 
Aksen putih dan putih selalu menjadi inspirasi untuk menciptakan dapur minimalis yang unik.
Tidak hanya praktis, dekorasi dapur ini juga dimanfaatkan semaksimal mungkin, sehingga tetap terlihat cantik. Bisa dikatakan dapur jenis ini sangat cocok untuk Anda yang memiliki budget terbatas.

<strong>Desain Dapur Mini Bar</strong>
Meski ruang terbatas, dapur minimalis dan minimalis ini terasa sangat mewah dan elegan. Anda dapat melihat Sisi mewah dapur ini karena menggunakan material mengkilap pada kitchen set.
Tidak hanya mewah, dekorasi di dapur ini juga minimalis namun fungsional. Jika Anda mempelajarinya dengan benar, rasanya seperti Anda bisa memasak seperti koki di restoran.

<strong>Desain Dapur Dengan Letter L</strong>
Untuk memaksimalkan ruang dapur Anda, penggunaan ruang dengan kitchen set huruf L bisa menjadi alternatif inspirasi dapur rumah Anda. Penataan dapur seperti penempatan kaca juga sangat baik.
Agar ruangan tidak terlihat sempit rak penyimpanan sengaja tidak ditutup.

<strong>Desain Dapur Minimalis Rustic</strong>
Soalnya, tak hanya minimalis dan mewah, tapi juga nuansa dapur sederhana dengan inspirasi rustic.
Anda juga bisa mengaplikasikan aksen dekoratif dan aksesoris ala rumah tua di dapur klasik rumah Anda.

<strong>Desain Dapur Kitchen Island</strong>
Selain desain dapur sebagai faktor utama, inspirasi dapur dari aksesoris dan aksen unik dapat mempercantik dapur rumah Anda.Ini bisa menjadi inspirasi yang sangat menyenangkan, apalagi jika dapur di rumah terlihat begitu unik dan berbeda dari biasanya.
Bukan tidak mungkin barang bekas juga bisa menjadi inspirasi dekorasi dapur yang unik dan menyenangkan. Dapur minimalis sederhana bukan hanya sekedar ruang untuk memasak, tetapi juga dekorasi unik yang bisa menarik.

Selain dekorasi dan desain, Anda bisa memadukan inspirasi dapur rumah Anda dengan aksen unik dengan memperhatikan detail untuk menambah keindahan di dapur.
What are the services done by a solidity developers?
Tags: javascript, beginners, programming, webdev
Published: 2022-03-09 04:40:26

From developing smart contracts to different Blockchain-based apps, our Solidity Development Company has crafted over 100 Smart Contracts and worked on 20+ Blockchain projects. Bring your vision to life with our Solidity Development Services:


**CrowdSale Contract Development** : Work with the best [hire solidity developers](https://www.cronj.com/solidity-developers) who have extensive knowledge of writing smart contracts for the CrowdSale round. Hence, get complete assistance with regulating issues tokens efficiently and securely to contributors.


**dApp Development** :Our Solidity Development Company ensures on and off-chain data as well as microservices with advanced dApps.Our Blockchain Solidity developers identify user behavior, dApp components as well as database requirements to develop requirement-aligned dApp.


**Digital Token Development** : Mint, upgrade, halt, and transfer your digital tokens with our Solidity Development Company. We handpick the top Solidity Programmers who have extensive knowledge of smart contracts of ERC20 token creation for streamlined development and monetization.


**Exchange Platform Development** : Our Solidity Engineers have great command and intelligence in developing smart contracts for the Exchange Platforms. Hence, our Solidity Development Agency code, tests, and deploys exchange platforms smoothly and securely.


**FullStack Development** :From cross-platform development to backend SQL , No SQL database, and IPFS development, our Solidity Development Company helps you in developing advanced solutions 30% faster at just $8/hour!


**Smart Contracts Development** : Our [solidity developers](https://www.cronj.com/solidity-developers) helps you to code, test as well as deploy contracts on business-complaint Blockchain platforms. Our Solidity Engineers have extensive experience in developing contracts on Ethereum, Neo, Hedera Hashgraph , and other platforms.
ECDSA使用，实现多签 （二）
Tags: ecdsa, solidity, blockchain
Published: 2022-03-09 04:38:30

昨天留下多签的代码还没写，今天还是写了一会会儿，前文在这里：[ECDSA使用，实现多签 （一） | 登链社区 | 深入浅出区块链技术 (learnblockchain.cn)](https://learnblockchain.cn/article/3546)
这篇文章有参考一个老外的文章，但是做了一些优化，思路一致。
[Signature Replay | Hack Solidity #13 | by Zuhaib Mohammed | Jan, 2022 | CoinsBench (medium.com)](https://medium.com/coinsbench/signature-replay-hack-solidity-13-735997ad02e5)

一个简单的多签，运用到一个转账业务中就是，一个老板小李建立了一个多签合约，初始化公司股东，小张，小王，小陈，小马几个人做为操作人，有这几个人同意，就可以通过多签合约给其他人转钱。

首先初始化合约，最多5个操作人，最少3个人同意就可以转：

```
constructor(address[] memory _operators) public payable {
        owner = msg.sender;
        require(_operators.length <= 5, "Too many operators");
        for (uint8 i = 0; i < _operators.length; i++) {
            operators[i] = _operators[i];
        }
    }
```

转账函数定义：

```
function transfer(
        address _to,
        uint256 _amount,
        bytes[] memory sigs
    ) external {
        bytes32 txHash = getTxHash(_to, _amount);

        require(_checkSigs(txHash, sigs, 2), "Only operators can transfer");
        (bool sender, ) = _to.call{value: _amount}("");
        require(sender, "sender failed");
    }
```

_checkSigs是我们的关键函数，检查签名是不是这个人签出来的。

```
function _checkSigs(
        bytes32 txhash,
        bytes[] memory sigs,
        uint8 numSigs //
    ) private view returns (bool) {
        uint8 c = 0;
        //emit log_named_uint("sigs len", sigs.length);
        bool[] memory bops = new bool[](operators.length);
        for (uint8 i = 0; i < sigs.length; i++) {
            //emit log_named_bytes("txHash", txHash);
            if (!_findOpt(txhash.recover(sigs[i]), bops)) {
                return false;
            }
            c++;
        }
        //emit log_named_uint("c", c);
        if (c > numSigs) {
            return true;
        } else {
            return false;
        }
    }
```

```
function _findOpt(address sigaddr, bool[] memory bops)
        private
        view
        returns (
            bool
        )
    {
        for (uint8 i = 0; i < operators.length; i++) {
            //emit log_named_address("operators", operators[i]);
            if (operators[i] != address(0x0)) {
                if (bops[i] == false) {
                    if (operators[i] == sigaddr) {
                        //emit log_named_address("find", operators[i]);
                        bops[i] = true;
                        //emit log("set true");
                        return true;
                    }
                }
            } else {
                break;
            }
        }
        return false;
    }
```

为什么这样就可以？
检查签名是不是这个人签出来的，看我前面的ECDSA用法讲解。 [ECDSA使用，实现多签 （一） | 登链社区 | 深入浅出区块链技术 (learnblockchain.cn)](https://learnblockchain.cn/article/3546)
相对于老外的代码，我做了一些升级，操作人变成5个，转账时候的签名，可以不按照顺序进行签名对比。
对比网站上其他人的文章，我这个更像一个技术原型，所以我会继续更新，弄一个更偏向业务的合约。测试用例什么的，都在github上，看测试用例，应该更能理解是怎么回事。
更详细的，看我github上的仓库：
[SimpleMultiSig](https://github.com/daodao2007/SimpleMultiSig)
FilePyle
Tags: python, filepyle, url, downloader
Published: 2022-03-09 04:29:34

Hey all it is been a while writing a post to dev.to.
I am going to write a post about a filepyle a file downloader made using python by Advait Jadhav.
[Github](https://github.com/777advait/FilePyle/)
While writing this post the version of file pyle is 0.1.2.
It similar to scoop,wget,curl. But this can run in any OS that has python installed.
Now let's use it

1. Clone the github repo.
`git clone https://github.com/777advait/FilePyle/`

2. Install the dependencies.
   `pip install -r requirements.txt`
3.Install filepyle
`python setup.py install`
4.Now let's use filepyle
`filepyle --url <url/to/the/file> --path <path/where/files/will/be/downloaded>`

Example of downloading python into downloads folder :-
`filepyle --https://www.python.org/ftp/python/3.10.2/python-3.10.2-amd64.exe --path ~/Downloads`
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ncvjjm6pad4tnctnwqr6.png)
 
Thanks,
Umesh
uYouPlus 
Published: 2022-03-09 04:00:01

https://www.techrum.vn/threads/m%E1%BB%9Di-c%E1%BA%ADp-nh%E1%BA%ADt-uyouplus-b%E1%BA%A3n-m%E1%BB%9Bi-nh%E1%BA%A5t-kh%C3%B4i-ph%E1%BB%A5c-n%C3%BAt-dislike-tr%C3%AAn-youtube-s%E1%BB%ADa-l%E1%BB%97i-ch%E1%BA%B7n-qu%E1%BA%A3ng-c%C3%A1o-v%C3%A0-picture-in-picture-ios.560024/
YouTube Transcriber Bookmarklet
Tags: azuretrialhack, php, opensource, beginners
Published: 2022-03-09 03:45:27

# YTCaption - YouTube Transcriber Bookmarklet

Reasons You Will Love YTCaption:

--> Scan the transcript
--> It's finally readable
--> Consume YouTube videos twice as fast!
--> Watch and read so you don't miss anything

Use this with your Personal Knowledge Management (PKM) system to extract  content from a YouTube video. Put your atomic notes in a Zettelkasten vault inside Obsidian. Create smart notes from YouTube videos quickly and easily. 

YTCaption was created because there are so many amazing 20 minute to 2 hours videos that we do not have the time to watch. 

So this is the perfect tool to keep on top of all your favourite YouTube Podcasts. 

You won't be believe how useful it is!

Why sit through the whole entire video just to see what the person is going to be talking about when YTCaption can give you a full YouTube transcript? Wouldn't that be nice? 

Load up any YouTube video and just see the script for the video right there.

This is an easy project to follow along with if you want to build your own. 

This repo uses [GitHub Actions](https://github.com/features/actions) with Azure for Continuous Integration and delivery (CI/CD). 

GitHub Actions allow web developers to automatically test code that is pushed to the repository automatically. It helps web developers be more efficient.

This project is designed to help other web developers learn how to use GitHub Actions.

This repo was made for the [2022 Microsoft Azure Trial Hackathon on DEV!](https://dev.to/devteam/hack-the-microsoft-azure-trial-on-dev-2ne5)


## How To Use this repo

1. Visit the [website](https://ytcaption.azurewebsites.net).
2. Select the button and drag to the bookmark bar of your web browser.
3. Open a YouTube video that has captions.
4. Press the bookmarklet to run this script
5. To repeat process, go to next YouTube video 
6. Refresh the webpage using keystroke "Ctrl or Cmmd + R" 
7. Press the bookmarklet to run this script


### Submission Category: 

[Note]: # (AI Aces, Computing Captains, Low-Code Legends, Java Jackpot, or Wacky Wildcards:)

My PHP web app belongs in the App Service category. PHP 8 is used in the project. 


### Link to Code on GitHub
[Code](https://ytcaption.azurewebsites.net/)

{% github anthonyalvarez/ytcaption %}


[Reminder]: # (Submissions are due on March 8, 2022 @ 11:59 PM UTC)