teleren/devto huggingface dataset:
Blockchain Capital Raises $580M Amidst Market Slump: A Deep Dive
Tags: cryptocurrency, cryptonews, cryptofundraising, blockchain
Published: 2023-09-21 20:34:26

In a startling turn of events amid a market slump, Blockchain Capital, a cryptocurrency powerhouse based in San Francisco with assets surpassing $2 billion, has successfully amassed a monumental $580 million. This substantial capital infusion is allocated for two upcoming funds. Digging deeper, the majority, $380 million, is directed to the company’s sixth early-stage fund, concentrating on budding enterprises and protocols during their foundational phases. The subsequent $200 million is appointed for the opportunities fund, concentrating on investments in more advanced stages, primarily from Series B onwards.


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

An intriguing aspect of Blockchain Capital’s funding strategy is the pronounced inclusion of traditional institutional backers. This diverse congregation encompasses university endowments, U.S. pension strategies, sovereign wealth funds, private foundations, and eminent financial entities. Jason Di Piazza, the central figure leading Capital Formation at Blockchain Capital, illuminated the diverse range of this investment group. The company is augmented by innovative partners, specialists in their respective fields, beyond the usual institutional entities. “These alliances are not just financial transactions; they are avenues paving the way for amplified growth and enhancing competitive positions for those we fund,” detailed Di Piazza.

A retrospective glimpse unveils global payment giants, Visa and PayPal, collaborated with Blockchain Capital for its fifth initial stage fund in 2021. However, a question mark hangs over their participation in the newly launched funds, according to those in the know.

Casting light on some of Blockchain Capital’s recent initiatives, the portfolio displays a robust $115 million Series C investment in the creator of Worldcoin, Tools for Humanity, followed by a considerable $40 million Series A funding for the crypto infrastructure entity, RISC Zero.

