teleren/devto huggingface dataset:
MASTERING MYSQL
Tags: opensource, learning, sql, computerscience
Published: 2023-11-04 21:15:58

## **WHAT IS MYSQL?**
The SQL part of MySQL stands for Structured Query Language. MySQL is a relational database management system, Databases are the essential data storage for all software applications. For example, whenever someone conducts a web search, logs in to an account, or completes a transaction, a database system stores the information so it can be accessed in the future, a relational database stores data in separate tables rather than putting all the data in one table.  SQL is the most common standardized language used to access databases. 

## **KEY FEATURES OF MYSQL**
1. Open Source
MySQL is open source means it is available and possible for anyone to use and modify the software, This makes it an attractive choice for businesses and developers looking to manage their data without incurring substantial licensing costs.

2. High Performance
MySQL is known for its speed and efficiency. It can handle large datasets and complex queries with ease, making it a reliable choice for high-traffic websites and data-intensive applications.

3. Cross-Platform Compatibility
MySQL is designed to be platform-independent, which means it can run on various operating systems, including Windows, Linux, macOS, and more. This cross-platform compatibility allows you to make use of your database in the environment that best suits your needs.


MySQL uses Structured Query Language (SQL) for interacting with the database. Here are some essential SQL commands:

1. SELECT: Retrieve data from one or more tables using the SELECT statement.

2. INSERT: Add new records to a table.

3. UPDATE: Modify existing records.

4. DELETE: Remove records from a table.

5. JOIN: Combine data from multiple tables based on a related column.


## **MYSQL BENEFITS**
1. Web Applications: MySQL is a popular choice for building web applications, including content management systems, e-commerce platforms, and social media sites.

2. Reliability: MySQL is one of the most mature and widely used databases. It has been tested in a wide variety of scenarios many times and was confirmed reliable.

3. Data Warehousing: It can be used as a data warehouse to store and analyze large volumes of data for business intelligence and reporting.

**CONCLUSION**
MySQL's versatility and reliability have made it a great choice for developers and organizations. Whether you're building a small-scale web application or managing huge data warehouses, MySQL provides the tools and features necessary to meet your data storage and retrieval needs.
Terminal-based Games!
Tags: beginners, opensource, gamedev, learning
Published: 2023-11-04 21:13:54

[The Repo](https://github.com/Kaamkiya/stdio-games/)

A collection of open-source games that use only the standard i/o!

### The Challenge

A lot of people recommend learning making games to learn programming languages better. So that's exactly what I did. The only difference is that I did not use any graphics at all. I decided to only use text, and I found a lot of games that can be made like that. 

### The Games I Made

I didn't only make games, I made some other things like programs to find the factor of a number.

All the programs I made are below:

- Dice rolling simulation
- Factor finder
- Fizz Buzz
- Infinite Fizz Buzz
- Number guessing game
- Maze game
- Prime digit finder
- Snakes and ladders simulation
- Tic Tac Toe
- Anagram finder
- Image printer
- Collatz sequence simulator
- Currency converter
- Periodic table explorer
- Reflex tester
- Typing speed tester

### About the games

All of the games that I made have a limit of 250 lines. This is so that I didn't get confused when trying to understand it the next day :)

This is a project I will be working on for a really long time, and I recommend to everyone learning a language to make some games and spend a while "testing" them :)

They are all heavily commented to be beginner friendly. 

In making these games, I learned a lot about loops, libraries, modules, and other things involved in coding. I also learned and memorized quite a lot of ANSI escape sequences, because color.

### Conclusion

I made a lot of games in this, and they taught me quite a bit. I highly recommend making a few games to learn a language better. 

The languages I used were Python, C++, Ruby, and Java. 

