teleren/devto huggingface dataset:
How to Update a Forked GitHub Project, Easy and Fast! 🥷🏼
Tags: github, beginners, codenewbie, tutorial
Published: 2023-09-13 14:12:08

Hey guys, how are you?!

I hope you are well!

Today I'd like to share a simple and quick article that can help you in many cases!

If you are a person passionate about contributing to community projects, this article may help you with a question!

**How to update the forked project repository?!**

When we have open source repositories that we fork to make our contributions, we always need to keep them updated! 

Because every moment there may be an update from someone else and as a result, our local repository forked on our GitHub will not be updated according to the original repository!

Now, let's do it!
___

## 🎯 How to Update:
Let's see how to do this with the steps below:

- ✏️ **Step 1**: Add the remote origin and call it “upstream”:
```
git remote add upstream https://github.com/forem/forem.git
```
> You will link the original repository that you forked to your GitHub!

- ✏️ **Step 2**: Fetch all branches of remote upstream:
```
git fetch upstream
```

- ✏️ **Step 3**: Rewrite your master branch with upstream’s master using the command git rebase:
```
git rebase upstream/master
```

- ✏️ **Step 4**: Push your updates to the branch master:
```
git push origin master
```
> You may need to use “--force” to do the push, like: `git push origin master --force`

___

This is all personal!

It's quick and easy to update our forked repository!

And with that we can always keep it in accordance with the original and work peacefully!

I hope you liked it and If you have any suggestions, please leave them in the comment. 

If you found this post helpful, please like and share it, please!

**Happy Coding**, See you soon 🤟🏽🤟🏽
Top Web Design Trends You Shouldn't Miss
Published: 2023-09-13 14:11:48

A good design can make or break your web business. It’s the face of your company and it’s important that it keeps up with the trends.

So, here we have compiled top 10 web design trends for you to follow in 2018 so your website maintains pace with the latest trends.

