<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Nasirul Islam</title>
    <description>The latest articles on DEV Community by Nasirul Islam (@nasirulislam).</description>
    <link>https://dev.to/nasirulislam</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F776950%2Ffb7374a0-e554-46db-a1a9-a75c318896dc.png</url>
      <title>DEV Community: Nasirul Islam</title>
      <link>https://dev.to/nasirulislam</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nasirulislam"/>
    <language>en</language>
    <item>
      <title>🌟 An Excellent Roadmap to Becoming a Back-End Engineer! 🌟</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Tue, 21 Jan 2025 17:10:18 +0000</pubDate>
      <link>https://dev.to/nasirulislam/an-excellent-roadmap-to-becoming-a-back-end-engineer-544h</link>
      <guid>https://dev.to/nasirulislam/an-excellent-roadmap-to-becoming-a-back-end-engineer-544h</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2v3oqzyq8d41xmsl5mdl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2v3oqzyq8d41xmsl5mdl.png" alt="Image description" width="800" height="538"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Are you passionate about Back-End Development? Dreaming of becoming a world-class back-end engineer but unsure where to start or how to structure your learning journey?
&lt;/h2&gt;

&lt;p&gt;I’m thrilled to share an excellent roadmap I’ve prepared that outlines a clear, step-by-step guide to mastering back-end development with C# and ASP.NET Core. &lt;/p&gt;

&lt;p&gt;💡 &lt;strong&gt;Why is this roadmap special?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This roadmap is designed to guide anyone whether you're just starting or transitioning into back-end development through the essential skills, tools, and concepts needed to thrive in this field. From mastering C# fundamentals to working with databases, designing efficient APIs, and exploring cloud deployment, this plan covers it all. &lt;/p&gt;

&lt;p&gt;✨ &lt;strong&gt;For those who dream big:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Every expert was once a beginner. If you're motivated to pursue this path, stay consistent, and believe in your ability to grow, there’s no limit to what you can achieve! This roadmap isn’t just a plan. It’s a pathway to fulfilling your goals and making an impact in the world of software engineering. &lt;/p&gt;

&lt;p&gt;🤝 &lt;strong&gt;Let’s learn and grow together!&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you’re interested in back-end development and want to take your skills to the next level, feel free to connect with me! I’d love to share insights, exchange knowledge, and support you on your journey. Whether you’re starting from scratch or enhancing your expertise, we’re all in this together. &lt;/p&gt;

&lt;p&gt;📥 &lt;strong&gt;&lt;a href="https://drive.google.com/file/d/1PvDo0y3CwBvdY8yU-9ttVkU1mibKke7W/view?usp=sharing" rel="noopener noreferrer"&gt;Download the roadmap here.&lt;/a&gt;&lt;/strong&gt; &lt;br&gt;
Share your progress, ask questions, and don’t hesitate to reach out if you need guidance. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nasirul Islam&lt;/strong&gt;&lt;br&gt;
&lt;a href="mailto:nasirulislam866@gmail.com"&gt;nasirulislam866@gmail.com&lt;/a&gt;&lt;br&gt;
&lt;a href="https://github.com/Nasirul-Islam" rel="noopener noreferrer"&gt;https://github.com/Nasirul-Islam&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.linkedin.com/in/nasirul866/" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/nasirul866/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>aspdotnet</category>
      <category>backenddevelopment</category>
      <category>csharp</category>
    </item>
    <item>
      <title>MongoDB vs MySQL</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Thu, 23 Dec 2021 15:28:12 +0000</pubDate>
      <link>https://dev.to/nasirulislam/mongodb-vs-mysql-29d2</link>
      <guid>https://dev.to/nasirulislam/mongodb-vs-mysql-29d2</guid>
      <description>&lt;h2&gt;
  
  
  MongoDB
&lt;/h2&gt;

&lt;p&gt;MongoDB is a cross-platform document-oriented database program. And MongoDB is a NoSQL database program. MongoDB uses documents like JSON with optional schema. MongoDB is developed by MongoDB Inc. and licensed under the Server Side Public License. &lt;/p&gt;

&lt;h2&gt;
  
  
  NoSQL Database
