teleren/devto huggingface dataset:
This is a story, a story about the difficulties I was experiencing. I struggled with every step
Published: 2024-05-21 17:53:32

My major in college has nothing to do with computers. But during this period, the idea of making a website came up. However, due to my laziness, playfulness and immaturity of thought, I did not persist in this matter. I didn't even have a superficial understanding of computers during my four years in college. Four years passed in such a wasteful manner. But unexpectedly, I came up with a very nice domain name for this website. I thought it was perfect. Now after graduating from college, I still miss this website. I feel extremely regretful for the time I wasted in the past. I have been thinking, if I had persevered, what would I be like now? Will this website be a huge success? I have no idea. But on the other hand, it is also a life experience. The best time to plant a tree was ten years ago, and the second best time was now. I re-conceived it with zero experience. I feel lucky because the existence of large language models such as Chatgpt, Gemini, and Copilot have given me a lot of help. However, large language models are not people after all. In some specific cases, In terms of details, I still can't overcome it. Although it already has a basic static appearance (html, css), I feel that many parts still cannot withstand scrutiny. Some functions and styles are due to the lack of basic computer knowledge and my own basic knowledge. If you are not solid, you still can’t do it. Not to mention the greater difficulties of data interaction waiting for you. I hope I can meet some friends here who can give me some pointers. Maybe I lack the ability to achieve equal returns, but if there is an opportunity in the future, I will definitely thank you. I would like to leave my email xspaceme@gamil.com

Maybe I am too impatient. I think I should calm down and learn more basic knowledge and lay a solid foundation. But the repeated failures are really frustrating. Now I am thinking about what to do next every day. Although I have given myself a lot of positive psychological hints, the frustration still lingers.Maybe I am too impatient. I think I should calm down and learn more basic knowledge and lay a solid foundation. But the repeated failures are really frustrating. Now I am thinking about what to do next every day. Although I have given myself a lot of positive psychological hints, the frustration still lingers. If possible, you can leave your email address or you can send a message to me, xspaceme@gmail.com and I will definitely reply in time.
T-Shirt Tuesday
Tags: jokes, watercooler, discuss
Published: 2024-05-21 17:49:35

**T-Shirt Tuesday!**