![](https://cdn-images-1.medium.com/max/2400/0*Kcb5MEMqeKY1YIdS.jpg)
Leet Code 75–1732. Find the Highest Altitude
Tags: leetcode, interviewquestions, java
Published: 2023-09-13 14:07:39

It’s an easy [problem](https://leetcode.com/problems/find-the-highest-altitude/) with the description being:

> There is a biker going on a road trip. The road trip consists of n + 1 points at different altitudes. The biker starts his trip on point 0 with altitude equal 0.

> You are given an integer array gain of length n where gain[i] is the net gain in altitude between points i​​​​​​ and i + 1 for all (0 <= i < n). Return the highest altitude of a point.

> Example 1:

> Input: gain = [-5,1,5,0,-7]
> Output: 1
> Explanation: The altitudes are [0,-5,-4,1,1,-6]. The highest is 1.

> Example 2:

> Input: gain = [-4,-3,-2,-1,4,3,2]
> Output: 0
> Explanation: The altitudes are [0,-4,-7,-9,-10,-6,-3,-1]. The highest is 0.
> Constraints:

> n == gain.length
> 1 <= n <= 100
> -100 <= gain[i] <= 100

To get to know the highest altitude you need to know at every position what’s the altitude and compare with a pointer and when is bigger you use that value, otherwise just keep looking at it.

Since the problem depends on previous altitudes (negative ones as well) you need to sum them as you go to make sure that you are on the highest as possible when comparing it:

```java
class Solution {
    public int largestAltitude(int[] gain) {
        
        // create variables that will be used for the resolution of this problem
        int highestAltitude = 0;
        int sumNetGainAltitude = 0;
        
        for(int i=0 ; i<gain.length ; i++) {
            
            // add the current altitutde index into the sum net gain
            sumNetGainAltitude += gain[i];
            
            // this will avoid any negative values and values that are not bigger than the highest altitude
            if(sumNetGainAltitude > highestAltitude) highestAltitude = sumNetGainAltitude;
        }
        
        return highestAltitude;
    }
}
```

> Runtime: 0 ms, faster than 100.00% of Java online submissions for Find the Highest Altitude.

> Memory Usage: 39.7 MB, less than 97.89% of Java online submissions for Find the Highest Altitude.

---

That’s it! If there is anything thing else to discuss feel free to drop a comment, if I missed anything let me know so I can update accordingly.

Until next post! :)
My first big challenge - configuring docker, kong and nodejs
Tags: beginners, node, docker, javascript
Published: 2023-09-13 14:01:02

Last week, for my learning journey, I wanted to use an API gateway to secure my application.

Searching for solutions, I found [Kong](https://konghq.com/products/kong-gateway), and reading the documentation it seemed easy to install and use.

In the meantime, another tool that I wanted to work with was [Docker](https://www.docker.com/), so there was nothing better than using Kong and my application in a container to learn how it works.

But, nothing is easy when you do it for the first time, and I found my first big challenge!

The installation process was easy and clean, but, using Kong with Nodejs gave me a hard time!

To make everything worse, I was having a rough week at work, and when I had time to code, I was too tired.

After some days, a lot of documentation reading, searching through forums and git, I found what I was doing wrong, and it was a simple mistake.

Like many others, I learned from that mistake and won the battle against Kong and Nodejs!

From this challenge, I started to write a tutorial to help others with the same problem, which I’ll publish soon.

Again, thanks for reading.

If you have feedback, let me know.
How to Optimize SQL Performance with esProc SPL
Published: 2023-09-13 13:51:36



SQL is a powerful language for querying and manipulating data, but it can be difficult to optimize for performance, especially with large datasets and complex queries. In this article, we will discuss the limitations of SQL and how [esProc SPL](https://twitter.com/esProc_SPL) can help.

#### **The Limitations of SQL**

SQL is a declarative language, which means that you specify what you want to do, but not how to do it. This makes it easy to write queries, but it can also make it difficult to optimize them for performance.

One of the biggest limitations of SQL is that it is not designed for ordered data. This means that it can be inefficient to process queries that require ordered data, such as top-N queries or group aggregations.

Another limitation of SQL is that it does not support some advanced data processing techniques, such as window functions and recursion. This can make it difficult to write efficient queries for certain types of data analysis tasks.

#### **How esProc SPL Can Help**

esProc SPL is a high-performance structured processing language that can be used to optimize SQL performance. esProc SPL is based on the ordered set foundation, which allows it to take advantage of more optimization techniques than SQL. As a result, esProc can often achieve much better performance than SQL for the same queries.

**Here are some of the ways that esProc SPL can help to optimize SQL performance:**

- It supports ordered data, which makes it more efficient for processing queries that require ordered data.
- It supports advanced data processing techniques, such as window functions and recursion.
- It provides a number of optimization techniques that can be used to improve the performance of SQL queries.


### **Key Takeaways**

- SQL performance optimization can be challenging, especially with large datasets and complex queries.
- esProc SPL is a high-performance structured processing language that can be used to optimize SQL performance.
- esProc SPL supports ordered data and advanced data processing techniques, which can make it more efficient than SQL for certain types of queries.

### **Conclusion**

If you are looking for a way to improve the performance of your SQL queries, esProc SPL is a good option to consider. esProc SPL is a powerful language that can be used to optimize SQL performance for a variety of workloads. 

Learn more https://github.com/SPLWare/esProc
Master QA Automation Testing Interview Questions with Our Android App
Published: 2023-09-13 13:31:36

Looking to ace your next **Automation Testing** job interview? Our Android app can help. With 500+ interview questions and answers, our app is designed to give you a thorough understanding of Selenium automation testing concepts, Java and Python programming, API testing, and best practices for test automation.

Some of the key topics covered in our app include:

- 
Selenium automation testing using Java and Python
- 
Object-Oriented Programming concepts in Java and Python
- 
Handling different types of web elements using Selenium WebDriver
-
Automation Frameworks such as TestNG, Cucumber, Maven, and Gradle
- 
API testing with Rest Assured
- 
Protector for end-to-end testing


Our app also includes the ability to mark questions as favorites for later review, the option to shuffle questions and answers to enhance your learning experience, and a user-friendly interface designed for easy navigation and use on mobile devices.

Best of all, our app is completely free. No more cramming in front of your computer screen or lugging around heavy books. Your go-to resource for all things Selenium on your smartphone.

So why wait? Download our app today and start preparing for your dream job in software development.

**[Click here](https://bit.ly/2MpAcj0)** to download our free Selenium questions Android app and start preparing for your next job interview today.
AWS Cloud Practitioner clf-c02 practice test | Our Comprehensive eBook & Udemy Course (Free Sample included)
Tags: aws, cloud, quiz
Published: 2023-09-13 13:20:12

**Introduction:** Are you looking to enhance your skills and knowledge in AWS Cloud Practitioner? Look no further! We are excited to introduce our comprehensive eBook and Udemy course that will help you become an expert in AWS Cloud Practitioner. Whether you're a beginner or already have some experience, our resources are designed to provide you with the necessary tools and insights to excel in your AWS journey.

**Comprehensive Coverage:** Our resources leave no stone unturned when it comes to AWS Cloud Practitioner. From the core services such as EC2, S3, and RDS to networking, security, and best practices, we cover it all. You'll be equipped with the knowledge needed to confidently handle any AWS project.

**Kindle E-book:** https://amzn.to/44zbv65
**Paper back Edition**: https://www.amazon.com/dp/B0C1JJV851


**Udemy Practice Test (Discounted Coupon):** [www.udemy.com/course/200-aws-cloud-practitioner-practice](https://www.udemy.com/course/200-aws-cloud-practitioner-practice/?referralCode=1FB12871460C450216E3)

## Sample Quiz:

{% embed https://docs.google.com/forms/d/e/1FAIpQLScoOOYsOhYNPDoooyROosnzHIzGjLMjcm6udwxG-UbFR1hbig/viewform?usp=sf_link %}
Important Java concepts you must know!
Tags: java, springboot, certification, javaconcepts
Published: 2023-09-13 13:00:37

Java is one of the most popular programming languages in the world. It's versatile, platform-independent, and ecosystem of libraries and frameworks make it the preferred one. These some of these essential Java concepts that every Java programmer must know:

1. **Java Virtual Machine (JVM):**
Java code is compiled into bytecode, which runs on the Java Virtual Machine (JVM). Understanding how JVM works is crucial because it's responsible for executing your Java programs.

2. **Object-Oriented Programming (OOP):**
Java is an object-oriented programming language, which means everything in Java is an object. Learn principles like classes, objects, inheritance, polymorphism, encapsulation, and abstraction.

3. **Data Types:**
Data types such as integers, floating-point numbers, characters, and booleans.

4. **Control Statements:**
Understand various control statements like if-else, switch-case, loops (for, while, do-while), and more.

5. **Exception Handling:**
Java uses exception handling to deal with runtime errors and exceptions. Learning how to handle exceptions using try-catch blocks.

6. **Collections Framework:**
Understand collection classes, such as Array List, LinkedList, HashMap, HashSet, and more. 

7. **Multithreading:**
Understand how to create, manage, and synchronize threads for building responsive and scalable applications.

8. **File I/O:**
Use File I/O APIs and concepts to work with files, streams, and readers/writers effectively.

9. **Annotations**:
Annotations are used for metadata and can be powerful tools for configuring and customizing your Java code. Popular frameworks like Spring heavily rely on annotations for configuration.

10. **Design Patterns:**
Understanding design patterns like Singleton, Factory, Observer, and MVC can help you write maintainable and scalable code by following best practices.

## Conclusion:
Mastering these important Java concepts is essential for becoming a proficient Java developer. Even if you are beginner, you can start learning Java effectively. You can practice Java and its concepts by writing and executing codes online using [Java compiler](https://www.tutorialspoint.com/compile_java_online.php)  tool.

## References:

[Java Tutorial](https://www.tutorialspoint.com/java/index.htm)
[Online Certification Programs](https://www.tutorialspoint.com/latest/certifications)
[Online Courses with Certificates](https://www.tutorialspoint.com/latest/courses)
[Java Springboot Certification](https://www.tutorialspoint.com/certification/ultimate-guide-to-java-and-spring-boot-for-2022/index.asp)
GMX trading with Etherspot - Easy as ABC
Tags: webdev, web3, programming, blockchain
Published: 2023-09-13 12:58:48

In this video our DevRel Taylor walks us through the GMX Etherspot integration, we see how easy it is to use a smart contract wallet to batch together transactions and create a much richer user experience.

GMX is a decentralized spot and perpetual exchange that supports low swap fees and low-price impact trades.

You can see the demo yourself here: https://bit.ly/44IfRaJ
Magento 2 Subscriptions & Recurring Payments
Tags: ecommerce, magento2, magentopluigns
Published: 2023-09-13 12:31:50

In the present high-speed online business scene, client maintenance and income dependability are principal. That is where [Magento 2 Subscriptions & Recurring Payments](https://www.milople.com/magento-2-recurring-and-subscription-payments.html) by Milople Advancements become an integral factor. In this complete blog entry, we'll dive profound into this strong arrangement, noting your FAQs route, and at last coming to a game-changing end result.

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

The Force of Memberships and Repeating Instalments

Membership-based models have surprised the online business world. They offer organizations an anticipated income stream while giving clients comfort. Milople Advancements, a forerunner in online business arrangements, perceived this pattern and fostered the Magento 2 Memberships and Repeating Instalments expansion.

What Compels It Stick Out?

Milople's Magento 2 Memberships and Repeating Instalments expansion is a component-rich arrangement that consistently incorporates with your Magento 2 store. It engages you to make adjustable membership items, making it simpler than at any other time to offer membership boxes, magazines, and advanced content, From there, the sky is the limit.

Key Highlights:

•	Adaptable Membership Plans: Designer membership choices to address your client's issues, from item determination to charging recurrence.
•	Computerized Charging: Express farewell to manual invoicing; the augmentation handles charging consequently.
•	Client Self-Administration: Permit clients to deal with their memberships, giving a problem-free encounter.
•	Times for testing: Draw in new supporters with preliminary proposals before they commit.
•	Point-by-point Detailing: Gain bits of knowledge into membership execution with thorough reports.

All in all, Magento 2 Memberships and Repeating Instalments by Milople Innovations is a unique advantage for online business organizations. It enables you to take advantage of the developing membership market, giving clients comfort while guaranteeing a consistent income stream for your business. With its adaptable highlights, similarity with different installment doors, and vigorous revealing capacities, it's a priority expansion to hoist your online business game.

Anyway, why pause? Embrace the fate of internet business with Magento 2 Memberships and Repeating installments by Milople Innovations and reform your business today. Try not to pass up this chance to remain ahead in the serious web-based business scene.
Improving Rails boot time
Tags: rails, rspec, ruby
Published: 2023-09-13 12:49:49

---
title: Improving Rails boot time
published: true
description: 
tags: Rails, RSpec, Ruby
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-09-13 09:34 +0000
---

1. [bootsnap](https://github.com/Shopify/bootsnap)
2. [bumbler](https://github.com/nevir/Bumbler)
3. `require: false` for heavy gems
4. turn expensive constants (especially file reads) into class methods for lazyloading
99. [spring](https://github.com/rails/spring) (comes with some caveats)

See also
* [An excellent writeup for startup time analysis and possible fixes](https://engineering.chronus.com/how-we-improved-the-rails-test-startup-time-by-70-percent-e99590bc0e46)
* [A primer on Rails boot time profiling](https://mildlyinternet.com/code/profiling-rails-boot-time.html)
Connecting with SSL to CrateDB using the PostgreSQL protocol from Java-based applications
Tags: security, postgres, java
Published: 2023-09-13 12:39:48

If you are using [CrateDB Cloud](https://crate.io/lp-free-trial), or if you have [configured a server certificate](https://crate.io/docs/crate/reference/en/latest/admin/ssl.html) for an on-premises deployment, and you try to enforce SSL on a PostgreSQL connection to CrateDB you may come across an error message like this:

```text
Could not open SSL root certificate file C:\Users\Hernan\AppData\Roaming\postgresql\root.crt.
  C:\Users\Hernan\AppData\Roaming\postgresql\root.crt (The system cannot find the path specified)
```
or
```text
org.postgresql.util.PSQLException: Could not open SSL root certificate file C:\Users\Hernan\AppData\Roaming\postgresql\root.crt
```

This is not specific to CrateDB, and you would get the same message trying to connect to an actual PostgreSQL instance, but I found no simple explanation of this error message and the options available, so here are my two cents.

What happens here is that the client is trying to confirm the server we are establishing an encrypted connection with is indeed the machine we intended to reach, doing this involves validating that the certificate used by the server has been issued by a trusted certification authority.
In this case, the client driver is trying to find the details of valid certification authorities on a PKCS12 file on the location indicated in the error message.

I find that in most cases it makes sense to pick one of the two options below to address this.

If we want the communication channel with the server to be encrypted, but we are on a trusted network environment and do not require verification of the server certificate, we can use this in our connection string:

```
ssl=true&sslmode=require
```

But if we want to have both encryption and the confirmation that we are talking to the intended server, we can tell the driver to use the list of certification authorities our JVM accepts:

```
ssl=true&sslmode=verify-full&sslfactory=org.postgresql.ssl.DefaultJavaSSLFactory
```

Some software ([DBeaver](https://dbeaver.io/) for instance) may have separate configuration settings where you can set the SSL Factory and SSL mode:

![SSL Mode and Factory settings can be found in DBeaver on the SSL tab of the connection settings](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2k85hn3z5j7q6axwgfy2.png)

I hope this helps. As usual please do not hesitate to let us know your thoughts in the [CrateDB Community](https://community.crate.io/).
18th Netfilter Workshop
Tags: devops, networking, loadbalancing
Published: 2023-09-13 12:34:51

RELIANOID R&D Team has been proudly contributing over the years to the development of the Load Balancing infrastructure of the Linux Kernel Netfilter project, which is currently celebrating its 18th Workshop.
We are so happy to sponsor this event one more year. Check for more info!
[](https://www.relianoid.com/about-us/events/18th-netfilter-workshop-2023-at-dresden-germany/)
Can anyone please help me out: I'm not able to debug the code in Reacts JS
Published: 2023-09-13 12:19:59

I'm a aspiring frontend developer currently learning React JS while making mini projects. Currently working on React Calculator.
When I included handleClick event browser console started showing error

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nlllegxbly8sui0uznos.jpg)
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oot4ayvinop9hefe64ax.jpg)

Below is my code 

`import React, {Component} from "react";
import CalculatorTitle from "./calculatorTitle.js";
import OutputScreen from "./outputScreen.js";
import Button from "./button.js";



class Calculator extends Component {
	constructor() {
		super();
		this.state = {
			question: "",
			answer: ""
		};
		this.handleClick = this.handleClick.bind(this);
	}

	handleClick(event) {
		const value = event.target.value;

		switch (value) {
			case "=": {
				if (this.state.question !== "") {
					var ans = "";
					try {
						ans = eval(this.state.question);
					} catch (err) {
						this.setState({ answer: "Math Error" });
					}
					if (ans === undefined) this.setState({ answer: "Math Error" });
					// update answer in our state.
					else this.setState({ answer: ans, question: "" });
					break;
				}
				
			}
			case "Clear": {
				this.setState({ question: "", answer: "" });
				break;
			}
			case "Delete": {
				const str = this.state.question;
				const newStr = str.slice(0, str.length - 1);
				this.setState({ question: newStr });
				break;
			}
			default: {
				this.setState(prevState => ({
				  question: prevState.question + value
				}));
				break;
			  }
			  
	}

	
	render() {
		return (
			<>
				<div className="frame">
				<CalculatorTitle value="My Calculator" />
				<div className="mainCalc">
					<OutputScreen question={this.state.question} answer={this.state.answer} />
					<div className="button-row">
						<Button label={"Clear"} handleClick={this.handleClick} />
						<Button label={"Delete"} handleClick={this.handleClick} />
						<Button label={"."} handleClick={this.handleClick} />
						<Button label={"/"} handleClick={this.handleClick} />
						<Button label={"7"} handleClick={this.handleClick} />
						<Button label={"8"} handleClick={this.handleClick} />
						<Button label={"9"} handleClick={this.handleClick} />
						<Button label={"*"} handleClick={this.handleClick} />
						<Button label={"4"} handleClick={this.handleClick} />
						<Button label={"5"} handleClick={this.handleClick} />
						<Button label={"6"} handleClick={this.handleClick} />
						<Button label={"-"} handleClick={this.handleClick} />
						<Button label={"1"} handleClick={this.handleClick} />
						<Button label={"2"} handleClick={this.handleClick} />
						<Button label={"3"} handleClick={this.handleClick} />
						<Button label={"+"} handleClick={this.handleClick} />
						<Button label={"0"} handleClick={this.handleClick} />
						<Button label={"="} handleClick={this.handleClick} />
					</div>
					
						
					</div>
				</div>
			
			</>
		);
	}
	

}
}

export default Calculator;``

```