I also accept contributions, so head over to the [repo](https://github.com/Kaamkiya/stdio-games/) and play or make an issue!
An Intro to who I am
Tags: beginners, webdev, devjournal, discuss
Published: 2023-11-04 21:09:25


<head>
    <title>Introducing Christopher: A Payment Expert with a Focus on PCI Compliance</title>
</head>
<body>

<h1>Hello, I'm Christopher</h1>
<p>I have been deeply immersed in the payment industry for the last two decades, with my recent four years devoted to a keen focus on PCI compliance, particularly for small-to-medium businesses.</p>

<p>In my bio, I describe myself not as a conventional developer, but as a developer of ideas and a startup founder. To excel in my role, I recognize the importance of understanding the challenges and obstacles that developers encounter. Only through this understanding can I effectively address the issues I aim to solve.</p>

<p>If you're unfamiliar with PCI compliance, I encourage you to stay tuned. I'll be delving into it in great detail in a future blog post.</p>

<p>However, the purpose of this particular post is to introduce myself, establish a connection, and, ideally, glean insights from the developer community, especially in the context of eCommerce, web applications, and SaaS models.</p>

<h2>Key Questions</h2>
<p>I'm interested in exploring the following questions:</p>
<ol>
    <li>Why is security and compliance sometimes not a top priority?</li>
    <li>What are the obstacles that often hinder its prioritization?</li>
</ol>

<p>As I mentioned, this blog is my initial step in seeking insights, but until then, I'll rely on my own research, experience, and assumptions to formulate how sales work in the payments industry.</p>

<p>I firmly believe that there are three primary reasons people choose not to take certain actions:</p>
<ol>
    <li>They don't know.</li>
    <li>They don't care.</li>
    <li>They don't understand.</li>
</ol>

<p>We can only base our decisions on the information available to us, and my mission is to equip you, the reader, with comprehensive knowledge, education, and insights into the realm of payments. I aim to serve as a valuable resource while also actively learning from our shared journey.</p>

<p>Thank you for embarking on this journey with me.</p>

</body>
</html>
How did I reduce project onboarding from 2H 😫 to 3 MINUTES 🔥🔥🔥 ?
Tags: productivity, programming, opensource, webdev
Published: 2023-11-04 21:09:16

Following along "Getting started" texts for complex projects can be frustrating. It is also hard to write them well and also it requires the people following it to do many many manual actions.

Taking for example [Cocmd](https://github.com/cocmd)
For someone to get stared it requires having
- git installed 
- node installed
- vscode (or some other ide)
- cloning all the repos 
- setting up git hooks
- going one by one and building with npm and cargo

So instead of writing a long readme on how to do all that.
We decided to use `cocmd` own cli to create super fast onboarding experience for project contributors:




1. Install cocmd [Getting Started](/docs/intro)
2. install and Run the Contributors onboarding packages:

```bash
cocmd install https://github.com/cocmd/cocmd
cocmd run cocmd.contrib-onboarding

```

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


it's going to:
- install git
- install rust
- install node
- clone all Cocmd repos
- build the website
- build cocmd cli
- open vscode with all the repos


# You can do the same for your own projects
# and be the superhero of productivity in your workplace!
- onboarding
- playbooks
- sharing cmd stuff


**Use cocmd to make your dev life better [cocmd.org](https://cocmd.org)**

[join the open source project](https://cocmd.org/docs/contributing/)


## How can you help?

- [Add an Idea 💡💡💡 for a new playbook](https://github.com/cocmd/hub/issues/new)
- [Code with us - 🔥features / 🔥bugs](https://github.com/cocmd/cocmd/contribute)
- [Report a bug 🐞🧨🐞](https://github.com/cocmd/cocmd/issues/new)
People Keep Following Me 😍 And I'm Wondering Why?
Tags: discuss, meta
Published: 2023-11-04 20:26:40

Hello to everyone who's following me. I'm so happy to see that this number is growing and wanted to say thank you for the support! ❤️

The thing I wanted to ask you is... What made you click that follow button? What content did you like or what content are you looking for? I'd be happy to hear something from you, it could motivate me to write some article that you're interested in ☺️

I could share some knowledge about my front-end & design skills, as well as how I build my personal project for tracking personal finances. It's been a while since I started to write it and I've made a lot of mistakes, a bunch of refactored code and it's still not perfect 😂
Placeholder Contributor
Tags: hack23contributor
Published: 2023-11-04 20:45:32

<!-- ✨This template is only meant to get your ideas going, so please feel free to write your own title, structure, and words! ✨ -->

### Intro
<!-- Share a bit about yourself as a contributor. Is this your first Hacktoberfest, or have you contributed to others? Feel free to embed your GitHub account by using {% embed LINK %} -->

### Highs and Lows
<!-- What were some of your biggest accomplishments or light-bulb moments this month? Did any problems come up that seemed impossible to fix? How did you adapt in those cases?  -->

### Growth
<!-- What was your skillset before Hacktoberfest 2023 and how did it improve? Have your learning or career goals changed since working on these new projects? -->
Placeholder Contributor
Tags: hack23contributor
Published: 2023-11-04 20:44:33

<!-- ✨This template is only meant to get your ideas going, so please feel free to write your own title, structure, and words! ✨ -->

### Intro
<!-- Share a bit about yourself as a contributor. Is this your first Hacktoberfest, or have you contributed to others? Feel free to embed your GitHub account by using {% embed LINK %} -->

### Highs and Lows
<!-- What were some of your biggest accomplishments or light-bulb moments this month? Did any problems come up that seemed impossible to fix? How did you adapt in those cases?  -->

### Growth
<!-- What was your skillset before Hacktoberfest 2023 and how did it improve? Have your learning or career goals changed since working on these new projects? -->
Hacktoberfest'23 Contributor
Tags: hack23contributor, opensource, webdev, beginners
Published: 2023-11-04 20:34:23



Myself Sayani Himadeepthi , I'm pursing my Bachelors of Technology in Electronics and Communication Engineering from PDPM IIITDM JABALPUR . I'm very happy  to participate in my first-ever Hacktoberfest and be able to successfully complete the challenge of making 4 pull requests.

I have learned a lot during this 1-month , I have learnt to interact with like-minded people while contributing for projects.
My biggest accomplishment of this month was , when my 1st pr got merged , my joy no knew bounds , might sound little weird but it's true.

Before Hacktoberfest , I didn't know how to use Git and GitHub , but now I'm comfortable in using them , I faced difficulty to interact with people while contributing , I had a sort of fear , but now I'm comfortable in raising questions , and considering any suggestions . And I would definitely like to work on many open-source projects in future.
A Hat-Trick of Hacktoberfest Glory: My Coding Odyssey ⭐🚀
Tags: hack23contributor, hacktoberfest23, hacktoberfest
Published: 2023-11-04 20:28:46


### Intro

Yahoo! I've just wrapped up another exciting season of **Hacktoberfest** in 2023. It has been an incredible journey, and I've gained a wealth of knowledge along the way. My Hacktoberfest adventure began in 2021, and I'm thrilled to say that I've successfully completed this challenge for the third year in a row. It's been an amazing experience of growth and learning! Additionally, I'm excited to share that I've received a fantastic **digital swag kit** as a token of my achievements, making this Hacktoberfest even more special!

### Completed


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

### Reward Kit

![My - DevAffan - HacktberFest2023 reward Kit Swags ](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7622xbtrk321vdnr7fyy.png)
First Post
Tags: hack23contributor
Published: 2023-11-04 20:14:57



### Intro
Hey, there geeks! I am Jatin Sharma. 
It was my first time participating in HACKTOBER FEST 2023, It was such a wonderful Experience for me.[]( https://github.com/JV-2701 )

### Highs and Lows
My biggest achievement was when my first PR got  successfully merged and my lows were when PRs got rejected. 

### Growth
I learned how to use github, how to upload projects, how to contribute to other projects. How to make my own repository and learned about the motive of Hacktober fest.
Command Query Separation
Published: 2023-11-04 19:45:55

**The Command Query Separation principle states that each method should be either a command that performs an action or a query that returns data to the caller but not both**. Asking a question should not modify the answer.

With this principle applied the programmer can code with much more confidence. **The query methods can be used anywhere and in any order since they do not mutate the state**. With commands one has to be more careful.
Boy-Scout Rule
Published: 2023-11-04 19:41:52

The Boy Scouts of America have a simple rule that we can apply to our profession: "**Leave the campground cleaner than you found it"**. The boy-scout rule states that we should always leave the code cleaner than we found it.

When making changes to an existing codebase the code quality tends to degrade, accumulating technical debt. Following the boyscout rule, we should mind the quality with each commit. Technical debt is resisted by continuous refactoring, no matter how small.

**With each commit make sure it does not degrade the codebase quality. Any time someone sees some code that isn't as clear as it should be, they should take the opportunity to fix it right there and then.**
Open/Closed Principle
Published: 2023-11-04 19:35:33

Software entities (e.g. classes) should be **open for extension**, but **closed for modification**. I.e. such an entity can allow its behavior to be modified without altering its source code.

- **Write classes that can be extended** (as opposed to classes that can be modified).
- **Expose only the moving parts that need to change, hide everything else.**
Digital Marketing Agency
Tags: webdev, webdesign, branding, seo
Published: 2023-11-04 19:33:43

Looking to grow your business online? We are a digital marketing agency in Norfolk, UK that specialises in web design, SEO, and branding. We help businesses of all sizes create a strong online presence and achieve their marketing goals.

Our team of experienced professionals can help you with every aspect of your [digital marketing](https://www.byra.co.uk), from designing a beautiful and user-friendly website to developing a comprehensive SEO strategy to building a strong brand identity. We work closely with our clients to understand their unique needs and develop customised solutions that help them achieve their desired results.

Whether you are just getting started with online marketing or you are looking to take your online presence to the next level, we can help. Contact us today for a free consultation to learn more about our services and how we can help you grow your business.

Services:

Web design and development
SEO (search engine optimisation)
Branding
Content marketing
Social media marketing
Paid advertising
Email marketing
Benefits:

Increased website traffic
Improved search engine ranking
More leads and sales
Stronger brand identity
Increased customer engagement
Inversion of Control Principle
Published: 2023-11-04 19:30:21

Inversion of Control is also **known as the Hollywood Principle, "Don't call us, we'll call you"**. It is a design principle in which custom-written portions of a computer program receive the flow of control from a generic framework. 

Inversion of control carries the strong connotation that the reusable code and the problem-specific code are developed independently even though they operate together in an application.

Inversion of control is used to increase modularity of the program and make it extensible.

- 
**To decouple the execution of a task from implementation.**
- To focus a module on the task it is designed for.
- To free modules from assumptions about how other systems do what they do and instead rely on contracts.
- To prevent side effects when replacing a module.

**Where we can see its usage:**
1. Using Factory pattern
2. Using Service Locator pattern
3. Using Dependency Injection
4. Using contextualized lookup
5. Using Template Method pattern
6. Using Strategy pattern
Robustness Principle
Published: 2023-11-04 19:28:00

Collaborating services depend on each others interfaces. Often the interfaces need to evolve causing the other end to receive unspecified data. A naive implementation refuses to collaborate if the received data does not strictly follow the specification. A more sophisticated implementation will still work ignoring the data it does not recognize.

**In order to be able to evolve services you need to ensure that a provider can make changes to support new demands while causing minimal breakage to their existing clients.**

Code that sends commands or data to other machines (or to other programs onthe same machine) should conform completely to the specifications, but code that receives input should accept non-conformant input as long as the meaning is clear.
Orthogonality Principle
Published: 2023-11-04 19:25:47

The basic idea of orthogonality is that things that are not related conceptually should not be related in the system.

It is associated with simplicity; **the more orthogonal the design, the fewer exceptions**. This makes it **easier** to **learn**, **read** and **write** **programs** in a programming language. The meaning of an orthogonal feature is independent of context; the key parameters are symmetry and consistency.
Minimise Coupling Principle
Published: 2023-11-04 19:20:53

**Coupling between modules/components is their degree of mutual interdependence**; **lower coupling is better**. In other words, coupling is the probability that code unit "B" will "break" after an unknown change to code unit "A".

- A change in one module usually forces a ripple effect of changes in other modules.
- Assembly of modules might require more effort and/or time due to the increased inter-module dependency.
- A particular module might be harder to reuse and/or test because dependent modules must be included.
- Developers might be afraid to change code because they aren't sure what might be affected.
State Management in React: Finding the Sweet Spot
Tags: javascript, webdev, react, programming
Published: 2023-11-04 19:17:43

Redux: an overkill or a necessity? That's the burning question on many React developers' minds as they architect their applications.

Is Redux inefficient? Not inherently. Redux offers predictability in state management, making it easier to trace every change to your application's state. However, inefficiency creeps in when it's misused or overused.

### Clarifying the Dilemma

Redux isn't inefficient — misuse is. Imagine a toolbox where you have a hammer (Redux) that's excellent for large, complex tasks (applications). But if you're just hanging a picture frame (a simple component), a pushpin (React's built-in state management) would suffice. The efficiency of Redux depends on the scale and complexity of your project.

### Context Matters

For smaller applications, React's useState and useContext may handle your state needs perfectly. As your application scales, you might reach for solutions like Redux or Context API with useReducer to manage a more complex global state.

### The Right Amount of State Management

It's a balancing act:

No State Management: Your components could end up passing props down an annoyingly long chain (prop-drilling).

Excessive State Management: You might face a bloated app with redundant renders and complex debugging.

To find the middle ground, assess your app's requirements, consider team size, and think about long-term maintenance.

### Embracing the Redux Philosophy

Redux isn't just a library; it's a philosophy of managing state. If you adopt the core principles sensibly — predictable state container, immutability, pure functions — you can avoid inefficiencies and reap the benefits of a robust architecture.

## Conclusion

The efficiency of Redux isn't about the library itself but how you use it. Consider your app's scale, complexity, and future growth before committing to a state management strategy. With thoughtful implementation, Redux can be an efficient and powerful tool in your React applications.

And with that, congratulations! You've taken a significant step in mastering the art of state management in React. Here's to building snappy, scalable, and maintainable apps! 🚀

---

If you're interest in optimization, you may like this amazing research by [Aizhu Xue](https://github.com/aizhuxue007), one of our proud WebCrumbs makers: [Performance Optimization Techniques for React](https://github.com/webcrumbs-community/webcrumbs/blob/main/research/Performance%20Optimization%20Techniques%20for%20React.md)

{% embed https://dev.to/opensourcee/what-is-webcrumbs-m58 %}

{% cta "https://github.com/webcrumbs-community/webcrumbs" %} Join the WebCrumbs Community {% endcta %}
Keep things DRY Principle
Published: 2023-11-04 19:15:45

Every piece of knowledge must have a **single, unambiguous, authoritative representation within a system**.

Each significant **piece** of **functionality** in a program should be implemented in **just one place in the source code**. Where similar **functions** are carried out by distinct pieces of code, it is generally beneficial to combine them into one by abstracting out the varying parts.