&lt;/h2&gt;

&lt;p&gt;NoSQL Database is a non-relational Data Management System, that does not require a fixed schema. And NoSQL databases are databases that store data in a format other than relational tables. That's is, A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases. NoSQL database stands for “Not Only SQL” or “Not SQL. &lt;/p&gt;

&lt;h2&gt;
  
  
  MySQL
&lt;/h2&gt;

&lt;p&gt;MySQL is an open-source relational database management system from the Oracle Corporation. Like other relational systems, MySQL stores data in tables and uses structured query language (SQL) for database access. When MySQL developers need to access data in an application, they merge data from multiple tables together in a process. In MySQL, we predefine our database schema and set up rules to govern the relationships between fields in our tables.  &lt;/p&gt;

&lt;h2&gt;
  
  
  SQL Database
&lt;/h2&gt;

&lt;p&gt;SQL stands for Structured Query Language which is basically a language used by databases. SQL lets you access and store, manipulate, and retrieve data within relational databases. Data in tables is stored in row and column format at the logical level, but physically it stores data in something called data pages. A data page is the fundamental unit of data storage in SQL Server and it is 8KB in size. Using SQL, you are able to interact with the database by writing queries, which when executed, return any results which meet its criteria. &lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;From this tutorial, we have learned about MongoDB vs MySQL&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Learned from the internet.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Thanks for reading
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reach out to me on:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nasirul-islam.netlify.app/"&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Nasirul-Islam"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/nasirul866/"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>mongodb</category>
      <category>mysql</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
    <item>
      <title>React Virtual DOM and diffing- algorithm Simplified</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Wed, 22 Dec 2021 09:56:08 +0000</pubDate>
      <link>https://dev.to/nasirulislam/react-virtual-dom-and-diffing-algorithm-simplified-6l1</link>
      <guid>https://dev.to/nasirulislam/react-virtual-dom-and-diffing-algorithm-simplified-6l1</guid>
      <description>&lt;h2&gt;
  
  
  React:
&lt;/h2&gt;

&lt;p&gt;React is JavaScript open-source library. Using which we can make various interactions in the UI. &lt;/p&gt;

&lt;h2&gt;
  
  
  JSX:
&lt;/h2&gt;

&lt;p&gt;React gives us a markup syntax of its own, with which we can create a react element, called JSX. That is, JavaScript XML. It looks like HTML but not HTML. &lt;/p&gt;

&lt;p&gt;React generates HTML code with JSX. Although we write the syntax of JSX inside the JavaScript file, although JavaScript does not understand JSX, we have to use a transpiler. For example Babel. Babel converts JSX codes to JavaScript. &lt;/p&gt;

&lt;h2&gt;
  
  
  Virtual DOM:
&lt;/h2&gt;

&lt;p&gt;React creates elements for itself using its createsElements () function. By combining all the elements, he creates a separate dom inside himself. This dom is called Virtual Dom. React's virtual dom basically renders as much as the browser's dom has changed. &lt;/p&gt;

&lt;p&gt;We can imagine the Virtual Dom as a simple tree. The different notes of which are one component. Whenever we change the state of a component, a tree is created first. Where the modified component and its child components are reconstructed. That is, React has two representations of the virtual dom. One is the state before it, and the other is the state after the change. React compares these two conditions. &lt;/p&gt;

&lt;h2&gt;
  
  
  Diffing-Algorithm:
&lt;/h2&gt;

&lt;p&gt;React uses the "Diff" algorithm to do this comparison. With that, React can understand which places have changed. React then changes only the part of the dom where the change was made. &lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion:
&lt;/h2&gt;

&lt;p&gt;Attempts have been made to simply explain the virtual DOM and diffing-algorithm without any explanation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Thanks for reading
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reach out to me on:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nasirul-islam.netlify.app/"&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Nasirul-Islam"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/nasirul866/"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>react</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>this keyword and .call(), .apply(), .bind() method</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Tue, 21 Dec 2021 17:03:12 +0000</pubDate>
      <link>https://dev.to/nasirulislam/this-keyword-and-call-apply-bind-method-9b6</link>
      <guid>https://dev.to/nasirulislam/this-keyword-and-call-apply-bind-method-9b6</guid>
      <description>&lt;h2&gt;
  
  
  What is this keyword in javascript?
