teleren/devto huggingface dataset:
The Rise of Vector Search w/ Pinecone Founder & CEO, Edo Liberty
Tags: machinelearning, ai, devops, podcast
Published: 2023-02-02 23:34:52

We're still in January and AI might already be the buzzword of 2023 - and for good reason. AI powered startups have been layoff resistant and machine learning engineers are one of the fastest growing jobs, not in tech, but in the entire economy.

This week, we sit down with Pinecone Founder and CEO, Edo Liberty.  An AI and machine learning expert, Edo graduated from Yale with a PhD in Applied Mathematics and worked as Head of Amazon’s AI Labs before founding Pinecone.

Listen as he explains why the biggest AI and machine learning companies in the world - Google, Amazon, Meta and TikTok - use vector search to power their products.

{% spotify spotify:episode:1OiGl89r3afmyn09xbSBlx %}

## Episode Highlights:
* (2:26) Edo's start in AI
* (8:08) What is vector data?
* (11:48) Face detection for cows
* (16:27) Engineering applications of vector search
* (22:58) What's so hard about vector search?
* (25:29) Where is the industry stuck today?
* (28:11) Open source projects
* (31:57) What's the future of vector search?
* (35:11) Pinecone's recently announced 'hybrid search'

***While you’re here, check out this video from our [YouTube channel](https://www.youtube.com/c/DevInterrupted?sub_confirmation=1), and be sure to like and [subscribe](https://www.youtube.com/c/DevInterrupted?sub_confirmation=1) when you do!*** 

{% youtube 2Vc960m1o8s %}

### [On Feb. 15th, learn how the smartest engineers increased productivity by up to 30% without working longer hours or burning out their teams](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

Every engineering team could use some easy wins right now, including yours. We’re talking quick ways to improve productivity without wasting more hours at work, spending a lot of money or burning out already-stretched teams.

That’s why LinearB teamed up with dozens of engineering orgs to crowdsource the real ways smart companies have improved their productivity - quickly and most importantly, easily.

On February 15th, LinearB will be presenting this playbook at [our free, virtual Scaling Developer Efficiency workshop.](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

Designed to help you gain up to 30% increased productivity, this free online workshop will empower your team with strategies and solutions that let them focus on what they do best: Code.

### [Reserve Your Virtual Seat](https://linearb.io/event/202302-scaling-dev-efficiency/?utm_source=Substack%2FMedium%2FDev.to&utm_medium=referral&utm_campaign=202302%20-%20Event%20-%20GTM%20-%20Referral%20-%20Distro%20-%20Podcast%20Blog)

![Reserve a seat today](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/cpvy5uftb01p2nwia2zl.png)
FileSwitcher - A Messenger & Whatsapp Bot For File Conversion
Tags: linodehackathon, webdev, showdev, startup
Published: 2023-02-02 21:50:52

FileSwitcher is a side project designed to be a Messenger & WhatsApp bot that can perform file conversions.

Official Link: [https://www.fileswitcher.io](https://www.fileswitcher.io). You can also chat with the bot directly with the official Messenger Link or WhatsApp number/link.

**Messenger:**

Link: [https://m.me/FileSwitcher](https://m.me/FileSwitcher)

**WhatsApp:**

Phone Number: **+12137722802**
Link: [https://www.wa.link/gas38d](https://www.wa.link/gas38d)

You can say _hello_ to the bot and it will respond. A How-To is presented on the official link (listed above).

Any comments/questions/feedback is more than welcome.
Quais as vantagens de usar Veracode?
Tags: veracode, beginners, tutorial, security
Published: 2023-02-02 21:49:39

Veracode é uma plataforma de segurança de aplicativos que oferece várias vantagens, incluindo:
- **Segurança aprimorada**: Veracode fornece uma ampla gama de ferramentas para identificar e corrigir vulnerabilidades de segurança em aplicativos.
- **Conformidade regulatória**: Veracode ajuda as empresas a seguir regulamentos e padrões de segurança, como PCI DSS e OWASP.
- **Integração fácil**: Veracode pode ser integrado a outras ferramentas e processos de desenvolvimento de software para ajudar a automatizar o processo de segurança de aplicativos.
- **Análise de terceiros**: Veracode permite que as empresas analisem componentes de terceiros e pacotes open source para identificar vulnerabilidades antes de usá-los em aplicativos.
- **Equipe de segurança capacitada**: Veracode fornece treinamento e suporte para equipes de segurança para ajudar a melhorar seus conhecimentos e habilidades.
- **Relatórios personalizáveis**: Veracode permite que as empresas personalizem relatórios para atender às suas necessidades específicas e exibir informações relevantes sobre o estado de segurança de seus aplicativos.

Para saber mais sobre a Veracode e solicitar um ambiente de testes, entre em [contato](https://www.m3corp.com.br/contato/).
SQL Made Simple
Published: 2023-02-02 21:44:02

I tried learning SQL from scratch and to be honest, I loved every inch of this small article on SQL. The author [Bemnet Girma](https://linkedin.com/in/bemnetdev) made it really easy for me to understand SQL terminologies.

This booklet also contains SQL Interview Questions.

[Download the booklet here](https://www.buymeacoffee.com/AnuoluwapoDS/e/115887)

Happy Learning 😁
MyNodeJourneyIn2Days
Tags: node, webdev, javascript, beginners
Published: 2023-02-02 21:19:07

The sequence : #1

Intro : Course Intro : What Is Node : Course Requirements : Course Structure : Browser Vs Server : Install Node : Repl : Cli : Source Code : Globals : Modules Setup : First Module : Alternative Syntax : Mind Grenade : Built-In Module Intro : Os Module : Path Module :: Fs Module (Sync) :: Fs Module (Async) :: Sync Vs Async :: Http Intro :: Http Module (Setup) :: Http Module (More Features) :: NPM Info :: NPM Command :: First Package :: Share Code :: Nodemon :: Uninstall :: Global Install :: Package-Lock.Json :: Important Topics Intro :: Event Loop :: Event Loop Slides :: Event Loop Code Examples :: Async Patterns - Blocking Code :: Async Patterns - Setup Promises :: Async Patterns - Refactor To Async :: Async Patterns - Node's Native Option :: Events Info :: Events Emitter - Code Example :: Events Emitter - Additional Info :: Events Emitter - Http Module Example :: Streams Intro :: Streams - Read File :: Streams - Additional Info :: Streams - Http Example :: End Of Node Tutorial Module :: HTTP Request/Response Cycle :: Http Messages :: Starter Project Install :: Starter Overview :: Http Basics :: Http - Headers :: Http - Request Object :: Http - Html File :: Http - App Example :: Express Info :: Express Basics :: Express - App Example :: Express - All Static :: API Vs SSR :: JSON Basics :: Params, Query String - Setup :: Route Params :: Params - Extra Info :: Query String :: Additional Params And Query String Info :: Middleware - Setup :: APP.USE :: Multiple Middleware Functions :: Additional Middleware Info :: Methods - GET :: Methods - POST :: Methods - POST (Form Example) :: Methods - POST (Javascript Example) :: Install Postman :: Methods - PUT :: Methods - DELETE :: Express Router - Setup :: Express Router - Controllers ::
Day 158: Deep research day
Published: 2023-02-02 20:17:43

Hi!
I usually update my journal in the mornings and today I woke up too late to write so I am writing the night which sounds weird as it is almost the next day. but yesterday was a research day I was going through things here and there diving through the rabbit hole of the internet and discovering a lot of content along the way.
I looked into 3d animations, Vue js, Vite, and different open-source projects. I really love and enjoy these research sessions because I always discover new things to learn and some interesting projects from very smart people on the internet I may be learning Vue JS sometime soon (who knows)

About the blog I said I will publish, I lied I was too lazy to write yesterday but it is planned and I know I will do it I just need to push myself more and spare some time for it but for now that was the status

Signing off...
Como a solução de análise binaria de código da Veracode pode ajudar?
Tags: veracode, beginners, tutorial, security
Published: 2023-02-02 21:00:35

A Veracode tem uma solução de análise binária de código que é considerada um diferencial em relação a outras soluções de AST. 

A análise binária é uma forma de realizar análise estática sem ter acesso ao código-fonte. Ao invés de analisar o código em si, a análise verifica o código compilado. Isso ajuda a identificar vulnerabilidades de segurança que poderiam não ser detectadas por outras formas.

Em resumo, a análise binária de código é uma funcionalidade valiosa oferecida pela Veracode que pode ajudar a garantir a segurança de aplicativos proprietários ou de terceiros que não têm código-fonte disponível.

**E como essa analise de binários ajuda a diminuir a quantidade de falsos positivos?**
A análise binária pode ajudar a diminuir a quantidade de falsos positivos porque oferece uma visão mais completa e precisa do código que está sendo executado, incluindo quaisquer camadas adicionais, como codificações, ofuscações ou compilações. Além disso, a análise binária pode verificar a segurança de aplicativos sem ter acesso ao código-fonte, o que ajuda a identificar vulnerabilidades que podem ser escondidas no código-fonte.

Ao comparar com a análise estática de código convencional, que verifica o código-fonte, a análise binária oferece uma visão mais precisa da aplicação em execução, o que ajuda a reduzir a quantidade de falsos positivos na análise de segurança do código.

No entanto, é importante lembrar que nenhuma ferramenta de segurança de aplicativos é 100% precisa e é sempre importante realizar uma revisão manual dos resultados da análise para garantir a precisão e a eficácia da solução.

Para saber mais sobre a Veracode e solicitar um ambiente de testes, entre em [contato](https://www.m3corp.com.br/contato/).
Como lidar com o grande número de falsos positivos que as soluções de AST entregam?
Tags: veracode, beginners, tutorial, security
Published: 2023-02-02 20:54:42

O grande número de falsos positivos pode ser um desafio para as soluções de Análise de segurança em aplicações (AST). No entanto, existem algumas maneiras de lidar com isso:
- **Configuração adequada**: É importante configurar corretamente a solução AST de acordo com as necessidades específicas da sua equipe e do seu projeto. Isso pode ajudar a reduzir o número de falsos positivos.
- **Treinamento de equipes**: Treinar as equipes sobre como lidar com os resultados da AST e sobre como interpretar corretamente as informações fornecidas pode ajudar a reduzir o número de falsos positivos.
- **Revisão manual**: Embora AST seja uma ferramenta automatizada, é importante realizar uma revisão manual dos resultados para garantir que as vulnerabilidades identificadas sejam reais e não falsos positivos.
- **Atualização regular**: Mantenha a solução AST atualizada com as últimas atualizações de segurança e correções de bug para garantir que você esteja recebendo resultados precisos e confiáveis.
- **Feedback à equipe de desenvolvimento**: Compartilhar os resultados da AST com a equipe de desenvolvimento e solicitar feedback sobre a precisão dos resultados pode ajudar a melhorar a eficiência da solução.
- **Usar Veracode**: Com uma taxa de aproximadamente 1% de falsos positivos e tendo soluções que integram ou facilitam todos os tópicos anteriores, utilizar Veracode é a forma mais fácil e pratica de aprimorar o seu ciclo de desenvolvimento.

**E qual é a vantagem de usar uma solução que entrega menos de 1% de falso positivo? Isso poderia aumentar a eficiência e os custos do desenvolvimento?**

Sim, usar uma solução que entrega menos de 1% de falsos positivos como as da Veracode tem várias vantagens, incluindo:
- **Maior eficiência**: Quando há menos falsos positivos, a equipe pode se concentrar nas vulnerabilidades reais e corrigi-las mais rapidamente, o que aumenta a eficiência do processo de desenvolvimento.
- **Redução de custos**: Se a equipe não precisa gastar tempo investigando e corrigindo falsos positivos, isso pode levar a uma redução nos custos do desenvolvimento.
- **Confiança aumentada**: Quando a equipe confia nos resultados da AST, eles podem tomar decisões mais informadas sobre como proteger a segurança do código e dos dados.
- **Melhoria contínua**: Ao trabalhar com resultados precisos e confiáveis, a equipe pode identificar e corrigir rapidamente as vulnerabilidades, o que pode levar a uma melhoria contínua da segurança do código.

Em geral, uma solução como a da Veracode que entrega resultados precisos e confiáveis é uma ferramenta valiosa para qualquer equipe responsável por garantir a segurança do código e dos dados.

Para saber mais sobre a Veracode e solicitar um ambiente de testes, entre em [contato](https://www.m3corp.com.br/contato/).
Google Cloud 101: The 3 Most Common Certificates to Get Started With GCP
Tags: cloud, career, beginners, writing
Published: 2023-02-02 20:40:56

Are you a consultant that wants to dive into Google Cloud but has no idea where to start? 🌧️

These 3 certificates are most commonly used to prepare for new roles for Google Cloud projects. 🌥️🧑‍🎓

---

Everyone wants to learn how to use the cloud.

But it's hard to know where to start when there are so many guides, courses, and certifications. As a consultant, I've worked with Google Cloud, and I've seen many of my colleagues get certified. I've seen that most people use three certificates to prepare for an upcoming project.

I've put together a summary of these three certifications so you can quickly and easily choose the one that best fits your needs.

The Cloud Digital leader will provide a general overview of the Cloud for business leaders and newcomers

## The Cloud Digital Leader is the easiest and fastest way to get started with Google Cloud!

It gives you a general idea of what can be done and what tools are available. It won't teach you a lot of technical details, but it will give you a quick overview so you can get started with Google Cloud. This lets you "speak cloud" with your technical coworkers and give you a general idea of what to do next.

This certification is good for newcomers who want to get started and for sales teams or business leaders who want to learn about the technology and what it can do.

## The Associate Cloud Engineer provides a technical deep-dive into deploying and running a cloud infrastructure

This course is for you if you want a deep dive into the technical side of building and running in the cloud.

The associate cloud engineer is a deep dive into the technical side of Google Cloud. It focuses on building, deploying, and running cloud-based infrastructures. This lets you be part of a cloud developer/operations team and handle the cloud from your console.

This certificate is pretty extensive, so make sure you give yourself enough time to prepare.

## The Professional Cloud Architect enables you to design and build systems in the cloud that meet business requirements

With the help of the cloud architect, you can plan and build infrastructure to meet customer needs.

While the Cloud Engineer focuses on building, deploying, and operating cloud infrastructure, this certificate focuses on designing these systems. It will show you how to:
- identify business requirements,
- turn those needs into technical requirements,
- make an architecture for the solution that meets these needs.

Overall, it will give you the skills to run a cloud project from start to finish.
O que é um ciclo de desenvolvimento seguro?
Tags: security, beginners, tutorial, veracode
Published: 2023-02-02 20:37:02

Um ciclo de desenvolvimento seguro é um processo de desenvolvimento de software que prioriza a segurança do software desde o início até o final do ciclo de desenvolvimento. Isso inclui a identificação e correção de ameaças à segurança, a realização de testes de segurança e a implementação de medidas de segurança para proteger o software contra ataques externos. O objetivo é garantir que o software seja desenvolvido e implementado de maneira segura para proteger dados sensíveis e evitar vulnerabilidades.

Algumas das melhores práticas para implementar um ciclo de desenvolvimento seguro incluem:
- **Integrar a segurança desde o início**: A segurança deve ser considerada desde o projeto e incorporada a todas as fases do ciclo de desenvolvimento.
- **Treinar equipes**: Certifique-se de que todos os membros da equipe de desenvolvimento tenham conhecimento adequado sobre segurança de software.
- **Realizar revisões de código**: As revisões de código ajudam a identificar possíveis vulnerabilidades e garantem que o código seja escrito de maneira segura.
- **Realizar testes de segurança**: Testes de segurança devem ser realizados em todas as fases do ciclo de desenvolvimento para identificar e corrigir vulnerabilidades.
- **Monitorar e manter atualizações**: Mantenha o software atualizado com as últimas correções de segurança e monitore regularmente para detectar qualquer ameaça à segurança.
- **Documentação**: Mantenha registros detalhados de todas as etapas do ciclo de desenvolvimento, incluindo testes de segurança e correções realizadas.

Ao seguir essas práticas, você pode garantir que o seu ciclo de desenvolvimento seja seguro e que sua equipe esteja preparada para lidar com questões de segurança de maneira efetiva.

Para saber como a M3Corp e a Veracode podem te ajudar nisso, entre em [contato](https://www.m3corp.com.br/contato/).
Updates from the 94th TC39 meeting
Published: 2023-02-02 20:29:09

There were several items on the agenda, this post focuses on feature proposals and their progress from the 94th TC39 meeting.


__Stage 4:__

* [Change Array by Copy](https://github.com/tc39/proposal-change-array-by-copy): Provides additional methods on `Array.prototype` and `TypedArray.prototype` to enable changes on the array by returning a new copy of it with the change.

* [Intl.NumberFormat V3](https://github.com/tc39/proposal-intl-numberformat-v3): Additional features for `Intl.NumberFormat` to solve key pain points.

* [Symbols as WeakMap keys](https://github.com/tc39/proposal-symbols-as-weakmap-keys): Permit Symbols as keys in `WeakMaps`, entries in `WeakSets` and `WeakRefs`, and registered in `FinalizationRegistries`

__Stage 3:__

* [ArrayBuffer transfer](https://github.com/tc39/proposal-arraybuffer-transfer): proposal to add ‘ArrayBuffer.prototype.transfer’
(transfer, transferToFixedLength, detached)

__Stage 2:__

* [Import Assertions](https://github.com/tc39/proposal-import-assertions): Proposal for syntax to import ES modules with assertions (P.S: Important to note import assertions was demoted from stage 3) [Details](https://docs.google.com/presentation/d/1HbWhyo4tSnpv4vMZqCa2YQvi_mKdpDi4JWWBtSUQqQY/edit#slide=id.p)
* [Intl era/monthCode](https://github.com/tc39/proposal-intl-era-monthcode): To specify necessary details about era, eraYear and monthCode usage with Temporal in internationalization setting (for calendars other than iso8601)
* [Symbol Predicates](https://github.com/tc39/proposal-symbol-predicates): proposal to introduce ways to differentiate symbols.

__Stage 1:__
* [Async Context](https://github.com/tc39/proposal-async-context): proposal is to provide a mechanism to ergonomically track async contexts in JavaScript.
* [Proto pollution mitigation](https://github.com/syg/proposal-symbol-proto): `Symbol.proto`  proposal to prevent prototype pollution by introducing a secure mode that only allows prototypes to be accessed through methods or symbol keys, not string property keys. This aims to increase security by making it harder for prototypes to be manipulated maliciously. 

P.S: “Iterator helpers” was split into sync (stage 3) and async (stage 2).
Cambridge Roofing Company – PinkStar Roofing Co.
Tags: cambridge, roofing, roofrepair, roof
Published: 2023-02-02 20:26:04

What makes a good roofing company? a good [Cambridge roofing company](https://pinkstarroofing.ca/cambridge-roofing-company/) should have a few key qualities that set it apart from the rest. Firstly, it should have a team of experienced and skilled roofers who have the knowledge and expertise to handle any type of roofing project, from repairs to full installations. Secondly, it should offer a wide range of roofing services and use high-quality materials to ensure that the work is durable and long-lasting. Thirdly, the company should have a strong commitment to customer service and provide clear and transparent communication throughout the entire roofing process. Additionally, a good [emergency roof repair Cambridge](https://pinkstarroofing.ca/emergency-roof-repair-cambridge/) should have a proven track record of delivering high-quality work and have a reputation for fair and competitive pricing. These qualities are what make a good [roof replacement Cambridge](https://pinkstarroofing.ca/roof-replacement-cambridge/) company.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/scsskw5r15vp9oec6jrn.png)
Angular code simplicity with inject
Tags: angular, javascript, webdev, programming
Published: 2023-02-02 20:25:46

## The feature
The angular team in version 14 introduced the `inject` [method](https://angular.io/api/core/inject) to play with dependency injection without needing to add a constructor. Here is an example of a dummy service that is injected:

```typescript
import { Injectable } from "@angular/core";
import { Observable, of } from "rxjs";

@Injectable({ providedIn: 'root' })
export class ApiService {
    list$(): Observable<any> {
        return of([1,2,3]);
    }
}
```
Furthermore, the example used in the component would be:

```typescript
import { Component, inject } from '@angular/core';
import { Observable } from 'rxjs';
import { ApiService } from './api.service';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
  standalone: true
})
export class AppComponent {
  title = 'simple-injection';

  private readonly apiService = inject(ApiService);

  getList$(): Observable<any> {
    return this.apiService.list$();
  }
}
```
No need to use a constructor, which is fantastic and provides cleaner code.

## The util approach
There could be situations the method is more extensive and more complicated. We can introduce the util approach by using the `inject` method once again. All we have to do is to extract the method to separate functions or even files and use the `inject` method there:

```typescript
function getList$(): Observable<any> {
  return inject(ApiService).list$().pipe(
    filter(Boolean),
    map(data => data.list)
  );
}
```
And then at the component level:
```typescript
list$ = getList$();
```
We have to remember that the `inject` method can be used only in two situations:

1. in a constructor, a constructor parameter and a field initializer (like above)
2. factory provider:

```typescript
providers: [
  {provide: User, useFactory: () => {
    const posts = inject(Posts);
    return new User(posts);
  }}
]
```

## Summary
The `inject` method is a compelling feature and can save a lot of code and introduce resuable parts of logic.