teleren/devto huggingface dataset:
3 Ways To Learn Coding Within Three Months
Tags: javascript, beginners, programming, career
Published: 2022-01-24 18:23:02

If you desire to code but have no plan on how to get started then this article is for you. Desiring to code is one thing and being consistent about it is another thing. Most [beginners](https://www.anythingprogramming.com/?m=1) give up when things start to go south. Welcome to anythingprogramming.com, in this article I will list some guides that will help you to stay on track without burning out.

**Why Do You Desire To Code?**

The answer to this question might be challenging to figure out. Some see coding as nothing other than sitting in front of your computer to code others derive their passion from others.

Deriving passion from people isn’t bad but the question you have to ask yourself is can I hold on to this passion for long? Do I even understand this passion?

** Are Three months enough to Get Started?**

With consistency and plan, three months will be too much. If you dedicate an hour a day to study continuously without any interruption you will be able to build basic systems or applications.

The most difficult aspect is to get started. You will not be good at coding overnight but with a little bit of dedication and discipline, you will be doing well by watching tutorials videos, reading extensively and noting points.

**Ways To Learn To Code Within Three Months**

  ** 1. Read Books**

There are millions of coding books out there to support you in your [coding](https://www.anythingprogramming.com/?m=1) journey. Note, reading these books will not make you a good programmer but if you practice what is written in the book over time, you will be doing well.

  2  **Sign-Up For Bootcamp**
There are [alternatives](https://www.anythingprogramming.com/?m=1) to this by pursuing a computer science degree. Sign-up to boot camp helps you to be in alignment whiles you make friends with people who have the same interest as you do. Bootcamp shortens the learning curves by giving you the right information which is needed to get started.

3. **Get Mentor**

A mentor is someone who will hold your hands and help you when you are need it. Mentors’ advice helps you think broadly, they also make you aware of what you might be facing in the industry.

 **Conclusion**

It is possible to learn coding within three months or less if you follow the above-listed information. Share this post if you find it informative and educating.

Thank You.
Useful resources to learn Flutter
Tags: flutter, dart, android, ios
Published: 2022-01-24 17:51:16

From more than one year of experience in app development, here are some resources I would like to share with you thorough this blog post! Like and comment your thoughts. 

**YouTube Channels**

- MTECHVIRAL 
[https://www.youtube.com/c/HelloCodepur]


- Reso coder
[https://www.youtube.com/c/ResoCoder]

- Fireship
[https://www.youtube.com/channel/UCsBjURrPoezykLs9EqgamOA]

- Techie Blossom 
[https://www.youtube.com/c/TechieBlossom]

- FilledStacks
[https://www.youtube.com/c/FilledStacks]

- The Net Ninja
[https://www.youtube.com/channel/UCW5YeuERMmlnqo4oq8vwUpg]

- Code With Andrea 
[https://www.youtube.com/c/CodeWithAndrea]

- Raja Yogan 
[https://www.youtube.com/channel/UCjBxAm226XZvgrkO-JyjJgQ]


**Websites**

- FlutterDev
[https://flutter.dev/]

- Filledstacks
[https://www.filledstacks.com/]

- Javatpoint
[https://www.javatpoint.com/] 

- flutterbyexample
[https://flutterbyexample.com/]

- flutter.institute
[https://flutter.institute/]

- Google Codelabs
[https://codelabs.developers.google.com/]

- GeeksforGeeks
[https://www.geeksforgeeks.org/]

- Mindorks Blog
[https://blog.mindorks.com/]

- flutter-examples
[https://flutterbyexample.com/]

- didierboelens
[https://www.didierboelens.com/about/]

**Books**

- Beginning App Dvelopment - By Rap Payne

- Beginning flutter - By Marco Napoli

- Flutter for Beginners - By Alessandro Biessek

- Flutter in Action - By Eric Windmill

- Learn Google Flutter Fast - By Mark Clow 

**The Best Flutter Courses**


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6kbztj38kr93v29z6s4t.jpeg)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p1edve1u9j1bcsd4ay72.jpeg)

You can connect me here!

**Jasmine R. Chourasiya**

LinkedIn :
 [www.linkedin.com/in/jasmine-chourasiya-325882212]
Instagram :
 [https://www.instagram.com/chaurasiajasmine/]
GitHub :
 [https://github.com/Jas-02]
Google Developer Profile :
 [https://developers.google.com/profile/u/Jasmine4]
Twitter :
 [https://twitter.com/4_JasmineC?t=faBbHPkhZvU7ifeMvmyeqw&s=08]
This browser extension can show YouTube dislikes
Tags: youtube, tutorial, news, productivity
Published: 2022-01-24 17:24:57

YouTube has recently removed the dislike count across the platform to avoid mass harassment. But this new extension can actually return the famous dislike button.

![YouTube dislikes Credit:The Next Hint](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7famed29incicbf7rhdh.png)

The disappearance of the dislikes counter leads to controversery. Some creators are even strongly opposed to it. Right now, you can still put a red thumb under a video, but you can't see how many "thumbs down" the video has garnered. Besides, YouTubers still have access to the counter from their YouTube Studio dashboard. Nevertheless, there is a method to make the total number of dislikes appear again under YouTube videos.

## Open source "Return YouTube Dislikes"

According to the [extension's website](https://returnyoutubedislike.com/) , the extension gets data from a combination of archived data from before the official YouTube dislike API shut down, and extrapolated extension user behavior. 
> The extension collects the video ID of the video you are watching, fetches the dislike (and other fields like views, likes, etc) using our API. The extension then displays the dislike count and ratio on the page. If you like or dislike a video, that is recorded and sent to the database so an accurate dislike count can be extrapolated.

In January 2022, this free extension has hit over 2,000,000 downloads in total.

## Redactor's review after one week
######3/5 ★★★☆☆

I tried for my personal for one week use and to be honest that's a really good solution if you are looking for having an opinion about the video that you are watching and to don't waste time on usefulness tutorial. It feels like the old days and I can't part with it. Some people on the internet complain about the dislike numbers not being updated for a long time ago, but it's still enough to make you a good idea if it's shit or not. Unfortunately, it may not work on every new videos uploaded after December 13th 2021, but the team plans to share a API system with the creators.

Download for Chrome, Firefox, Edge, Opera and iOS : [returnyoutubedislike.com](https://returnyoutubedislike.com/)
How to see the contents of stashed changes in Git
Tags: git
Published: 2022-01-24 17:23:49

```
git stash show -p stash@{0}
```

Where `0` is the indexed location of the item in the stash. Find all items in the stash using:

```
git stash list
```

- `git help stash`
- https://stackoverflow.com/questions/3573623/is-it-possible-to-preview-stash-contents-in-git
- https://stackoverflow.com/questions/10725729/see-whats-in-a-stash-without-applying-it
WHAT IS AMAZON DYNAMODB ?
Tags: database, dynamodb, nosql, scalability
Published: 2022-01-24 17:09:56

It is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability.

**FEATURES of DYNAMODB**
• Fully managed NoSQL database service
• Key/value store and document store
• It's a non-relational, key-value type of database
• Fully serverless
• Push button scaling

![features of dynamodb](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lqc9sk5ftebla2z82zp7.png)

**DYNAMODB STREAMS**
 
It captures a time-ordered sequence of item-level modifications in any DynamoDB table and stores this information in a log for up to 24 hours.

Applications can access this log and view the data items as they appeared before and after they were modified, in near-real time.

• Application inserts/updates or deletes item.
• A record is written to DynamoDB stream.
• A Lambda function is triggered.
• The Lambda function writes to CloudWatch Logs.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/84syy4sh7jxghcgycs5e.png)

**DYNAMODB TIME TO LIVE**

Amazon DynamoDB Time to Live (TTL) allows you to define a per-item timestamp to determine when an item is no longer needed.

Shortly after the date and time of the specified timestamp, DynamoDB deletes the item from your table without consuming any write throughput.

TTL is provided at no extra cost as a means to reduce stored data volumes by retaining only the items that remain current for your workload’s needs.

**DYNAMODB ACCELERATOR  (DAX)**
It is a fully managed, highly available, in-memory cache for Amazon DynamoDB that delivers up to a 10 times performance
improvement from milliseconds to microseconds.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/88jwnf898ajnrno06uqw.png)

**FEATURES OF DAX**
• Improves performance from milliseconds to microseconds.
• Can be a read-through cache and write-through cache.
• Used to improve READ and WRITE performance.
• You don't need to modify application logic since DAX is compatible with existing DynamoDB API calls.

**DYNAMODB  GLOBAL TABLES**

DynamoDB Global Tables provides you with a fully managed, multi-region, and multi-active database that delivers fast, local, read and write performance for massively scaled, global applications.

Global tables replicate your DynamoDB tables automatically across your choice of AWS Regions.
5 Articles every WebDev should read this week (#04)
Tags: webdev, tutorial, javascript, programming
Published: 2022-01-24 17:05:39

A curated list of the top five web development must-reads from last week. Don't miss out on the latest web development stories and insights. Read all about the cutting edge in web development, working in tech and the new tools and frameworks while learning a few new tricks every week.

---

## Node v17.4.0 (Current) released

> Take a look at the changelog

 https://nodejs.org/en/blog/release/v17.4.0/

---

## How to Set Up a Node.js Project with TypeScript

> In this tutorial, you will learn how to add TypeScript support to Node.js projects. We will address common needs, such as:

https://blog.appsignal.com/2022/01/19/how-to-set-up-a-nodejs-project-with-typescript.html

---

## Why meaningful testing matters?

> When we look on the term “meaningful testing”, it sounds like a weird abstraction which is spreading across whole software delivery chain, from a requirement to the deployment. So what does the word meaningful means in this context?

https://medium.com/drmax-dev-blog/why-meaningful-testing-matters-cc4c7a443511

---

## Parcel CSS: A new CSS parser, compiler, and minifier written in Rust!

> Parcel CSS has significantly better performance than existing tools, while also improving minification quality. In addition to minification, Parcel CSS handles compiling CSS modules, tree shaking, automatically adding and removing vendor prefixes for your browser targets, and transpiling modern CSS features like nesting, logical properties, level 4 color syntax, and much more.

https://parceljs.org/blog/parcel-css/

---

## The Hottest Front-End Tools in 2021

> Another year has passed and once again I’ve had the privilege of going through the Web Tools Weekly newsletter archives from the past 12 months to hunt down the front-end tools that readers found to be the most interesting during 2021. So, to kick off 2022, I’ve compiled a list of the 60 most popular tools. I’m sure there are at least one or two listed here that you can start using in your front-end projects today.

https://css-tricks.com/hottest-front-end-tools-in-2021/

---

Follow me on [Twitter: @martinkr](http://twitter.com/_martinkr).

Photo by [Alex Kulikov](https://unsplash.com/@burntime) on [Unsplash](https://unsplash.com)

---

[![Subscribe to the weekly modern frontend development newsletter](https://modernfrontend.dev/banner/banner_583-111.png)](https://modernfrontend.dev/)
PyLadies Dublin 1st Meetup of 2022 - Fun Pair Programming and Iterating with Python
Tags: video, python, pyladies, pairprogramming
Published: 2022-01-24 17:04:29

###### (Note: There's a problem uploading video to dev.to, so I've embedded the video for this month's PyLadies Dublin post.)

{% youtube NzbdKKr0R0E %}

🙌 Big thanks to all who attended first PyLadies Dublin event of 2022!

👏👏👏 to our speakers, Aoife and Mo from [Phorest](https://www.phorest.com/) and Laysa from [PyLadies Munich](https://twitter.com/pyladiesmunich).

🙌 A special thanks to [Lei](https://twitter.com/Lei_Shao1) as always for be an awesome co-organiser, and support from Mick co-moderating on Youtube chat.

❤️ I forgot to thank our community partners: [Coding Grace](https://codinggrace.com)(Zoom), [PSF](https://www.python.org/psf/)  (Meetup), [PyLadies](https://pyladies.com/)


🍿 This talk and others are available here: https://www.youtube.com/channel/UCMunGHeQPceOWhNSqlmYWPg (don’t forget to like and subscribe, and hit that 🔔 on our channel)

Also a few things to share from our speakers:

- Vicky’s [announcements](https://docs.google.com/presentation/d/e/2PACX-1vSN7wemx0dIL671AnqjsUFSDRDadYFkjzz9aWObGbFpc7F8s2Ya9ZAFDjFbxXDjkYe4aYY2sYZgD-UH/pub?start=false&loop=false&delayms=3000)
- Laysa’s [Jupyter Notebook](https://github.com/laysauchoa/Presentations/tree/master/iterators-python)
- Laysa’s [twitter thread about iterators](https://twitter.com/laysauchoa/status/1484892730589388801)
- Phorest [job postings page](https://careers.phorest.com/jobs)
- Mo and Aoife’s [blog post about Pair Programming](https://nothingventured.rocks/the-perfect-pair-8d72db3d8a8b)

![PyLadies Dublin and PyLadies Munich CFP for Feb](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r337ud4rtasr6mbeddoe.png)
 
🌈 We had so much fun this month, we are going to partner with [PyLadies Munich](https://twitter.com/pyladiesmunich) for a special joint PyLadies Valentine’s event all around the subject of love and friendship with Python.

❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️
love with Python
friendship with Python
love of Python itself
❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️

* 🗓 When: Tue Feb 15th (18:30, Irish Time)
* ℹ️ Event Page: https://www.meetup.com/PyLadiesDublin/events/283422907/
* Updates as we get them on meetup page as well as at
    - https://twitter.com/PyLadiesDub
    - https://instagram.com/PyLadiesDub
    - https://www.facebook.com/PyladiesDublin
    - https://www.linkedin.com/company/pyladies-dublin

🎤 If you are interested in giving a short talk (5 - 15 mins), you can submit your talk to https://share-eu1.hsforms.com/1JaDd_XRCQFKb3cp0akbz8Af1bg5

---

Any questions at all, if you want to get involved or support our activities, drop us an email at dublin@pyladies.com.
How to make a custom Debounce hook in react js
Tags: react, javascript, beginners, tutorial
Published: 2022-01-24 16:41:00

I could have use the **Loadash** naaahh... 🙅‍♀️ Loadash is too expensive. 

So here is how you can make your own debounce effect with **custom hooks** in _react js_.

> updated as per @lukeshiru comment

`useDebouncedEffect.tsx`

```javascript
import { DependencyList, EffectCallback, useEffect } from "react";

export const useDebouncedEffect = (
   effect: EffectCallback, 
   delay: number, 
   deps?: DependencyList
) => {
  useEffect(() => {
    const handler = setTimeout(() => effect(), delay);

    return () => clearTimeout(handler);
    // using || operator because 
    // if its optional then it can be undefined.
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, [...(deps || []), delay]);
};

```

To use this hook simply call It like this:

```javascript
import { useDebouncedEffect } from "./useDebouncedEffect";

  // debounce search onchange
  // eslint-disable-next-line react-hooks/exhaustive-deps
  useDebouncedEffect(
    () => {
       // function which will be running on effect, 
       // in our case when something changes in search box.
       changeSearchState();
    },
    // time to wait before effect runs
    debounceTimeInMilliseconds
    // this is the dependency, if it changes it will trigger 
    // the debounce again
    [search]
  );
```

credit - from Internet [R&D]

Thanks for reading this far 😃

> Fact: Do you know you can hit that follow button on top right and make it disappear 😄. Do not believe me try once 👍
Usar eventos para conectar contratos inteligentes con una aplicación web
Published: 2022-01-24 16:39:17

## Eventos para interactuar con aplicaciones web descentralizadas

En nuestro Solidity, los contratos inteligentes podemos desencadenar eventos para comunicar que algo sucedió en la cadena de bloques. Las aplicaciones web o cualquier tipo de front-end (como una aplicación móvil) pueden escuchar estos eventos y tomar medidas cuando ocurren.

Si has utilizado un intercambio descentralizado (o DEX) como SushiSwap o PancakeSwap, o cualquier otra aplicación web3, probablemente haya visto eventos en acción en los botones de carga y mensajes emergentes cuando se confirman las transacciones. Por lo general, estos son eventos desencadenados por la aplicación del contrato inteligente.

## Cómo agregar eventos a un contrato inteligente

Lo primero que debemos hacer es declarar el evento con la palabra clave _**Event**_. Los eventos pueden enviar varios parámetros, por lo que debemos incluirlos en la definición del evento (¡no olvide incluir la definición del tipo!). La siguiente definición de evento solo tendrá una variable booleana como carga útil:

` event ShoppingLotteryEvent(bool winner);`

Para activar un evento de nuestro contrato inteligente, usaremos la palabra clave **_emit_** seguida del nombre del evento y la carga útil que enviará. Es muy similar a llamar a una función:

emit ShoppingLotteryEvent(true);

## Capture eventos de Sodility en la web

Para interactuar con nuestro contrato inteligente desde el front-end, necesitaremos la dirección del contrato y el abi. Una vez que hayamos inicializado nuestra instancia de contrato (en este ejemplo, estoy usando ethers.js), podemos usar el método on() para manejar los eventos.

```
// Contract information
const winnerNumber = require('/artifacts/solidity/contracts/LuckyNumber.sol/LuckyNumber.json');
const contractAddress = '0xabc12345fecad67343434....';

const provider = new ethers.providers.Web3Provider(window.ethereum);

// Contract instance
const contract = new ethers.Contract(
  contractAddress,
  winnerNumber.abi,
  provider
);

console.log('contract :>> ', contract);
// handle event from contract
contract.on('ShoppingLotteryEvent', function (result) {
  console.log(`Result is ${result}`);
});
```

El método _**on()**_ recibe el nombre del evento y una función de devolución de llamada con toda la carga útil enviada desde el evento. En el ejemplo anterior, solo lo imprimimos en la consola, pero podemos usar este evento para mostrar un mensaje emergente, una notificación o lo que necesitemos en nuestra aplicación web.
Remove Java Developers NullPointerException Hell
Tags: java, maven, programming, nullpointerexception
Published: 2022-01-24 16:33:18

 

1. NullUtil.executeViaNullSafer method will execute the given function on Non-Null Values and, when the value is null It will return Null instead of executing the function.

2. NullUtil.executeExecutorOrDefault method will execute the given function on Non-Null Values and, If the value is null, It will return the given default value.

3. NullUtil.executeMutator method mutates the reference type values without returning anything. If the value is null, It will not do anything.

4. NullUtil.replaceNull method will replace the null value with the given defaultValue. when the value is not null, It will return the value.

5. NullUtil.hasText method is used to check the String value has any kind of text or not
.
6. NullUtil.trimValue method will be used to trim the String without causing the null pointer Exception.

More details about this Util class you can find on my medium article(https://rcvaram.medium.com/remove-dirty-nullchecks-in-java-8aca833dc276) or my stackoverflow answer(https://stackoverflow.com/a/70200959/12894468).
New Course Announcement
Published: 2022-01-24 16:23:59

---
title: New Course Announcement
published: true
description: 
tags: 
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ay4w7rtp10iu5oln04bb.png
---
We have a _huge_ gift for you today.  Our existing HTML and CSS course has been completely reworked from the ground up.(You can find the new stuff in our full-stack [Rails](https://www.theodinproject.com/paths/full-stack-ruby-on-rails) and [JavaScript](https://www.theodinproject.com/paths/full-stack-javascript?) paths) The course that is being replaced was some of the oldest content on our site.  Some of it dated all the way back to 2013 when Odin was first constructed, and it was really ready for a makeover.

The new content has been carefully crafted to give you the tools you need to be successful in modern web development contexts, and should help you to be able to make the projects you'll be creating in the rest of our curriculum really stand out. We cover many of the latest developments in HTML and CSS such as flexbox, grid, custom-properties (aka CSS-variables), and of course we have an updated section on 'responsive design', so that you'll be able to make your projects mobile-ready.

In addition to writing a ton of new content, we've also reconsidered the placement of this content in our curriculum.  You'll notice that our HTML/CSS content is now split into two smaller courses ([here](https://www.theodinproject.com/paths/full-stack-javascript/courses/intermediate-html-and-css) and [here](https://www.theodinproject.com/paths/full-stack-javascript/courses/advanced-html-and-css)).  We want to give you the prerequisites you need to be successful, but we don't want you to feel bogged down by too much content before you get into the other JavaScript or Ruby courses.

If you were working on the existing HTML/CSS course, we would recommend going back and starting this new one from scratch.  It really is better in every way.  You can still find the old lessons on [Github](https://github.com/TheOdinProject/curriculum/tree/main/html_css) if you need to reference something.

Additionally, if you're working through our Rails or JavaScript curriculum, you'll see that this new stuff has been inserted before your current position. You can judge for yourself how you want to handle this.  Feel free to finish your current course, or find a good mid-way stopping point before jumping back and completing this new content.

As always, this curriculum is a group effort, so when you inevitably find a missing comma, or some "interesting" grammar don't hesitate to submit a Pull Request to our curriculum repo and let us know.

Happy Styling!