&lt;/h2&gt;

&lt;p&gt;"this" keyword in JavaScript allows a function to be re-used in various execution contexts. That is, once a function is defined, it can be invoked for different objects using the "this" keyword. The current execution contact identifies an object when we invoke a method.&lt;/p&gt;

&lt;p&gt;If you want to understand this keyword, you have to know some binding rules. We will discuss these step by step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Implicit Binding
&lt;/h2&gt;

&lt;p&gt;In the case of common JavaScript functions, if the function is preceded by a (.) Dot notation, then the object before the dot notation is the "this" or object inside the function. If the property of the object is not found then JavaScript takes the window as the object by default.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let blog = {
    name: 'Tapas',
    address: 'freecodecamp',
    message: function() {
        console.log(`${this.name} blogs on ${this.address}`);
    }
};

blog.message();

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Explicit Binding:
&lt;/h2&gt;

&lt;p&gt;If the function is not within an object, but if the function is in a global context, then when calling the function, it is necessary to specify which object will be "this" directly. This requires some built-in methods of JavaScript. The methods are:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let getName = function() {
     console.log(this.name);
 }

let user = {
   name: 'Tapas',
   address: 'Freecodecamp'  
 };

getName.call(user);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  .call() method:
&lt;/h2&gt;

&lt;p&gt;If the function is in the global context, then when invoked the function you have to specify which object will be "this" directly. This requires using JavaScript's built-in method .call(). .call() method takes an object as the first parameter of the method and many more parameters can be given later.&lt;/p&gt;

&lt;h2&gt;
  
  
  .apply() method:
&lt;/h2&gt;

&lt;p&gt;In the same case, JavaScript's built-in method .apply() can be used. It works like the .call () method. However, the .apply() method takes an object as its first parameter and an array as its second parameter.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let getName = function(hobby1, hobby2) {
     console.log(this.name + ' likes ' + hobby1 + ' , ' + hobby2);
 }

let user = {
   name: 'Tapas',
   address: 'Bangalore'  
 };

let hobbies = ['Swimming', 'Blogging'];

getName.apply(user, hobbies);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  .bind() method:
&lt;/h2&gt;

&lt;p&gt;The .bind() method works just like the .call() method. However, the difference is that the .bind() method returns the instance of the function without directly calling the function and we can store it in a variable and call this variable as a function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;let getName = function(hobby1, hobby2) {
     console.log(this.name + ' likes ' + hobby1 + ' , ' + hobby2);
 }

let user = {
   name: 'Tapas',
   address: 'Bangalore'  
 };

let hobbies = ['Swimming', 'Blogging'];
let newFn = getName.bind(user, hobbies[0], hobbies[1]); 

newFn();

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Window Binding:
&lt;/h2&gt;

&lt;p&gt;If "this" is an object within a function, unless it is defined directly or indirectly, JavaScript takes window as the object by default. This is basically window binding.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;From this tutorial, we have learned &lt;strong&gt;"this"&lt;/strong&gt; keyword in javascript and &lt;strong&gt;.call()&lt;/strong&gt;, &lt;strong&gt;.apply()&lt;/strong&gt;, &lt;strong&gt;.bind()&lt;/strong&gt; methods.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reference
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.freecodecamp.org/news/javascript-this-keyword-binding-rules/"&gt;Freecodecamp Web Docs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=uZqyRJkTQog"&gt;Learn with Sumit Bangladesh&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Thanks for reading
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reach out to me on:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nasirul-islam.netlify.app/"&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Nasirul-Islam"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/nasirul866/"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>JavaScript Array Methods</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Mon, 20 Dec 2021 07:31:44 +0000</pubDate>
      <link>https://dev.to/nasirulislam/javascript-array-methods-2n59</link>
      <guid>https://dev.to/nasirulislam/javascript-array-methods-2n59</guid>
      <description>&lt;h2&gt;
  
  
  What is the array method in JavaScript?
&lt;/h2&gt;

