teleren/devto huggingface dataset:
What Are Your Best Tips For Interviewing?: CodeNewbie Podcast
Tags: podcast, codenewbie, beginners, career
Published: 2023-06-15 13:00:00

Yesterday on our podcast, software engineer [Stacey Graham](https://twitter.com/Staceyluvstech) discussed her experience creating a career in tech after surviving cancer with @saronyitbarek.

Stacey fell in love with technology in the 7th grade in her first computer class and from there, her curiosity for technology began. She is passionate about coding and loves learning and problem-solving collaboratively in teams. Stacey enjoys building high-quality applications in JavaScript, React, and Angular and enjoys working with RESTful APIs, Node.js, and Express.js. Stacey gets most excited about being challenged while coding and believes there is always something new to learn in web development.

If you didn't get a chance to listen already, find that episode below or wherever you get your podcasts:

{% embed https://dev.to/codenewbieteam/surviving-cancer-building-code-thriving-in-tech-codenewbie-podcast-s24e6-27cd %}

---

**Stacey shared some super helpful tips on interviewing, balancing priorities, and finding communities that we would love to share!**

1. During the interview process, it may be hard to ensure whether a job will eventually lead you to reaching your specific career goals. However, you can always ask directly how to achieve upward growth, which can hopefully make decision-making easier long-term.

2. A strong support system can help keep you motivated to succeed, especially when navigating a hardship while also working.

3. Make sure to follow up with your recruiters after sending out an initial inquiry or job application!
 
4. There are many ways to find community with other coders! If you want, you can use [Meetup](https://www.meetup.com) to search for groups in your city, find Slack groups, volunteer at conferences, or join an organization focused on your interests, such as [WomenWhoCode](https://www.womenwhocode.com/).

---

If you listened— what are your best tips for interviewing, finding a coding community, and navigating hardships while working?

Send us your thoughts below and don't forget to give it a listen here or wherever you listen to your podcasts! 💜
Celebrating 10,000+ Stars on GitHub with an Exciting Giveaway!
Tags: github, giveaway, opensource, twitter
Published: 2023-06-15 12:56:19

Introduction:

We have reached an incredible milestone on GitHub, amassing over 10,000 stars for our project! To express our gratitude and celebrate this achievement, we are thrilled to announce a special giveaway. Three lucky winners will have the chance to win a Logitech Gaming Headset. If you're an avid developer or simply interested in enhancing your gaming experience, this is an opportunity you won't want to miss. Read on to learn how you can participate and increase your chances of winning!

Giveaway Rules:
To enter the giveaway and become eligible for the prize draw, please follow the steps outlined below:

1. Follow @amplication on Twitter: Make sure you're following our [official Twitter account](https://amplication.com/discord), @amplication. This will help you stay updated with the latest news, updates, and future giveaways.

2. [Retweet the Giveaway Announcement](https://twitter.com/amplication/status/1669326238480228352?s=20): Locate the giveaway announcement tweet on our Twitter profile and hit the retweet button. This step will help spread the word about our milestone and increase your chances of winning.

3. Star Us on GitHub: Visit our GitHub repository at https://github.com/amplication/amplication and give us a star! By starring our repository, you show your support and help us gain recognition within the developer community.

4. [Reply with Your GitHub Username in this tweet](https://twitter.com/amplication/status/1669326238480228352?s=20): Once you have completed the previous steps, reply to the giveaway announcement tweet with your GitHub username. This step ensures that we can track your entry and contact you if you win.

PS: [Brownie Points for joining our Discord Server](https:///amplication.com/discord).

Important Details:
- The deadline for participating in the giveaway is 25th June 2023. Make sure to complete all the steps before this date to secure your entry.

- The giveaway is open to participants worldwide. We encourage developers from all corners of the globe to take part in this exciting event.

- Winners will be randomly selected from the pool of eligible entries. The more steps you complete, the higher your chances of winning.

- We will announce the lucky winners on Twitter shortly after the deadline. Be sure to keep an eye on our profile for updates. If you win, we will reach out to you via direct message on Twitter to arrange the delivery of your Logitech Gaming Headset.
Postmortem
Published: 2023-06-15 12:46:23

## Issue summary:

- Duration of the outage: May 7, 2023, at 8:15 AM EDT - May 7, 2023, at 9:00 AM EDT
- Impact: Users trying to access the second web server were unable to do so during the outage.
- The service was shut down for all of the users trying to access it.
- The reason was a misconfigured firewall rule that was blocking incoming traffic.

## Timeline:

- 7th May 2023, 8:15 AM EDT A monitoring notice that revealed the second server was not responding to queries helped find the problem.
- Action took: The crew looked at the second server logs but discovered no difficulties.
- They discovered that queries were not getting to the second server after looking at the load balancer logs.
- Ineffective investigation/debugging strategies: The team spent some time looking over the server logs because they initially thought the second server might be the issue.
- Because the problem was with inbound traffic rather than the server itself, the investigation took a deceptive turn.
- The network engineering team was notified of the situation and asked to look into the network settings.
- The issue was fixed once the network engineering team found and fixed the incorrectly set firewall rule that was obstructing inbound traffic to the second server.

## Root cause and resolution:

- An incorrectly set up firewall rule that was preventing incoming traffic to this server was the main culprit.
- The problem was resolved once the network engineering team located and corrected the incorrect firewall rule.

## Corrective and preventative measures:

- The team will perform routine network configuration inspections to make sure that firewall rules are correctly implemented in order to stop similar problems from occurring in the future.
- Tasks to address the issue include:
 - Reviewing all servers' firewall rules to make sure they are configured properly
 - Putting in place extra traffic monitoring to find any other configuration errors or anomalies
 - Reviewing incident response processes to make sure that errors are found and fixed right away.
Extend WooCommerce API Authentication for Custom API Integration
Tags: webdev, programming, tutorial, javascript
Published: 2023-06-15 12:24:53

{% embed https://www.youtube.com/watch?v=NDUkbhaA3Js %}

Say goodbye to integration roadblocks and hello to a secure and efficient connection!

In this eye-opening video, we delve into the world of WooCommerce and show you how to unlock the full potential of your custom API integration. 

🔒 Discover the secrets of seamless authentication as we guide you step-by-step through extending WooCommerce API authentication for your custom API.

🚀 With our expert tips and tricks, you'll learn how to create a custom API endpoint and implement the rock-solid authentication mechanism of OAuth 1.0a. We'll help you obtain consumer keys and secrets, ensuring your integration is protected and ready to go.

💡 Whether you're a developer, business owner, or simply curious about WooCommerce API integration, this video is a must-watch. Join us as we empower you to harness the immense potential of WooCommerce and revolutionize your API integration game.

Download Plugin: https://github.com/adeleyeayodeji/Ade-WooCommerce-API-Authentication

#woocommerce #api #biggidroid #wpplugins
NFT shopping centers
Tags: nft, cryptocurrency, shop
Published: 2023-06-15 12:20:31

Explore the Future of Digital Property with the Development of NFTs at Boosty Labs. Explore our extensive blockchain solutions pertaining to NFTs and shopping centers [https://boostylabs.com/blockchain/nft](https://boostylabs.com/blockchain/nft), these solutions will allow artists and collectors to conduct transactions that are secure, transparent, and decentralized. Discover more about the potential of NFTs and how our expert team can assist you in transforming your concept into a reality.
Something to consider when sharing state with Zustand
Tags: webdev, javascript, react, beginners
Published: 2023-06-15 12:09:31

I've been using #zustand as store for my latest #react #typescript project and I want to share with you something that cost me some serious time and headache so that you won't fall into the same pith.


Say that you have the following store saved in zustand:


```


interface TransactionHashState {

  transactionHash: string;

  getTransactionHash: (transactionHash: string) => void;

}


export const useTransactionHashStore = create<TransactionHashState>()(

  (set) => ({

    transactionHash: "",

    getTransactionHash: (transactionHash) =>

      set(() => ({ transactionHash: transactionHash })),

  })

);

```

In your components, there are two ways of calling its value:


The first way, that is `  const { getTransactionHash } = useTransactionHashStore.getState();` will work fine in most cases, but it will only take a snapshot of the state so when you make a change, it won't update in real time. I repeat, it won't update in real time. 


If you want it to update immediately, you should call it like   `const { getTransactionHash } = useTransactionHashStore()`  (without the getState method), and all will be fine. 


#reactdeveloper #reactdevelopment #webdeveloper #webdevelopers #webdevelopment
First-of-its-kind chat-and-pay Crypto Wallet
Tags: cryptocurrency, web3, blockchain, cryptocurrencywallet
Published: 2023-06-15 11:41:42

The decentralized multi-chain wallet, AnCrypto, is in the front of the ongoing movement to bring cryptocurrencies into the public arena. It has a plethora of innovative features, such as the first **chat and pay** capabilities in history, web3 domain names, and cutting-edge blockchain bridges. 
AnCrypto seeks to fundamentally alter how users transact with crypto assets. Its forte - combining the ease of instant messaging with the power of blockchain technology to make crypto transactions as simple as sending a text.

Indeed, it is the Google Pay of the cryptocurrency world, seamlessly making transactions simultaneous with conversations.

Cryptocurrency sending and receiving has always been difficult because most wallets need users to manually enter wallet addresses and quantities. By removing this obstacle, AnCrypto enables users to request or give money right in the chat window.
And that's not it.
Here's more of its amazing features:

1. **Cross-Chain Bridg**e: From the same application, users can conduct transactions across many different blockchains.

2. **NFTs and dApps**: Supports NFTs and dApps - all within the same app. You can have all your NFTs in the same dashboard, share it with other users, and browse your favourite dApps. 

3. **Complete decentralization**: Users are the real owners of their identities, assets, and data. Credits to its non-custodial ability!

4. **Updates**: AnCrypto keeps on adding more blockchains to its ecosystem, supporting more tokens, have its own native AWT tokens (given for free in contests), and adds on to its security standards.

To explore more of its excellent abilities, customizable features, and earn high returns on your crypto investments, try the [AnCrypto](https://t.ly/ppmX
) app!
sum, max, min, and statistics method with list and generator in python
Tags: python, generator, statistics
Published: 2023-06-15 11:37:34

If you have data both in list or generator, you can simplify the calculation by using `sum()`, `max()` and `min()` built-in functions.

```
>>> mylist = [_ * 3 for _ in range(10)]
>>> mylist
[0, 3, 6, 9, 12, 15, 18, 21, 24, 27]
>>> max(mylist)
27
>>> min(mylist)
0
>>> sum(mylist)
135
```

if you use a generator, you need to re-create the iterated objects by re-defined the generator objects.

```
>>> mygenerator = (_ * 3 for _ in range(10))
>>> mygenerator
<generator object <genexpr> at 0x1035170d0>
>>> max(mygenerator)
27
>>> min(mygenerator) # all objects have been iterated in the previous calculation max
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: min() arg is an empty sequence
>>> mygenerator = (_ * 3 for _ in range(10))
>>> min(mygenerator)
0
>>> sum(_ * 3 for _ in range(10))
135
>>> 
```


and you can also use methods in statistics module:
```
>>> import statistics
>>> statistics.median_low(_ * 3 for _ in range(10))
12
>>> statistics.median_high(_ * 3 for _ in range(10))
15
>>> statistics.median(_ * 3 for _ in range(10))
13.5
>>> statistics.mean(_ * 3 for _ in range(10))
13.5
>>> statistics.mean(mylist)
13.5
>>> statistics.median_low(mylist)
12
```

see all statistics methods at https://docs.python.org/3.9/library/statistics.html

read more about generator at https://wiki.python.org/moin/Generators
Google it!
Tags: webdev, frontend
Published: 2023-06-15 11:36:10

A lot of new developers think google stuff, means that you're not good at it.Do not be scared to google anything you don't remember. It's not a sign that you're bad at what you do. As a developer, no one expects you to remember all the syntaxes of every programing language. Do not put yourself under any pressure, let google help you.
The important thing is that you know what you're looking for and you understand how that code works.
A simple idea about how to grow the Ruby community
Tags: ruby, rails
Published: 2023-06-15 11:31:09

As a followup from my article yesterday about [Why write technical content on a blog and not only on social media](https://allaboutcoding.ghinda.com/why-write-technical-content-on-a-blog-and-not-only-on-social-media) about how I think we can grow the Ruby community::

**Write more technical content about Ruby.**

## Why will this help?

First, more content means more reach and thus will offer more people the chance to learn about Ruby and how we solve problems with Ruby.

Second, it will contribute to having more learning resources. And as more people will write, more diverse writing styles will be and thus better chances for someone to find something that fits their learning style.

Third, it will increase the business/tech leads exposure to Ruby and solutions created in Ruby.

In the long publishing continuously

## What to write about?

Anything about how to use Ruby to solve problems. If you don't have any idea, take any old article and write a fresh version of it.

Here are some more ideas:

* You can write a small introduction to how to use a web framework, like Rails or Hanami 2 or Sinatra or Roda any other web framework
    
* Or you can write how you solved something in your daily job where you work with Ruby. Tell us the problem and the solution
    
* Write about how you think people that are learning Ruby or Rails or Hanami or Roda should approach their learning path
    
* Write about how you are writing Ruby code, what is important for you and what you like about Ruby
    

I assure you, YOU have something to write about. Even if other people wrote about the same topic, you must write your article.

In general, I recommend you read this blog post by Julia Evans -&gt; [Some Blogging Myths](https://jvns.ca/blog/2023/06/05/some-blogging-myths)

### Maybe

You will say that what's the point of writing such articles now that we have LLMs and maybe people will go to ChatGPT to learn Ruby.

If we don't write fresh content, the next generation of LLMs will be trained on less Ruby content, so it might be less fit to answer questions about Ruby in the future.

---

Enjoyed this article?

Join my [**Short Ruby News**](https://shortruby.com/) **newsletter** for weekly Ruby updates. Also, check out my co-authored **book**, [**LintingRuby**](https://lintingruby.com/), for insights on automated code checks. For more Ruby **learning resources**, visit [**rubyandrails.info**](http://rubyandrails.info)**
Alternatives: Actions-Class and Javascript Executer in Selenium
Tags: selenium
Published: 2023-06-15 11:22:48

# Action Class
perform operations from keyboard events and mouse events (even dragging-and-dropping, holding a key and then performing mouse operations, ..) 
we can building a complex chain of events exactly like a user doing these manually
The Actions class implements the builder pattern to create a composite action containing a group of other actions. 

We need to create an instance of the Actions class by passing the instance of driver class to the constructor in the following way:

```Java
Actions a = new Actions(driver); 
```
then we can use the methods of the action Class like MouseOver, ContextClick/RightClick, DoubleClick ... 

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


```Java 
a.moveToElement(element).conextClick().build().performe(); 
```
1. before performing the action, you have to build the entire element. that enables to composit actions
2. to execute it you have to invoke performe() !
```Java
a.moveToElement(textbox).click().keyDown(Keys.SHIFT).sendKeys("hello").build().performe(); 
```
codigniter 3 + Docker
Published: 2023-06-15 11:19:21

Hey there,

i'm a full stack PHP developer. I have worked with PHP frameworks like Codeigniter and Laravel.

For some weeks now, i have been trying to dockerize my codeigniter project.

I use php 7.4, PostGres 13 and codeigniter 3 for the project. I am really having difficulties setting up the project in a container.

i have use the image on docker up, the bitami codigner but its still doesn't work.

Can anyone help?
Design Pattern Series - Single Responsibility Principle
Tags: srp, designpatterns, java, automationtesting
Published: 2023-06-15 11:05:31

Before we Move on to Design Patterns, It is vital to see the SOLID Principles, the First Acronym S - > Single Responsibility principle. Let's dive into the What, Why and How 

**What is SRP?**
The Single Responsibility Principle (SRP) is a fundamental principle in software development and object-oriented design. It states that a class or module should have only one reason to change, meaning it should have a single responsibility.

**Why SRP is needed?**
SRP is needed for the below reasons

1. Code maintainability
2. Code reusability
3. Easy Testability
4. Flexibility and extensibility
5. Reduced coupling

**How SRP is implemented?**
For this implementation, we will use Java as the programming Language

we will have three classes

- one without SRP
- SRP implemented
- how functionality separated

```
public class WithoutSingleResponsibility {

    private String book;
    private String author;

    public String getAuthor() {
        return author;
    }
    public void setAuthor(String author) {
        this.author = author;
    }
    public String getBook() {
        return book;
    }
    public void setBook(String book) {
        this.book = book;
    }
    public void searchBook() {

    }
}

```
**Explanation:**
In the Above class, we have the getters and setters for the author and Book, and the intention of the class is to deal with the book and author. But the problem arises with the search book method. It leads to problems when the author name and book are set. So search method is not part of this class, and it needs to be separated from this class.

```
public class WithSingleResponsibility {

    private String book;
    private String author;

    public String getAuthor() {
        return author;
    }
    public void setAuthor(String author) {
        this.author = author;
    }
    public String getBook() {
        return book;
    }
    public void setBook(String book) {
        this.book = book;
    }

}
```
**Explanation:**
Now that we have removed the search book from this class, this is a classical example of SRP.

```
public class WithSingleResponsibilitySearchSeperated {

    WithSingleResponsibility withSingleResponsibility;

public WithSingleResponsibilitySearchSeperated(WithSingleResponsibility withSingleResponsibility) {
this.withSingleResponsibility = withSingleResponsibility;

}

public void searchBook() {
    withSingleResponsibility.getBook();
    withSingleResponsibility.getAuthor();
}
    
}
```
**Explanation**
This is the Separated class, where we create an object of the SRP class and will use it according to the functionality
second hand laptop
Tags: eazypc
Published: 2023-06-15 10:54:36

Eazypc is a popular online platform for buying and selling 
[second-hand laptops.](uhttps://eazypc.in/best-second-hand-laptop-in-delhi/rl) They provide a marketplace where individuals can list their used laptops for sale, and potential buyers can browse through the listings and make purchases. Here's how you can go about buying a second-hand laptop on Eazypc:
Visit the Eazypc website: Go to the Eazypc website (you can search for it on your preferred search engine) and navigate to their laptop section.
How to sort objects according to True and False values in Javascript
Tags: javascript, array, webdev, beginners
Published: 2023-06-15 10:40:21

You can sort an array of objects according to their boolean properties by the .sort() method. Here’s an example of how you can sort an array of objects with a boolean property:

```
const users = [
    {
        name: "John",
        isVerified: false,
    },
    {
        name: "Kim",
        isVerified: true,
    },
    {
        name: "Mehdi",
        isVerified: false,
    },
]
users.sort((a,b) =>{ 
    if(a.isVerified && !b.isVerified) {
        return -1;
    }else if (!a.isVerified && b.isVerified){
        return 1;
    }else {
        return 0
    }
})
console.log(users);
// [
     { name: "Kim", isVerified: true },
     { name: "John", isVerified: false },
     { name: "Mehdi", isVerified: false }
   ]
```

In the .sort() method if the comparator function returns a value less than 0, it means that a should come before b in the sorted array. If it returns a value greater than 0, it means that b should come before a. If it returns 0, it means that the relative order of a and b doesn’t matter.