Inspired by [Ben's Monday Meme series](https://dev.to/ben/meme-monday-5hdi), and conversations on our [Discord Community](https://discord.com/invite/ZCj5hFv8xV), we are back with:

**Phrases you'd like to have in a T-Shirt**

Today's cover image comes from [Pachi's](https://dev.to/pachicodes) comment on last week post. 

And I would like to ask you what phrase would make you buy a t-shirt without thinking 2x?

Let us know in the comments.
Using ArgoCD Image Updater with ACR
Published: 2024-05-21 17:49:25

We may want the updater to trigger a deployment when an image is pushed to Azure Container Registry.  

Create a secret used by argocd image updater to authenticate to ACR.

```
resource "kubernetes_secret" "argocd_image_updater_acr" {
  metadata {
    name      = "argocd-image-updater-acr-${var.service}"
    namespace = "argocd"
  }

  data = {
    ".dockerconfigjson" = jsonencode({
      auths = {
        "${azurerm_container_registry.acr.login_server}" = {
          auth = base64encode("${azurerm_container_registry.acr.admin_username}:${azurerm_container_registry.acr.admin_password}")
        }
      }
    })
  }
}
```

We install the updater in our cluster using terraform.

```
resource "helm_release" "image_updater" {
  name       = "argocd-image-updater"
  repository = "https://argoproj.github.io/argo-helm"
  chart      = "argocd-image-updater"
  namespace  = "argocd"

  values = [
    <<EOF
config:
  registries:
    - name: ACR demo-app
      api_url: https://devdemoapp.azurecr.io
      prefix: devdemoapp.azurecr.io
      ping: yes
      credentials: pullsecret:argocd/argocd-image-updater-acr-demo-app
EOF
  ]
}
```

These are the annotations for our ArgoCD application.

```
  annotations:
    argocd-image-updater.argoproj.io/image-list: repo=devdemoapp.azurecr.io/devdemoapp
    argocd-image-updater.argoproj.io/repo.update-strategy: newest-build
```

To troubleshooot, we can log in to the argocd container.

`kubectl exec -n argocd -it argocd-image-updater-7fc87697d5-qtnhn -- ash`

Test the connection to ECR.

`argocd-image-updater test devdemoapp.azurecr.io/devdemoapp  --update-strategy newest-build --credentials pullsecret:argocd/argocd-image-updater-acr-demo-app`

Trigger a deploymemnt.

`argocd-image-updater run --once --loglevel trace --argocd-namespace argocd  --metrics-port 0`
Understanding Low Code Mobile App Development Platforms
Tags: flutter, firebase, webdev, beginners
Published: 2024-05-21 17:22:40


Low Code Mobile App Development platforms have revolutionized app creation, empowering businesses to meet the demands of today’s mobile-centric world. By simplifying development processes and leveraging innovative tools and APIs, these platforms enable faster delivery of high-quality apps while fostering innovation and adaptation to market changes.
[read full article](https://flutters.in/low-code-mobile-app-development/)
AWS Amplify Fullstack TypeScript is a set of tools and services provided by AWS
Tags: devchallenge, amplify, fullstack
Published: 2024-05-21 17:20:55


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

AWS Amplify Fullstack TypeScript is a set of tools and services provided by AWS (Amazon Web Services) that enables developers to build scalable, secure, and efficient full-stack applications using TypeScript. It includes a suite of features and tools that help streamline the development process, from backend to frontend, and deploy applications on the cloud.

Some key features of AWS Amplify Fullstack TypeScript include:

1. *Backend*: AWS Amplify provides a set of backend tools, such as AWS Lambda, API Gateway, and Amazon DynamoDB, to build scalable and secure backend services.

2. *Frontend*: AWS Amplify offers a set of frontend tools, such as AWS Amplify UI, to build responsive and interactive user interfaces.

3. *Authentication*: AWS Amplify provides authentication services, such as AWS Cognito, to manage user authentication and authorization.

4. *Data Storage*: AWS Amplify offers data storage services, such as Amazon S3 and Amazon DynamoDB, to store and manage application data.

5. *Deployment*: AWS Amplify provides deployment services, such as AWS Amplify Hosting, to deploy applications on the cloud.

6. *Monitoring and Analytics*: AWS Amplify offers monitoring and analytics services, such as AWS CloudWatch and Amazon CloudFront, to monitor and analyze application performance.

Using AWS Amplify Fullstack TypeScript, developers can build complete applications, from backend to frontend, using a single programming language (TypeScript) and a unified set of tools and services. This enables faster development, easier maintenance, and scalable deployment of applications on the cloud.
Unlock Success with Mobile App Development Consulting
Tags: beginners, programming, flutter, firebase
Published: 2024-05-21 17:11:32


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

Unlock your mobile app’s potential with TechAhead’s expert consulting services. Our dedicated team provides comprehensive solutions to help you dominate your market and outshine competitors. With a proven track record and trusted by top global brands, we ensure your app’s success from concept to launch and beyond.
[read full article](https://flutters.in/mobile-app-development-consulting/)
Best Language for Mobile App Development in 2024
Tags: webdev, beginners, flutter, firebase
Published: 2024-05-21 17:08:43

In today’s digital era, mobile app development continues to evolve swiftly. With a plethora of options available, developers in 2024 face the challenge of choosing the best programming language for crafting innovative and efficient mobile applications. Here’s a concise overview of the top 10 languages making waves in this dynamic field.
[read full article](https://flutters.in/best-language-for-mobile-app-development/)
Understanding Dummy Reservations: A Handy Guide for Travelers
Published: 2024-05-21 17:08:06

In the evolving world of travel, smart strategies are essential to navigate logistical challenges and meet various requirements. One such strategy that has gained popularity among savvy travelers is the use of "[dummy reservations](https://dummyflights.com)." These reservations, while not intended for actual use, serve crucial purposes from fulfilling visa requirements to providing travel flexibility. Here’s an insightful look into what dummy reservations are, their uses, and how to employ them effectively and responsibly.
Understanding the Technology Behind Flutter
Tags: webdev, flutter, firebase
Published: 2024-05-21 17:07:26

Flutter is an open-source UI toolkit by Google, designed for building cross-platform applications. It allows developers to create apps for various platforms like Android, iOS, and web using a single codebase. Here’s a look at the technology stack that makes Flutter powerful and flexible.
[read full article here](https://flutters.in/understanding-the-technology-behind-flutter/
)
Learning AWS Day by Day — Day 71 — Amazon FSx for Lustre
Tags: aws, beginners, cloud, cloudcomputing
Published: 2024-05-21 17:03:50

Exploring AWS !!

Day 71

Amazon FSx for Lustre

Lustre makes it easy to launch and run the files systems.
Lustre file system is open-source, parallel file system supporting requirements of HPC simulation environments.

Features:
High-performance file system
Multiple deployment options
Integration with S3
Data accessible to other AWS services
Accessible from on-prem
Fully managed AWS service


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



Integration of Lustre with S3 makes it easier process datasets. On linking with S3, Lustre shows all object as files, and any changes made will be reflected in the bucket too.

Use Cases:
Machine Learning: ML workloads use large training data, multiple instances need to process this data simultaneously, so shared file storage system is very useful here.
Media processing and Transcoding: Media workflow such as, video rendering and visual effects, need compute and storage resources to handle massive data created.

Pricing Example for Windows File Server
Lets say we want to store 10 TB of general purpose file share data using HDD storage in Virginia region. Based on deduplication savings of 50-60%, we provision a 5 TB multi-AZ file system with 16 MBps of throughput capacity. Also assume that we have an average backup of 5 TB during the month.

Total monthly charge for Windows File Server:
 Storage: 5 TB x $0.025 GB-month = $128/month
 Throughput: 16 Mbps x $4.50/Mbps-month = $72/month
 Backup: 5 TB x $0.050/GB-month = $256/month
 Total Monthly Charge: $456 ($0.045/GB-month for 10 TB of data)

Pricing Example for Lustre
Lets say we have a scratch file system in Virginia, provisioned with 4800 GB of storage, and we spin our file system for 8 hour workload everyday and the shut it down. We do this for a complete month.

Total monthly charge for Lustre:
 $0.14 GB-month/30/24 = $0.000194/GB-hour
 4800 GB x $0.000194/GB-hour x 8 hours x 30 days = $224
 Total Monthly Charge for Lustre: $224
Essential Skills Every Aspiring Frontend Developer Should Learn
Tags: webdev, javascript, frontend, react
Published: 2024-05-21 17:00:36

Here are ten essential skills every aspiring frontend developer should learn:

1. **HTML/CSS Mastery**: Fundamental languages for building and styling web pages. HTML structures content, while CSS handles presentation and layout.

2. **JavaScript Proficiency**: Core scripting language for adding interactivity to web pages. Essential for dynamic content and user engagement.

3. **Responsive Design**: Ability to create web pages that look and function well on various devices and screen sizes using techniques like media queries and flexible layouts.

4. **Version Control with Git**: Knowledge of Git for tracking changes, collaborating with others, and managing project versions. GitHub is a popular platform for hosting repositories.

5. **Frameworks and Libraries**: Familiarity with popular tools like React, Angular, or Vue.js that help streamline development and manage complex applications.

6. **Browser Developer Tools**: Proficiency in using built-in browser tools for debugging, inspecting elements, and analyzing performance issues.

7. **Preprocessors and Build Tools**: Experience with tools like Sass (for CSS preprocessing) and Webpack or Gulp (for automating tasks and optimizing assets).

8. **Accessibility Best Practices**: Understanding how to make websites usable for people with disabilities, following standards like WCAG (Web Content Accessibility Guidelines).

9. **APIs and AJAX**: Ability to fetch and manipulate data from servers using APIs and AJAX, enabling asynchronous web page updates without reloading.

10. **Soft Skills**: Effective communication, problem-solving, and teamwork skills are crucial for collaborating with designers, back-end developers, and other stakeholders.

Happy Learning 🎉
78. Subsets
Tags: php, leetcode, algorithms, programming
Published: 2024-05-21 16:50:48

78\. Subsets

Medium

Given an integer array `nums` of **unique** elements, return _all possible subsets[^1] (the power set)._

The solution set **must not** contain duplicate subsets. Return the solution in **any order**.

**Example 1:**

- **Input:** nums = [1,2,3]
- **Output:** [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]

**Example 2:**

- **Input:** nums = [0]
- **Output:** [[],[0]] 


**Constraints:**

- <code>1 <= nums.length <= 10</code>
- <code>-10 <= nums[i] <= 10</code>
- All the numbers of `nums` are **unique**.

[^1]: **Subset** <code>A **subset** of an array is a selection of elements (possibly none) of the array.</code>

**Solution:**

```
class Solution {

    /**
     * @param Integer[] $nums
     * @return Integer[][]
     */
    function subsets($nums) {
        $ans = [[]];    
        foreach($nums as $num){
            $ans_size = count($ans);            
            for($i = 0; $i < $ans_size; $i++){
                $cur = $ans[$i];
                $cur[] = $num;
                $ans[] = $cur;
            }
        }        
        return $ans;
    }
}
```

**Contact Links**

- **[LinkedIn](https://www.linkedin.com/in/arifulhaque/)**
- **[GitHub](https://github.com/mah-shamim)**
Today I learned: HTML and CSS
Tags: todayilearned, tdil
Published: 2024-05-21 16:30:10

Over the past three days, I embarked on an educational journey to learn HTML and CSS which are the foundational languages for web development. Here's a summary of what I've learned:

Day 1: Introduction to HTML
I learned the fundamentals of HTML in creating a static website.

Day 2: CSS
This day I was able to learn the fundamentals of CSS and how it can add style to my webpages and make a more dynamic experience.

Day 3: Box Model, Layout, FlexBox, and Grid
The final day of this module, I spent learning more advanced aspects of web-programming such as Box-Models and Flexbox. These tools and skills help me create webpages that are stylistically sophisticated, increasingly user-friendly, and appealing in terms of design.

In just three days, I've gained a solid understanding of HTML and CSS. Covering everything from basic structure and content creation to advanced styling and layout techniques. This knowledge sets the foundation for creating beautiful and functional web pages, and I look forward to diving even deeper into web development!

Resources:

Codecademy Docs: HTML and CSS
Mozilla Documentation: Full list of HTML tags
Codecademy Workspaces: HTML and CSS
Hoppscotch vs Postman - Why choose Hoppscotch?
Tags: api, webdev, programming, opensource
Published: 2024-05-21 16:23:51

At Hoppscotch, our mission is to make API testing accessible to everyone involved in the product development process, whether they are technical or non-technical. This is one reason why [Hoppscotch has a web app](https://hoppscotch.io/) that can be accessed without an account.

Anyone, anywhere can start using Hoppscotch instantly, helping them ship products faster!

[We also offer a native desktop app](https://hoppscotch.com/download) (currently in alpha release) that makes it convenient to test APIs directly from your computer.

But why choose Hoppscotch over its proprietary alternative, Postman?

## Test your APIs offline.

Postman requires you to be online even for testing local APIs. With Hoppscotch, you can work with your APIs without an internet connection.
 
Even the web app operates offline by caching locally and functioning as a PWA, allowing you to test APIs anywhere, anytime!

## Collaboration 
Postman’s free plan only allows collaboration with up to 3 members and charges $14 per user per month for additional users on their paid plan. With Hoppscotch, you can add unlimited collaborators to a workspace at no extra cost.
 
Hoppscotch also lets you create private workspaces and assign workspace roles, features that Postman’s free/basic plan does not offer.

## Local First / Optional Cloud Sync 
While Postman forces all users to sync their data to the cloud, Hoppscotch’s Personal Workspace is designed to allow users to disable cloud sync if they prefer, storing all their data locally. Moreover, all your data is stored locally when using Hoppscotch without logging in.

We’re working on bringing more advanced capabilities to our local-first mode, enabling users to have greater control over where their data resides.

---

Let's see how the free versions of Postman and Hoppscotch compare against each other.

![Hoppscotch vs Postman](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/poonu2z07logpepi0w94.png)

## Self Hosted API Testing
Hoppscotch enables you to choose where your data resides. One approach is to enhance our local-first mode (currently a work in progress). 

The other approach allows users and organizations to deploy Hoppscotch on-premise. Hoppscotch is the only API testing client that has both cloud and self-hosted offerings. If you’re interested in self-hosting Hoppscotch, [check out our documentation.](https://docs.hoppscotch.io/documentation/self-host/getting-started)

Hoppscotch is the only API client that does the job right. We believe that anyone should be able to get started with API testing and have control over their data.

However, there are certain features currently missing from our API testing client, such as API documentation and API mocking & monitoring. We believe there are better approaches to solve these problems, and that's how we’re moving Hoppscotch forward. 

We aim to solve problems around the API ecosystem not just by building an API testing client, but as as a company which solves problems around the entire API ecosystem!

The API client is just the beginning!
Rowing programming language
Tags: programming, compiler, lowlevel
Published: 2024-05-21 16:19:27

Hey guys, I have been recently working on a C compiler for a programming language I invented based on rowing dynamics. It’s inspired by brainf**k but all oriented to rowing. If you like the project please help me by contributing or leaving a star! Thank you :)
[project](https://github.com/tommasocerruti/rowlang)
Custom Book Boxes
Tags: printingbookboxes, custombookboxes, bookpackagingboxes
Published: 2024-05-21 16:17:30

Get your custom book boxes set in any size and style, and deliver your books to your consumers. We give your book collection a one-of-a-kind look. To create the perfect look and feel for your books.  You can choose from a wide variety of materials, including cardboard, corrugated cardboard, craft paper, and stiff. We also make boxes for mailing books.

As of today, Book In A Box is changing its name to CCB. Since the inception of human beings on this planet.  Man developed writing and reading and started carving them on stones, leaves, and leather. Box of Books is a digital disruptor in the education space.

A book is a true friend of the human being from our textbook to our favorite amateur books; it’s been a part of our life. But keeping wholesale books safe and unharmed is a challenge-bearing task. Claws Custom Boxes brings you an innovative solution for exclusive branded customized rigid Book Boxes.

We are primarily dedicated to books. Whatever size and shape of your books you want. We cater to all your needs and give you the liberty of choosing color and layout for your **[Custom Book Boxes](https://www.clawscustomboxes.com/product/book-boxes/)** shipping. Just tell us the shape and size you need us to make for you. We are always here to assist you with every concern of the book packaging boxes Ideas.
101 Python Automation Scripts: Streamlining Tasks and Boosting Productivity | Tushar Aggarwal
Tags: python, programming, beginners, cheatsheet
Published: 2024-05-21 16:02:45

Using Python we can automate many things and sometimes I feel like everything. Tushar Aggarwal shared 101 Python scripts with explanations to automate different things from Web Scraping to System Monitoring.

{% embed https://python.plainenglish.io/a-comprehensive-guide-to-python-automation-streamlining-tasks-and-boosting-productivity-fad00c5b62c5 %}
Bug-to-Error Distance
Tags: codequality, programming
Published: 2024-05-22 05:12:30

---
title: Bug-to-Error Distance
published: true
date: 2024-05-21 16:02:11 UTC
tags: codequality,programming
canonical_url: 
---

I hadn’t articulated this before, but I recently realized that I have an internal metric for assessing bugs and errors.

![](https://cdn-images-1.medium.com/max/1024/0*UIj2vwU3TRJiJSwk)
_Photo by Nuno Antunes on Unsplash_

In this context, a _bug_ is a piece of code that doesn’t do what the programmer intended, and an _error_ is an undesired outcome or behavior.

Now, I am deliberately being vague about what _distance_ refers to, as it’s a bit of a combination. It can mean “in the code”, measured in lines, files, folders, or services. It can also mean “in time”, where the visible error might appear significantly later than when the bug in question was triggered.

For syntax errors, this distance is practically zero. A squiggly line appears right underneath the bug. The error is both co-located and immediate, at least if you are working in a syntax-highlighting editor.

On the other hand, if you have a service that accidentally inserts garbage into your database, you might not discover it for a long time. The distance can be severe, both in terms of code location and time. This sort of bug is significantly harder to track down and fix.

So, it seems valuable to assess code not only on how potentially error-prone a pattern or piece of code is, but also on what the potential bug-to-error distance is, and try to minimize it.

How does one do that in practical terms? For instance, it has affected my view on type inference. For a while, my perspective was: _infer all the things!_ Type safety without the plumbing code, best of both worlds — surely, that’s the way to go, always? Well, specifying types is like creating little valves in the code. “At this point, this is what I expect things to look like”. If you don’t do this, you will have less plumbing code but the price you pay is an increased bug-to-error distance because a piece of data may have a different shape than you expected, inferred from something “far away”.  
I now tend to enable the [explicit-module-boundary-types](https://typescript-eslint.io/rules/explicit-module-boundary-types/) linter rule when writing Typescript, which forces explicitly typed signatures for exported functions. I am sure there are plenty of other similar considerations that I haven’t thought of yet.