&lt;p&gt;Array method in JavaScript is some of the built-in functions of JavaScript. Which we can apply to an array. Each method has different functions and features. Using which we can perform various tasks on an array. This saves us from having to write simple functions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;These are the array methods of JavaScript:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3kd41rkjg2lazl24q6cr.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3kd41rkjg2lazl24q6cr.jpeg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  concat():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;concat()&lt;/strong&gt; method is used to add two or more arrays. It does not change the existing array, but creates a new array and returns a copy of that array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = ['a', 'b', 'c'];
const array2 = ['d', 'e', 'f'];
const array3 = array1.concat(array2);
console.log(array3);
// expected output: Array ["a", "b", "c", "d", "e", "f"]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  filter():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;filter()&lt;/strong&gt; method creates a new array with each element of an array, with the elements that meet the conditions inside the function. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];

const result = words.filter(word =&amp;gt; word.length &amp;gt; 6);

console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  find():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;find()&lt;/strong&gt; method returns the value of the first element of an array by comparing it with each element of an array. The element that meets the conditions inside the function.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = [5, 12, 8, 130, 44];

const found = array1.find(element =&amp;gt; element &amp;gt; 10);

console.log(found);
// expected output: 12

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  findIndex():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;findIndex()&lt;/strong&gt; method gives the index number of the first element of an array by comparing it with each element of an array. The component that meets the conditions inside the function. Otherwise, it returns -1, indicating that no element met the condition.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = [5, 12, 8, 9, 140, 130, 44];

const isLargeNumber = (element) =&amp;gt; element &amp;gt; 13;

console.log(array1.findIndex(isLargeNumber));
// expected output: 4

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  forEach():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;forEach()&lt;/strong&gt; method calls a function once for each element of an array, and the function returns one element at a time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = ['a', 'b', 'c'];

array1.forEach(element =&amp;gt; console.log(element));

// expected output: "a"
// expected output: "b"
// expected output: "c"

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  includes():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;includes()&lt;/strong&gt; method checks an array to see if it contains that specific element. And it returns true or false.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = [1, 2, 3];
console.log(array1.includes(2));
// expected output: true
const pets = ['cat', 'dog', 'bat'];
console.log(pets.includes('cat'));
// expected output: true
console.log(pets.includes('at'));
// expected output: false

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  indexOf():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;indexOf()&lt;/strong&gt; method returns the first index of the specified element in the array, otherwise returns -1 if it is not found.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const beasts = ['ant', 'bison', 'camel', 'duck', 'bison'];

console.log(beasts.indexOf('bison'));
// expected output: 1

console.log(beasts.indexOf('giraffe'));
// expected output: -1

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  pop():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;pop()&lt;/strong&gt; method removes the last element from an array and returns that element. And forms a new array with the rest of the elements except the last one. This method changes the length of the array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const plants = ['broccoli', 'cauliflower', 'cabbage', 'kale', 'tomato'];

console.log(plants.pop());
// expected output: "tomato"

console.log(plants);
// expected output: Array ["broccoli", "cauliflower", "cabbage", "kale"]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  shift():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;shift()&lt;/strong&gt; method removes the first element from an array and returns that removed element. And forms a new array with all the other elements except the first one. This method changes the length of the array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = [1, 2, 3];

console.log(array1.shift());
// expected output: 1

console.log(array1);
// expected output: Array [2, 3]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  push():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;push()&lt;/strong&gt; method adds new elements to the end of an array, forms a new array with the element at the end, and returns a new length. This method changes the length of the array. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const animals = ['pigs', 'goats', 'sheep'];

console.log(animals);
// expected output: Array ["pigs", "goats", "sheep"]

animals.push('chickens', 'cats', 'dogs');
console.log(animals);
// expected output: Array ["pigs", "goats", "sheep", "chickens", "cats", "dogs"]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  unshift():
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;unshift()&lt;/strong&gt; method adds one or more new elements to the beginning of an array, forms a new array with the first elements, and returns a new length. This method changes the length of the array.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const array1 = [1, 2, 3];

console.log(array1);
// expected output: Array [1, 2, 3]

array1.unshift(4, 5)