If you are interested in a broader perspective on this investment narrative, explore more in-depth [here.](https://www.consulting24.co/post/blockchain-capital-secures-580m-investment-for-dual-funds-amid-market-downturn)
My VS Code Setup
Published: 2023-09-21 20:29:15

As a developer, the main software I install on my PC is my code editor. As if it is the only code editor available, the number one choice for almost all developers is vs code. It is a really good code editor which contains all features a developer needs.

If you feel like you need extra features you can use the large ecosystem of extensions.

When I set up VS Code for my day-to-day coding I install a couple of extensions. Here are some of these extensions and their uses;

- vs-code icons (with “Material Icon Theme” installed as a theme for the icons library)
- Auto Rename Tag
- [ES7 React/Redux/GraphQL/React-Native Snippets](https://www.digitalocean.com/community/tutorials/the-best-react-extension-for-vs-code)
- Live Server(Extension Id: ritwickdey.LiveServer)
- Ruby(semantic highlighting and formatting support)

To increase productivity, many developers use keyboard shortcuts. To change the default keyboard shortcuts of vs code go to File > Preferences > Keyboard shortcuts and search for the command you want to modify and change it to your liking.

The post [My VS Code Setup](https://wuletawwonte.com/2018/02/07/my-vs-code-setup/) appeared first on [Wuletaw Wonte](https://wuletawwonte.com).
What is Diffing
Published: 2023-09-21 20:28:38

The performance gain of React is mainly because of the virtual DOM. Before updating the real DOM and repainting what’s on the screen, React updates the virtual DOM. The traditional DOM manipulation is very slow because for a small change on the DOM the whole page or sometimes neighboring DOM elements get re-rendered.

React is clever enough to know which DOM element has changed because of the concept of Diffing. Here is what happens in react to update an element in the screen

- React has a virtual DOM which is very fast to change and keep track of.
- When an element’s property changes, for instance, the color of a button changes to red, react changes the object of that button in the virtual DOM.
- Then it compares the new virtual DOM with the one just before the re-render.
- This enables React to know exactly which virtual DOM element needs a re-render. This operation of comparing the virtual DOM with its previous state of it is called **Diffing**.
- After figuring out which virtual DOM element needs a re-render React only repaints the real DOM equivalent of the changed button.

The post [What is Diffing](https://wuletawwonte.com/2018/03/23/what-is-diffing/) appeared first on [Wuletaw Wonte](https://wuletawwonte.com).
Art of Exceptional Customer Service: A Guide to Delighting Customers
Tags: webdev, javascript, beginners, tutorial
Published: 2023-09-21 20:26:41

As a business owner or employee, you know how important it is to provide excellent customer service. Exceptional customer service sets your business apart from the competition and keeps customers coming back. In this guide, I will share with you the key principles, effective communication skills, and techniques for going above and beyond to create memorable experiences that delight your customers.

[https://www.djobzy.com/blog-details/engineering-jobs-for-freelancers](https://www.djobzy.com/)
How to secure a ruby on rails api
Tags: rails, api, ruby
Published: 2023-09-21 20:24:41

To secure a Ruby on Rails API from unauthenticated access, you can use a variety of techniques depending on your specific requirements. Here are a few common methods:

1. Implement Authentication: The most common way to secure an API is through authentication. You can use various authentication mechanisms like Basic Authentication, Token Authentication, OAuth, or JSON Web Tokens (JWT) to authenticate the users. This will ensure that only authenticated users can access the API, and unauthorized access will be denied. Rails provides built-in support for most of these authentication mechanisms, and there are also many third-party libraries available.

2. Use SSL/TLS Encryption: SSL/TLS encryption can provide additional security by encrypting the data sent between the client and server. This will prevent attackers from intercepting and reading the data in transit. You can use the 'ssl_requirement' gem to enforce SSL/TLS encryption on your Rails API.

3. Rate Limiting: Rate limiting can be used to limit the number of requests that can be made to your API from a single IP address. This can help prevent denial of service attacks and brute force attacks. You can use the 'rack-attack' gem to implement rate limiting in your Rails API.

4. Use CORS: By default, Rails allows cross-origin requests from any domain. This can be a security concern as it allows attackers to make API requests from their own domain. You can use CORS (Cross-Origin Resource Sharing) to restrict the domains that can make requests to your API. You can use the 'rack-cors' gem to implement CORS in your Rails API.

5. Validate Input: It is essential to validate the input data to prevent attacks such as SQL injection and cross-site scripting (XSS). You can use the 'strong_parameters' gem to validate the input data in your Rails API.

By implementing these techniques, you can make your Ruby on Rails API more secure and protect it from unauthorized access.
Ley de Moore
Published: 2023-09-21 20:12:20

La "Ley de Moore" es una observación empírica que fue formulada por Gordon Moore, uno de los cofundadores de Intel Corporation, en 1965. Esta ley predice que la cantidad de transistores que pueden ser integrados en un microprocesador se duplicará aproximadamente cada dos años, lo que conduce a un aumento exponencial en la capacidad de procesamiento y memoria de los circuitos integrados.

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



En términos simples, la Ley de Moore implica que, con el tiempo, los microchips se volverán más pequeños y potentes, lo que permitirá mejoras significativas en la velocidad y el rendimiento de los dispositivos electrónicos, como computadoras, teléfonos móviles y otros dispositivos electrónicos.

Es importante destacar que la Ley de Moore es una observación empírica basada en tendencias históricas y no una ley física fundamental de la naturaleza. Aunque ha sido válida durante varias décadas, se espera que en algún momento se alcance un límite físico en cuanto a la miniaturización de los transistores y la capacidad de procesamiento, lo que podría llevar a una desaceleración en el cumplimiento de esta ley.

Hasta mi última actualización en septiembre de 2021, la Ley de Moore había sido ampliamente observada, pero ya se habían observado signos de desaceleración debido a los desafíos técnicos cada vez mayores asociados con la miniaturización de los componentes electrónicos. Por lo tanto, es importante tener en cuenta que esta ley podría no mantenerse de manera indefinida en el futuro.

{% cta https://es.wikipedia.org/wiki/Ley_de_Moore %} WIKIPEDIA{% endcta %}
Writing an HTML to HAXcms site importer with Vercel
Published: 2023-09-21 19:37:38

This is a live coding session where I show the process of creating a new endpoint in Vercel and wiring it up for importing site content into HAXcms in order to build a brand new site! I've been overwhelmed by the interest in our importers, as well as how fast they've been to develop thanks to Vercel. When someone approached us recently about importing Drupal based content into HAXcms, I thought "what if it was just HTML on one page?". Sure enough, Drupal's book module, popular in education, can output the site's content for 'print' all on one page. This demonstrates me debugging and implementing end to end this new functionality to a beta state by reusing code we already have.

{% embed https://www.youtube.com/watch?v=LzO1u9KEFf0 %}
Open class
Tags: ruby, class, patch
Published: 2023-09-21 19:16:55

Do you wonder what would happen to a code in a class definition in Ruby? For example, what would be the output of the following code?

```ruby
class Movie
  puts "Hello there"
end
 
# Output
Hello there
```

One may think because the “puts” code is outside any method, so it wont get executed. But the fact is, in Ruby, there is no real distinction between code that defines a class and code of any other kind. You can put any code you want in a class definition and its going to get executed. Here is another example
```Ruby
3.times do
  class Movie
    puts "Movie class"
  end
end
 
# Output
Movie
Movie
Movie
```

Open Class in Ruby is the technique where you can define a class again to add or overwrite its methods dynamically at runtime. That means if you write a code that defines an already existing class Ruby would reopen the existing class and modify it. It is sometimes called Monkey Patching.

Ruby allows Monkey patching even on standard Ruby classes like String, Numeric or any other standard class. For example I can add palindrome method in the String ruby class to check if a string reads the same with its reverse.
```Ruby
class String
  def palindrome?
    self == self.reverse
  end
end
 
puts "wuletaw".palindrome? # false
puts "rotator".palindrome? # true
```

As cool as this may seem, however, monkey patching does have a dark side. It can make code harder to maintain, introduce unexpected behavior and make it more difficult for other developers to understand.
Node.js, PostgreSQL error: no pg_hba.conf entry for host
Published: 2023-09-21 19:12:38

When I try to connect AWS rds Postgres host DB with Node.js. But, i receive following error when I try to connect using DBI with [pg npm](https://www.npmjs.com/package/pg).

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

But Successfully connected in CLI and pgAdmin 4.

😥 How to fix this ?
Labeled statements - the forgotten JS feature
Tags: webdev, javascript, beginners
Published: 2023-09-21 19:06:32

For years I have been following Svelte but never got around to trying it out. Recently I found some free time, so I decided to look into it. While going through the docs I found an interesting JS feature that I have forgotten about:

```js
$: doubled = count * 2;
```

This feature is used in Svelte to power reactive declarations, which are re-computed whenever the variables declared into the statement change. In the case above `doubled` will be re-computed whenever `count` changes.

## What are **labeled statements**?

Lets take a step back. What is a labeled statement? According to [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/label):

```
A labeled statement is any statement that is prefixed with an identifier. You can jump to this label using a break or continue statement nested within the labeled statement.
```

Basically it is sort of a `goto` statement for loops. For example if we want to exit a nested loop we can use it in the following way:

```js
loopX: for (let i = 1; i < 10; i++) {
  for (let j = 1; j < 10; j++) {
    if (i + j === 5) {
      break loopX;
    }
  }
}
```

In this example we can exit the parent loop from the child loop by just using the `break` statement with the label that we want to break on.

Labeled statements are not just exclusive to loops, they can also be used with `if` statements:

```js
outerIf: if (count < 10) {
  if (true) {
    break outerIf;
  }
  // This will not log
  console.log(count);
}
```

## Conclusion

It’s rare that you will need to use a JavaScript label. In fact, you can lead a very fulfilling career without ever knowing that this exists. However, you are now able to apply it if you happen to come across a situation where it is useful.
ng test is failing after upgraded to angular 15
Tags: angular, ng, test
Published: 2023-09-21 18:53:11

Hi All,

I am getting below error while running "ng test" after upgrading to angaulr 15

./src/styles/app.scss?ngGlobalStyle - Error: Module build failed (from ./node_modules/@angular-devkit/build-angular/node_modules/mini-css-extract-plugin/dist/loader.js):
HookWebpackError: Module build failed (from ./node_modules/@angular-devkit/build-angular/node_modules/sass-loader/dist/cjs.js):
SassError: Can't find stylesheet to import.
  ╷
1 │ @import "../../styles/variables";
  │         ^^^^^^^^^^^^^^^^^^^^^^^^
  ╵
  src/styles/components/buttons/_mixins.scss 1:9   @import
  src/styles/components/buttons/_buttons.scss 2:9  @import
  src/styles/components/_components.scss 6:9       @import
  src/styles/app.scss 5:9                          root stylesheet
New RELIANOID Enterprise Edition release!
Tags: sre, release, loadbalancing, sremaster
Published: 2023-09-21 18:51:40



![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e5dypat9you3f6o99b0v.jpg)Here it is! Our #latest and #greatest #work! Today we're releasing RELIANOID #Enterprise Edition v6.2.30, which continues (the now discontinued) Zevenet EE v6.2.25. Check it and enjoy it: 



https://www.relianoid.com/blog/new-release-relianoid-adc-load-balancer-enterprise-edition-v6-2-30/



#sre #sremasters #sitereliabilityexperience #loadbalancing
Let's all connect on github
Published: 2023-09-21 18:39:34

In the vast world of coding and programming, GitHub stands as a shining beacon of collaboration and innovation. It's not just a platform; it's a community where developers from all corners of the globe come together to share their work, learn from one another, and contribute to the ever-evolving landscape of technology. 

But GitHub is more than just a place to host your code; it's a place to connect with like-minded individuals who share your passion for coding.
 
So, why not take a moment to share your GitHub profile and let's all connect?

## Here is my link
{% embed https://github.com/ajayupreti %}


**Share yours!**
Setting active state on navigation with Eleventy
Tags: eleventy, 11ty, tutorial, portfolio
Published: 2023-09-21 18:07:31

In creating my portfolio site, I wanted to have dynamic elements that would add/remove classes based on the site's structure, as well as the page content. The first step in this was the navigation.

## Problem
Setting the `active` class to be applied when parsing through my collections, and having it only apply to particular a page, was just not working. I tried using various properties such as `tag`, `title`, and even the eleventyNavigation plugin.

```javascript
{% set navPages = collections.all | eleventyNavigation %}
  <div class="navbar-nav col-md-6 justify-content-md-center">
    <a class="navbar-brand col-md-1 me-0 text-center" href="/">
      <img src="{{ "/img/navbar-logo.png" | url }}" alt="Avatar" width="32" height="32">
    </a>
    {%- for entry in navPages %}
    {# <a class="nav-link" href="{{ entry.url }}" alt="{{entry.description}}">{{ entry.title }}</a> #}
    <a class="nav-link {{ 'active' if 'entry.title' in entry.url }}" href="{{ entry.url }}" alt="{{ entry.abbreviation }}">{{ entry.title }}</a>
    {%- endfor %}
  </div>
```

No matter what I tried, nothing would set the active state of the page to the proper one.

## Solution (easy way out)
After stumbling around through various #eleventy guides, I came across various implementations of the `<% if %>` statement, but none of them ever worked for me. In the end, I decided to simplify my navigation to, instead of using `collections`, fall back to the tried and true individual `<a>` for each navigation item. This allowed me to utilize the `<% if %>` statement to look for a specific location and, if the URL contained that string, apply the `active` class.

```javascript
<a class="nav-link {% if '/designs' in page.url %}active{% endif %}" href="/designs" alt="Link to Designs that I have created and worked on.">designs</a>
```

This now applies the `active` class to any page that has `/designs` in the URL. No longer am I reliant on the collections information being read, nor am I having to worry about a page ending up on the wrong place and applying the class incorrectly.

## Next steps
Ideally, I would be able to set my site to read through all of the items in my `collections` and then parse through that information to apply the `active` class correctly. As I build out my site and want to rely less on manually updating the navigation, this will become paramount (looking at you, breadcrumbs).

## Conclusion
If you found this short bit of information helpful, let me know in the comments or by adding a reaction. If you have any suggestions, I'm open to hearing any and all!

[View source on GitHub](https://github.com/AdamJ/AdamJ.github.io/tree/main "Link to the GitHub URL for the referenced project")
prueba de osttt
Tags: webdev, javascript, beginners, tutorial
Published: 2023-09-21 18:00:28

es to es una prueba 

```
import { notFound } from "next/navigation";

export async function fetchPosts() {
  console.log(process.env.NEXT_PUBLIC_DEVTO_USERNAME);
  const res = await fetch(
    `https://dev.to/api/articles?username=${process.env.NEXT_PUBLIC_DEVTO_USERNAME}`,
    {
      next: { revalidate: 3 * 60 * 60 },
    }
  );

  if (!res.ok) notFound();
  return res.json();
}

export async function fetchPost(slug) {
  const res = await fetch(
    `https://dev.to/api/articles/${process.env.NEXT_PUBLIC_DEVTO_USERNAME}/${slug}`,
    {
      next: { revalidate: 3 * 60 * 60 },
    }
  );

  if (!res.ok) notFound();
  return res.json();
}

```
Thoughts on Bun so far?
Tags: webdev, javascript, programming, discuss
Published: 2023-09-21 17:53:04

As of the previous week, Bun has become the dominant force in the JavaScript ecosystem. So far, I had a good experience with Bun. 

What was your experience with Bun so far? Any downsides or problems you've encountered?


![Bun Meme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxnv8okt8fki87r5ylyl.jpg)
Challenge RE #13
Tags: reverseengineer, assembly, c, challenge
Published: 2023-09-21 17:37:01

Let's do another re challenge, if you've been reading my recent posts you know that I'm solving the challenges from [challenges.re](https://challenges.re/). This time, I'm going to analyze the short but not less interesting [\#13](https://challenges.re/13/). Let's start.

## Analysis

This time we don't have a binary file, instead we have a quite short assembly code. Using **128-bit registers**, `xmm0 and xmm1`. For this program we have three arguments, `rsi, rdx and rdi`. The first two contains unsigned integers, given the way we are accessing them we can infer they are being passed on 2 arrays. 

Here is the code

```asm
f:
	xor	rax, rax
.L4:
	movdqu	xmm0, XMMWORD PTR [rsi+rax]
	movdqu	xmm1, XMMWORD PTR [rdx+rax]
	pmaxub	xmm0, xmm1 ;; returns maximum of both
	movdqu	XMMWORD PTR [rdi+rax], xmm0
	add	rax, 16
	cmp	rax, 1024
	jne	.L4
	rep ret
```

Immediately we can notice that we have a loop, and that the iteration will end when `rax` will be **1024**. On each iteration we increase `rax` by **16**, so we will iterate **64** times. Now what's done on these iterations?

Actually quite simple, we are comparing each elements of the array, the one in `rsi` and `rdx`, and selecting the maximum value between the two to be saved in `rdi`. Given that `rdi` it's a **64 bit register** and we iterate exactly **64** times, we will fill `rdi` with these maximum elements.

With this, we can already give our formal description of the program:

**Formal description**

> Given two arrays, **a and b**, with unsigned integers, we return and array **arr** where for each **i = 0, ..., 64**, we have **arr[i] = max(a[i], b[i])**.

That's it!!
Next.js 13.5 have 22% faster local server startup
Tags: nextjs, opensource, javascript
Published: 2023-09-21 17:29:45


Vercel team and contributors of Next.js released new features on Next.js 🎉! Yes, it is the version 13.5.1. I want to ask the developers about what they think about the newest release 💭.

If you're not aware of the newest release yet, be sure to check out my detailed blog [here](https://dev.to/kumarkalyan/whats-new-in-nextjs-135-ia1) 📢! 

<img src= "https://media.giphy.com/media/4qj93RyxWyZuVl0LeJ/giphy.gif"/>
pyaction 4.24.0 Released
Tags: github, docker, python, showdev
Published: 2023-09-21 17:29:36

## TL;DR

I just released [pyaction](https://github.com/cicirello/pyaction) 4.24.0, a [Docker container with Python, git, and the GitHub CLI](https://dev.to/cicirello/pyaction-a-docker-container-with-python-git-and-the-github-cli-930). You can pull pyaction from either the [GitHub Container Registry](https://github.com/cicirello/pyaction/pkgs/container/pyaction) or from [Docker Hub](https://hub.docker.com/r/cicirello/pyaction).


## Changelog 4.24.0 - 2023-09-21

### Changed
* Bumped GitHub CLI to 2.35.0.


## Current Version List

This latest release of pyaction includes the following:
* Python 3.11.5
* [GitHub CLI 2.35.0](https://github.com/cli/cli/releases/tag/v2.35.0)
* git 2.39.2
* curl 7.88.1
* gpg 2.2.40



## More Information

Please consider starring pyaction's GitHub repository:

{% github cicirello/pyaction %}

For more information, see my earlier post about pyaction here on DEV, as well as its webpage. 

{% link https://dev.to/cicirello/pyaction-a-docker-container-with-python-git-and-the-github-cli-930 %}

{% embed https://actions.cicirello.org/pyaction/ %}



## Where You Can Find Me

Follow me [here on DEV](https://dev.to/cicirello) and on [GitHub](https://github.com/cicirello):

{% user cicirello %}

Or visit my website:

{% embed https://www.cicirello.org/ %}