teleren/devto huggingface dataset:
Understanding MVC
Published: 2023-02-15 14:30:05

I recently started learning about the MVC architectural paradigm and decided to share what I learned in a simple, beginner-friendly way.

This article explains what MVC means, how it works, and its importance.

What is MVC?
 MVC is an architectural paradigm that separates a web application into three parts.

 The Model
 The View 
The Controller. 

The Model deals with all database-related operations, the model holds raw data and the essential components of an application.

The View refers to the part of the application that the user directly interacts with the user

The Controller serves as the middleman between the Model and the View and is considered to be the brains of the application.

How does the MVC work?
To understand how the MVC works we need to have a simplified understanding of how the internet works. The image below illustrates the workings of the internet

![Simple illustration of how the internet works](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qjt11tt5yp8uehtd0tid.png)’s



Simply put, the internet works off requests and responses. When a user inputs a URL or submits a form or clicks a link, the user sends a request through his ISP to a server, and the server processes the user's request and sends the processed request to the database, the database acts on the request, and sends a response to the server which in turn sends a response to the user.

This is a very simplified explanation of how the internet works, you can find a more detailed explanation [here](https://www.codecademy.com/resources/blog/how-does-the-internet-work/).


![MVC image](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yia2twuo2825k2oz2hsw.png)

 The MVC structure takes that process in its entirety and separates the process into three(the Model, the View, and the Controller). MVC also adds routing to the process which is a pattern-matching system that monitors the incoming request and figures out what to do with that request. The router maps the browser request to the matching controller action. In simple terms anytime a request is sent from the view it goes through the router which checks to see if there is a controller that matches the request sent. When the controller is found it processes the request and sends it to the model which acts on the request and sends a response back to the view.




The MVC is important for a variety of reasons. The first and foremost of these benefits is that it gives us a structured framework for thinking about the way we write our programs and the arrangement of our program files. The MVC paradigm gives us abstraction in our programs which allows us to do things once, this also makes it easy to both debug and make necessary changes in our programs. The final benefit of the MVC paradigm is that it makes working with other developers less difficult.

I hope this article gives you a clearer understanding of what MVC is and how beneficial it is to web developers. 

For more in-depth you can watch Brad Traversy's MVC video linked  [here](https://www.youtube.com/watch?v=SBvmnHTQIPY&ab_channel=TraversyMedia)
Html semantic elements
Tags: webdev, beginners, html, semantics
Published: 2023-02-15 14:26:10

<div>
    <h4>I am the heading for this section</h4>
    <p>I am the content for this section</p>
</div>
<div> used as to show block level element that can stand alone while <span> used to show inline element 
<p>I am an <span>inline element</span> engineer </p>
block element is one unit and new item after it make a new line  and used to separate different section of html page  while inline element does not make a new line  so we used div and span  style web page 

```

        <div class="nav">
            <ul id="nav-items">
                <li class="nav-links">
                    <a href="">Home</a>
                </li>
                <li class="nav-links">
                    <a href="">contacts</a>
                </li>
                 <li class="nav-links">
                    <a href="">about</a>
                </li>
            </ul>
        </div>
  
```
Complete Beginner's Guide to Support vector Machine (SVM)
Tags: python, programming, machinelearning, beginners
Published: 2023-02-15 14:02:09

Hello Everyone,

If you are a beginner in the field of Machine learning and Data Science, and are looking a perfect blog to guide you through, checkout my blog on Hashnode: [Blog Link](https://pinakdatta.hashnode.dev/complete-beginners-guide-to-support-vector-machinesvm)

It covers all the details that you need to know as a beginner about SVM and kick off with some good projects.

Hope this helps!
Setting up an Angular project with Angular cli, GitHub cli and deployment to GH Pages
Published: 2023-02-15 13:57:34

This guide uses Angular cli, git cli, GitHub Pages and a package called [angular-cli-ghpages](https://www.npmjs.com/package/angular-cli-ghpages)

Prerequisites:

- Angular cli (this example uses Angular 13)

- Github cli ( this example uses v2.4)


In your workspace spin up a new angular app with:

`ng new <app-name>`

This will prompt you to create a new project, set up a local git repo and make an initial commit for you.

To create a new repo on GitHub with the command:
`gh repo create`

Select 'Push an existing local repository to Github` and follow the interactive prompts.
The repo will need to be public unless you have GitHub Pro.
When offered, set up a remote, 
This will create a github repo for your project and set up the remotes so you can push to it easily.

Now we add the angular-cli-ghpages package. Note the use of ng add, not npm i.
`ng add angular-cli-ghpages`

Add a script to package.json to simplify deploy.
 - Open package.json.
 - In the scripts object add a new line:
`"deploy": "ng deploy --base-href=/<your-repo-name>/"`

Commit your changes to the main branch
`git add .`
`git commit -m "added angular-cli-ghpages"`
`git push origin main`

Create a new branch called gh-pages (this can be customised, but you will need to select a different branch in the github settings page mentioned below)
`git branch gh-pages`
`git checkout gh-pages`
`git push origin gh-pages`

Set up GitHub Pages in the browser (just need to check this - it should be setup in the correct way by default)
 - Find the repo you just created on GitHub.com
 - Setting > Pages
 - In Source select deploy from branch (automatic)
 - Under branch select gh-pages and /root (automatic)

Finally - its time to deploy the base application
`git checkout main`
`npm run deploy`

NB: The deploy script will build your application and overwrite the contents of the gh-pages branch with the compiled build. There is rarely any need to have the gh-pages branch checked out locally, so I suggest you delete it.

If all is well - your application should be deployed to `http://<gh-username>.github.io/<repo-name>`
Colorization of Faded Images Using Python
Tags: python, machinelearning, beginners, programming
Published: 2023-02-15 13:46:23

Hello Everyone,
If you are a beginner in the field of machine learning and Computer Vision, and are looking a perfect project to add to your Resume, , checkout my blog on Hashnode: [Blog Link](https://pinakdatta.hashnode.dev/faded-image-colourisation-using-opencv)

It covers all the details that you need to know as a beginner. In this project, we took faded and washed-away images and colorized them with the help of Computer Vision.

Hope this helps!
NFT Marketplace Blur Releases Native Token for Community Ownership
Published: 2023-02-15 13:41:24

After months of anticipation, zero-fee non-fungible token (NFT) marketplace Blur released its native token Tuesday.
The token will allow traders to participate in the platform’s governance protocol, as well as profit from the marketplace’s success through community ownership.
Blur said in a tweet that traders have 60 days to claim their airdropped BLUR tokens, which are trading at roughly 50 cents at press time, according to CoinGecko.
“Since launching [four] months ago, 146,823 users have traded $1.2 billion dollars [sic] worth of NFTs on Blur (wash trading excluded),” Blur said in a tweet. “This growth is breathtaking and was only possible with the support of the Blur community.”
According to data from DappRadar, Blur’s 24-hour trading volume stands at about $9.5 million, second only to leading marketplace OpenSea, whose trading volume is around $12 million.
NFT traders have been awaiting the BLUR token’s release since the platform went live. Originally set to release in January, Blur has been airdropping its token since October through “care packages” to collectors who have traded an Ethereum-based NFT in the past six months. On Tuesday, Blur delayed their token-launch by 90 minutes, warning collectors to be aware of potential phishing attempts and scam links.
Blur launched in October with a strategy to cater to professional NFT traders with a zero-fee marketplace. In its first 24 hours, it conducted $2.5 million in trading volume, creeping up on OpenSea’s trading volume. While the royalty-optional marketplace has added fuel to the fire to the ongoing debate among creators and marketplaces, it has continued to trail behind OpenSea’s trading volume numbers.
Launched in October, Blur's strategy is to cater to the needs of professional NFT traders in the zero-fee market, which has led to many NFT games having partnerships with them, such as CryptoKittes, Fairy Cat game and other games. In the first 24 hours, his trading volume...
Computer Vision: A Complete Beginner's Guide
Tags: python, machinelearning, datascience, beginners
Published: 2023-02-15 13:33:54

Hello Everyone, 
If you are a beginner in the field of machine learning and Computer Vision, and are looking a perfect blog to guide you through, checkout my blog on Hashnode: [Blog Link](https://pinakdatta.hashnode.dev/computer-vision-a-complete-beginners-guide)

It covers all the details that you need to know as a beginner and kick off with some good projects.

Hope this helps!
The Ultimate List of Job Hunting Resources for Software Developers Part 6: Computer Science Fundamentals
Tags: computerscience, interview, interviewpreparation, interviewprep
Published: 2023-02-15 13:26:54

---
title: The Ultimate List of Job Hunting Resources for Software Developers Part 6: Computer Science Fundamentals
published: true
description: 
tags: #computerscience #interview #interviewpreparation #interviewprep
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2023-02-07 15:13 +0000
---
I've compiled and curated a list of job hunting resources for software developers, it covers resources for writing resumes, applying and managing job applications, efficient ways to prepare for coding interviews, resources to learn system design, you can download the free PDF [here](https://devgrowth.gumroad.com/l/TheUltimateListofJobHuntingResourcesforSoftwareDevelopers).

---

Depending on the company and position you are interviewing for, you may need to refresh on computer science. With the time constraints of getting ready for an interview, I recommend finding the knowledge gap you need to close and close it, instead of going through the material sequentially(but if you have the time to go through the books or courses, it's always good to learn).
## Open source courses
- [Udacity: Networking for developers](https://imp.i115008.net/7mEL1A)
- [Udacity: Intro to OS](https://imp.i115008.net/MXPoRJ)
- [Coursera: Networking by Google](https://imp.i384100.net/qnQkxj)
- [Udacity: Computer Networking](https://imp.i115008.net/vn51Ed)
- [MIT: Computer System Engineering](http://web.mit.edu/6.033/www/)
- [MIT: Distributed Systems](https://pdos.csail.mit.edu/6.824/index.html)
- [CMU: Database Systems](https://15445.courses.cs.cmu.edu/spring2023/)


## Books
- [Computer Systems: A Programmer’s Perspective](https://amzn.to/3W47bYW)
- [Code: The Hidden Language of Computer Hardware and Software](https://amzn.to/3HcjE6u):
- [Operating Systems: Three Easy Pieces](https://amzn.to/3YqhRCK)

---

If you have seen resources that helped your job hunting process, leave a comment and share with more people :)
Next post I will go over tools that may help your negotiation. Stay tuned!
This IA turns question into bash scripts.
Tags: ai, commandline, bash
Published: 2023-02-15 13:04:59

I've just discovered this tool and thought I'd share with the group : give [SudoSupport](https://sudosupport.netlify.app/) a request like "How to find all large files over 1GB?" and it will translate it to 

find / -type f -size +1G
How to become a front-end website developer 💻
Published: 2023-02-15 12:27:53

Front-end web development is the process of building and designing the visual and interactive aspects of a website. It involves using HTML, CSS, and JavaScript to create user-friendly and aesthetically pleasing websites that can be accessed through a web browser. Front-end developers work on the client side, meaning that their work is visible to and directly interacts with the end user. They are responsible for creating and implementing the look, feel, and behavior of a website, and ensuring that the website is accessible and user-friendly on a variety of devices. The goal of front-end web development is to create websites that are engaging, responsive, and accessible to all users.

To become a front-end website developer, **you can follow these easy steps:**

1. Acquire fundamental HTML, CSS, and JavaScript knowledge through online courses, tutorials, or books.
2. Develop your skills by building projects and learning frameworks such as React, Angular, or Vue.js.
3. Get familiar with version control using Git and GitHub.
4. Stay up-to-date with the latest web technologies, techniques, and industry trends.
5. Participate in online forums, attend meetups, and network with other developers to learn from their experiences and gain new insights.
6. Finally, practice and hone your skills by working on personal projects or contributing to open-source projects.

Note 📝: A portfolio of your projects and a solid understanding of the development process are key to finding a job as a front-end developer.

here is my @YouTube channel [codermj](https://www.youtube.com/@thecodermj/) where you can learn how to build front-end projects if you have a little knowledge of HTML and CSS
Introdução ao Salesforce OmniStudio
Tags: salesforce, omnistudio, lowcode, nocode
Published: 2023-02-15 12:54:47

O _OmniStudio_ se apresenta como um pacote de engajamento digital centrado no cliente, onde as interações se dão de maneira eficiente, precisa e personalizada. Ele é capaz de criar processos automáticos que fazem a integração de dados entre sistemas e podem ser implementados em diferentes canais e dispositivos, como uma página _web_, _Salesforce Community_ ou _Lightning Page_.

Com ele, podemos construir soluções altamente customizáveis de forma declarativa ou _drag-and-drop_. Esse tipo de desenvolvimento permite que os componentes sejam desenvolvidos em um tempo menor, e permitam atualizações mais rápidas, que podem ser feitas por administradores da plataforma ou desenvolvedores.

Sua arquitetura é orientada a microsserviços e modular, o que permite maior escalabilidade em picos de maior fluxo de dados. O OmniStudio utiliza a estrutura de dados JSON e interface RESTful, o que permite que os desenvolvedores possam utilizar outros serviços independentes, sem a necessidade de interação com outros desenvolvedores.

É importante lembrar que o _OmniStudio_ só pode ser usado em organizações do _Salesforce _com licença para nuvens de segmentos específicos, ou _Salesforce Industries_:

- _Financial Service_;
- _Health Cloud_;
- _Manufacturing_;
- _Communications_;
- _Media_;
- _Energy & Utilities_;
- _Public Sector_;
- _Insurance_.

Podemos dividir o OmniStudio em três camadas:

- _Digital Experience_;

É a camada de _frontend_, responsável por promover experiências de interação eficientes, através de interfaces de usuário com alta performance. Ela é formada por dois tipos de interfaces de usuário, que são os _FlexCards _e _Omniscripts_. Estes componentes são construídos com o _Lightning Web Components (LWC)_, e configurados de maneira declarativa.

- _Service Management_;

É a cama de _backend_, que inclui os serviços de dados responsáveis pela leitura, escrita, cálculo e rastreio dos dados dentro e fora do Salesforce. Ela é formada por: _OmniStudio DataRaptors_ e _Omnistudio Integration Procedures_.

- _Developer Experience_.

São ferramentas do ciclo de vida do aplicativo para que os desenvolvedores gerenciem e movam as alterações de componentes do _OmniStudio _entre ambientes (desenvolvimento, testes e produção). Ela é formada por: _IDX Build Tool_ e _IDX WorkBench_.

> Esse artigo é resultado dos meus estudos sobre o OmniStudio. A ideia é que eu faça uma série de artigos, com o intuito de documentar os estudos enquanto avanço nos temas. Breve estarei publicando artigos que descrevam melhor cada camada do OmniStudio.

## Referências
[Documentação](https://help.salesforce.com/s/articleView?id=sf.os_omnistudio.htm&type=5)
[Get to Know OmniStudio](https://trailhead.salesforce.com/pt-BR/content/learn/trails/get-to-know-omnistudio)
Python List Methods
Tags: python, beginners
Published: 2023-02-15 12:52:46

1.append():
The append() method is used to append a value at the end of an existing list. The value to be appended is passed as an argument.
```
arr = []
arr.append(1)
print(arr) #[1]
```

---
2.insert():
The insert() method is used to add an element to a list at the specified position. All the elements from the specified position will be shifted to the right. If the given position is out of range, the element will be appended at the end.
```
print(arr) #[1]
arr.insert(0, 10)
print(arr) #[10, 1]
```

---
3.extend():
The extend() method takes a list of values as an argument and adds all the values to the existing list.
```
print(arr) #[10, 1]
arr.extend([2, 3, 4])
print(arr) #[10, 1, 2, 3, 4]
```

---
4.remove():
The remove() method removes the given element from the list. If there are duplicate elements, the first occurrence will be removed, and if the given element is not in the list, exception will be raised.
```
print(arr) [10, 1, 2, 3, 4]
arr.remove(10)
print(arr) [1, 2, 3, 4]
arr.remove(12) #ValueError: list.remove(x): x not in list
```

---
5.pop():
The pop() method is used to remove an element at a specified index from the list. If the index position is not given, last element will be removed.
```
print(arr) #[1, 2, 3, 4]
arr.pop(2)
print(arr) #[1, 2, 4]
arr.pop()
print(arr) #[1, 2]
arr.pop(4) #IndexError: pop index out of range
```

---
6.index():
The index() method takes a value as an argument and returns the index of first occurrence  position of that value. If the value is not in the list, an exception will be raised.
```
print(arr) #[1, 2]
print(arr.index(2)) #1
print(arr.index(3)) #ValueError: list.index(x): x not in list
```

---
7.count():
The count() method takes a value as an argument, searches the value in the list and returns the number of times the value has repeated in the list.
```
print(arr) #[1, 2]
print(arr.count(2)) #1
arr.extend([2, 3, 4, 5])
print(arr.count(2)) #2
```

---
8.reverse():
This method reverses the list and returns the reversed list as an output.
```
print(arr) #[1, 2, 2, 3, 4, 5]
arr.reverse()
print(arr) #[5, 4, 3, 2, 2, 1]
```

---
9.sort():
This method sorts the list list in-place in ascending or descending order. By default, this method sorts the list in ascending order. To sort the list in the descending order we should set reverse to True in the argument.
```
print(arr) #[5, 4, 3, 2, 2, 1]
arr.sort()
print(arr) #[1, 2, 2, 3, 4, 5]
arr.sort(reverse=True)
print(arr) #[5, 4, 3, 2, 2, 1]
```

---
10.copy():
This methods returns a copy of the list.
```
print(arr) #[5, 4, 3, 2, 2, 1]
arr2 = arr.copy()
print(arr2) #[5, 4, 3, 2, 2, 1]
``` 

---
11.clear():
This method is used to remove all the values inside a list.
```
print(arr) #[5, 4, 3, 2, 2, 1]
arr.clear()
print(arr) #[]
```

---
## References:
- [Python List/Array Methods, W3Schools.](https://www.w3schools.com/python/python_ref_list.asp)
- [Python List Methods, Programiz.](https://www.programiz.com/python-programming/methods/list)
5 Useful chrome extensions for Leetcode 👩‍💻
Tags: leetcode, beginners, programming, productivity
Published: 2023-02-15 12:33:11

_LeetCode is an online coding platform that offers software engineers a variety of coding challenges, courses, interviews, and other tools._

There are a number of Chrome extensions available for Leetcode, but here are 5 useful Chrome extensions for Leetcode:

## 1. [LeetHub](https://chrome.google.com/webstore/detail/leethub/aciombdipochlnkbpcbgdpjffcfdbggi?hl=en)

![LeetHub](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yw7kl1hvo93z5m1wm8wo.png)

It integrates a GitHub repository with leetcode and automatically pushes your solution to GitHub when you pass all tests on a Leetcode problem.

## 2. [Leetcode Formatter](https://chrome.google.com/webstore/detail/leetcode-format/imogghebhifnnlgogigikjecilkicfpp?hl=en)

![Leetcode Formatter](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9ly1qmx5i6ny8c1c3hd0.png)

It formats your code into a neat and readable form. It basically, adds Format code button on leetcode to format the code using Prettier code formatter.

## 3. [LeetCode Video Solutions](https://chrome.google.com/webstore/detail/leetcode-video-solutions/ilnmgkahgjdpkoliooildngldmilhelm?hl=en)

![LeetCode Video Solutions](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0veottfagkok8dll1zw7.png)

This extension let you Watch free LeetCode video solutions on the problem page itself, rather than being sidetracked by cat videos on YouTube when you should be solving a LeetCode problem.

## 4. [LeetCode Enhancer](https://chrome.google.com/webstore/detail/leetcode-enhancer/gcmncppaaebldbkgkcbojghpmpjkdlmp)

![LeetCode Enhancer](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fxfqti0k0yw49xi768ma.png)

This extension helps increase your productivity by removing distracting visual items from the screen, allowing you to concentrate on what is important.

## 5. [CodingBuddy](https://chrome.google.com/webstore/detail/codingbuddy/akfkjnollddcnljnlbcjjlnhdleghgam?hl=en)

![CodingBuddy](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/le3ark035viho1t3vwof.png)

This extension shows programming contests that are currently taking place and those that will be held soon on several major platforms.

If you found this useful, consider:

> ✅ Follow @iarchitsharma for more content like this
> ✅ Follow me on [Twitter](twitter.com/iArchitSharma) where I share free resources on regular basis!