console.log(array1);
// expected output: Array [4, 5, 1, 2, 3]

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;From this tutorial, we have learned some common array methods. Part-2 will come soon with more details of the Array Method.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reference
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://developer.mozilla.org/" rel="noopener noreferrer"&gt;MDN Web Docs&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/" rel="noopener noreferrer"&gt;W3Schools Web Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Thanks for reading
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reach out to me on:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://nasirul-islam.netlify.app/" rel="noopener noreferrer"&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Nasirul-Islam" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/nasirul866/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>javascript</category>
      <category>array</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>What is ::before and ::after in CSS?</title>
      <dc:creator>Nasirul Islam</dc:creator>
      <pubDate>Sun, 19 Dec 2021 10:24:29 +0000</pubDate>
      <link>https://dev.to/nasirulislam/what-is-before-and-after-in-css-2k26</link>
      <guid>https://dev.to/nasirulislam/what-is-before-and-after-in-css-2k26</guid>
      <description>&lt;h2&gt;
  
  
  What is ::before and ::after in CSS?
&lt;/h2&gt;

&lt;p&gt;In CSS ::before and ::after is a type of pseudo-elements. This allows us to add something before or after an element without the use of HTML.&lt;/p&gt;

&lt;p&gt;We use these types of pseudo-elements at different times when designing a website. The simplest example to understand, the bullet mark in front of the list. This way you can add text before or after an element if you want using pseudo-elements.&lt;/p&gt;

&lt;p&gt;In this tutorial, we will discuss with examples, how to use ::before and ::after pseudo-elements to sort content on a web page. This tutorial will give you a good idea of how to use :: before and :: after pseudo-elements in CSS.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pseudo Element in CSS
&lt;/h2&gt;

&lt;p&gt;Pseudo-elements are visible elements on a web page that are not "in DOM" or created from HTML but inserted directly from CSS. It plays a helpful role in various web page designs. It beautifully supports different browsers. &lt;/p&gt;

&lt;p&gt;A CSS pseudo-element is a keyword added to a CSS selector that lets you style a specific part of the selected element. For example, ::first-line can be used to change the font of the first line of a paragraph. Since,  ::first-line, ::first-letter, ::before, and ::after is a pseudo-element. That's why we need to know about pseudo-element first. So, we are discussing about this. &lt;/p&gt;

&lt;p&gt;To use pseudo-element you must enter, As a rule, double colons (::) after selector. &lt;br&gt;
Like this syntax - &lt;/p&gt;

&lt;p&gt;**&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;selector::pseudo-element { 
property: value; 
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
**&lt;/p&gt;
&lt;h2&gt;
  
  
  ::before Pseudo-Element in CSS
&lt;/h2&gt;

&lt;p&gt;The ::before selector inserts something before the content of each selected element. The ::before pseudo-element adds content that appears before an element on a web page. In most cases, it is used to add text before an element.&lt;/p&gt;

&lt;p&gt;The ::before pseudo-element syntax is - &lt;/p&gt;

&lt;p&gt;**&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;selector::before { 
property: value; 
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
**&lt;/p&gt;
&lt;h2&gt;
  
  
  ::after  Pseudo-Element in CSS
&lt;/h2&gt;

&lt;p&gt;The ::after selector inserts something after the content of each selected element. The ::after pseudo-element adds content that appears after an element on a web page. In most cases, it is used to add text after an element.&lt;/p&gt;

&lt;p&gt;The ::after pseudo-element syntax is - &lt;/p&gt;

&lt;p&gt;**&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;selector::after  { 
property: value; 
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
**&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The ::before and ::after pseudo-elements allow you to add content to a specific part of an element you have selected in a CSS rule. The simplest example, the ::before selector could be used to add text before a link. The ::after selector could be used to add a bullet sign after a paragraph of text.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reference
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS"&gt;MDN Web Docs&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/w3css/"&gt;W3Schools Web Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Thanks for reading
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reach out to me on:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://nasirul-islam.netlify.app/"&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/Nasirul-Islam"&gt;GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/in/nasirul866/"&gt;LinkedIn&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>css</category>
      <category>html</category>
      <category>webdev</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
