<?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: Hootan</title>
    <description>The latest articles on DEV Community by Hootan (@hootan_hsn).</description>
    <link>https://dev.to/hootan_hsn</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%2F837344%2Fb9e35078-840d-4ced-af17-3ae4f9a2137f.jpg</url>
      <title>DEV Community: Hootan</title>
      <link>https://dev.to/hootan_hsn</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hootan_hsn"/>
    <language>en</language>
    <item>
      <title>AWS S3 Multipart Upload</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Mon, 20 Oct 2025 18:06:34 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-s3-multipart-upload-173i</link>
      <guid>https://dev.to/hootan_hsn/aws-s3-multipart-upload-173i</guid>
      <description>&lt;p&gt;When your object size reaches 100mb. you should consider using multipart uploads instead of uploading in a single operation.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When using multipart upload, you need to retry uploading only parts that are interrupted during the upload. You don't need to restart uploading your object from the beginning.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Multipart upload process
&lt;/h2&gt;

&lt;p&gt;Multipart upload is a three-step process: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Multipart upload initiation :&lt;/strong&gt; When you send a request to initiate a multipart upload, Amazon S3 returns a response with an upload ID, which is a unique identifier for your multipart upload. You must include this upload ID whenever you upload parts, list the parts, complete an upload, or stop an upload. If you want to provide any metadata describing the object being uploaded, you must provide it in the request to initiate multipart upload.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Parts upload :&lt;/strong&gt; When uploading a part, in addition to the upload ID, you must specify a part number. You can choose any part number between 1 and 10,000. A part number uniquely identifies a part and its position in the object you are uploading. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Multipart upload completion :&lt;/strong&gt; When you complete a multipart upload, Amazon S3 creates an object by concatenating the parts in ascending order based on the part number. If any object metadata was provided in the initiate multipart upload request, Amazon S3 associates that metadata with the object. After a successful complete request, the parts no longer exist.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>AWS Fundamentals</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Thu, 14 Aug 2025 22:35:45 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-fundamentals-1kkm</link>
      <guid>https://dev.to/hootan_hsn/aws-fundamentals-1kkm</guid>
      <description>&lt;ul&gt;
&lt;li&gt;S3 bucket: Have all your front-end files&lt;/li&gt;
&lt;li&gt;could front: CDN(content delivery network) share your files around the world.&lt;/li&gt;
&lt;li&gt;rout 53: Helps people to find it.&lt;/li&gt;
&lt;li&gt;container:
&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;Programing languages &lt;/li&gt;
&lt;li&gt;Library&lt;/li&gt;
&lt;li&gt;Configuration files &lt;/li&gt;
&lt;li&gt;Dependencies&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;this is every thing that a application code needs to ran.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ul&gt;
&lt;li&gt;ECS: AWS's service for managing containers.&lt;/li&gt;
&lt;li&gt;Database: &lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;RDs: AQL database &lt;strong&gt;Cons:&lt;/strong&gt;Queries, storing relationships.&lt;/li&gt;
&lt;li&gt;DynamoDB: no SQL database &lt;strong&gt;Cons:&lt;/strong&gt;Fast, Scalability.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;when use pushes  &lt;strong&gt;Add to card&lt;/strong&gt;&lt;br&gt;
                      |&lt;br&gt;
                      V&lt;br&gt;
                  &lt;strong&gt;API getway&lt;/strong&gt;&lt;br&gt;
                      |&lt;br&gt;
                      V&lt;br&gt;
lambda -&amp;gt; update the database &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Lamda does that all automation but if you want customize it, you better use EC2.&lt;/p&gt;

&lt;p&gt;If it is a Post method request, it mu7st include and Origin header.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Security
&lt;/h2&gt;

&lt;p&gt;VPC: 1. Network ACLs.   2. Security Groups&lt;br&gt;
Nacls: block certain types of traffic&lt;br&gt;
Searching Groups: firewall for each specific instance or service&lt;/p&gt;

&lt;h2&gt;
  
  
  Security Groups
&lt;/h2&gt;

&lt;p&gt;Security Groups is like frimworks and they need out-bound rul connect with other tools and for the other tool should have in-bound rull so it can recive from the first security group &lt;/p&gt;

&lt;h2&gt;
  
  
  Amazon S3 - Security
&lt;/h2&gt;

&lt;p&gt;1.User-based IAM policy &lt;br&gt;
2.Resource-based:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;bucket policies &lt;/li&gt;
&lt;li&gt;object access control list &lt;/li&gt;
&lt;li&gt;bucket access control list
3.Encryption&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;An IAM principle can access an S3 objext of the user IAM premissions allow it or the resource policy allow it and no explict deny.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Enable cross-origin resource sharing (CORS) on the S3 bucket
&lt;/h2&gt;

&lt;p&gt;Web browsers normally block scripts that originate from a domain different from the one the user is currently visiting. Because the JavaScript script is running on the users' websites but making requests to the company's S3 bucket (two different domains), it is considered a cross-origin request. Enabling CORS on the S3 bucket allows it to send specific HTTP headers that tell the browser the request is permitte&lt;/p&gt;

&lt;h2&gt;
  
  
  S3 Versioning
&lt;/h2&gt;

&lt;p&gt;is used to keep multiple variants of an object in the same bucket, which protects against accidental deletions or overwrites&lt;/p&gt;

&lt;h2&gt;
  
  
  what S3 transfer acceleration does?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Speed up uploads&lt;/li&gt;
&lt;li&gt;Global optimization&lt;/li&gt;
&lt;li&gt;No neeed for reginal buckets or replication.&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  S3 Lifecycle role
&lt;/h1&gt;

&lt;p&gt;Helps manage object storage cost effectivly by deleting or moving objects after defined period.&lt;/p&gt;

&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%2Fwp5kk5x5th884g9efjmz.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%2Fwp5kk5x5th884g9efjmz.png" alt="storage class transition comparation" width="800" height="582"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Intelligent-Tiering storage class uses machine learning algorithms to automatically move objects between two access tiers: frequent access and infrequent access. This means that objects that are frequently accessed will be stored in the frequent access tier, while objects that are infrequently accessed will be moved to the infrequent access tier, helping to reduce storage costs without sacrificing performance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Cross-Region replication &amp;amp; versioning in S3 bucket
&lt;/h2&gt;

&lt;p&gt;Copies objects from a source S3 bucket in another region bucket&lt;br&gt;
source bucket &amp;gt; Management &amp;gt; Create replication rule&lt;/p&gt;

&lt;h2&gt;
  
  
  Athena
&lt;/h2&gt;

&lt;p&gt;Amazon Athena is a serverless, interactive query service that lets you analyze data directly in Amazon S3 using standard SQL.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS PrincipleOrgID
&lt;/h2&gt;

&lt;p&gt;it allows you to &lt;strong&gt;write a bucket policy&lt;/strong&gt;that checks whether the request is coming from an AWS account that belongs to your organization.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Snowball Edge Storage Optimized
&lt;/h2&gt;

&lt;p&gt;AWS Snowball Edge Storage Optimized helps move **large amounts of data **between your on-premises environment and AWS.&lt;/p&gt;

&lt;p&gt;The Storage Optimized variant is designed specifically for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High-capacity storage: ~80 TB of usable storage per device.&lt;/li&gt;
&lt;li&gt;Efficient bulk data transfer: Ideal for petabyte-scale migrations.&lt;/li&gt;
&lt;li&gt;Local compute capability: Can run AWS Lambda functions and EC2 instances locally for preprocessing data before transfer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Glue
&lt;/h2&gt;

&lt;p&gt;Amazon Glue is a serverless data integration service from AWS that helps you discover, prepare, and combine data for analytics, machine learning, and application development.&lt;/p&gt;

&lt;h2&gt;
  
  
  EMR (Elastic MapReduce)
&lt;/h2&gt;

&lt;p&gt;Amazon EMR (Elastic MapReduce) is a cloud-based big data platform that lets you process massive datasets using popular open-source frameworks like Apache Hadoop, Spark, Hive, and Presto.&lt;/p&gt;

&lt;h2&gt;
  
  
  VPC: Private space in the cloud
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;How to structure your network&lt;/li&gt;
&lt;li&gt;Manage connections&lt;/li&gt;
&lt;li&gt;How everything communicates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every VPC has their own subnet&lt;br&gt;
Private IP adress ranges:&lt;br&gt;
10.0.0.0    -  10.255.255.255&lt;br&gt;
172.16.0.0  -  172.31.255.255&lt;br&gt;
192.168.0.0 -  192.168.255.255&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Lambda function should be inside VPC&lt;/p&gt;

&lt;p&gt;DataBase should have private IP address.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Early projects are a great way to start learning
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Build a Portfolio website -&amp;gt; S3 bucket &lt;/li&gt;
&lt;li&gt;System for tracking tasks -&amp;gt; connect your App to RDs in the EC2 &lt;/li&gt;
&lt;li&gt;App for showing images -&amp;gt; using IAM rules(security practices)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Red shift
&lt;/h2&gt;

&lt;p&gt;Amazon Redshift is AWS’s fully managed cloud data warehouse designed for fast, scalable analytics on massive datasets. It’s built to handle everything from simple dashboards to complex data modeling—without the headache of managing infrastructure.&lt;/p&gt;

&lt;h2&gt;
  
  
  EC2
&lt;/h2&gt;

&lt;p&gt;when you working EC2 , on network setting change the subnet.&lt;/p&gt;

&lt;h2&gt;
  
  
  EBS (Elastic Block Store
&lt;/h2&gt;

&lt;p&gt;Amazon Elastic Block Store (Amazon EBS) is a scalable, high-performance block storage service designed for use with Amazon EC2 instances. Think of it as a virtual hard drive in the cloud that you can attach to your virtual machines (EC2) to store data persistently—even if the instance is stopped or terminated&lt;/p&gt;

&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%2F0sgb5qpbrob3oievuljn.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%2F0sgb5qpbrob3oievuljn.png" alt="EBS volum types" width="800" height="720"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cognito
&lt;/h2&gt;

&lt;p&gt;It is used to manage thr user data for your apps across multiple mobiles or connected devices&lt;br&gt;
Beacause we using Cognito user pool, we have to create an authorizer in API getway.&lt;br&gt;
to authenticate calls API geteway is going to use Json web tokens(JWT) that are returned by cognito.&lt;/p&gt;

&lt;p&gt;while you making cognito keep that in mined that:&lt;br&gt;&lt;br&gt;
If you select "Public client" or "Single Page Application(SPA)" or "Mobile Application", &lt;strong&gt;a client secret will not be generated&lt;/strong&gt; by default.&lt;br&gt;
If you select "confidential client" or "web application", &lt;strong&gt;a client secret will be generated&lt;/strong&gt; by default.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS System manager
&lt;/h2&gt;

&lt;p&gt;Provides secure node managment without the need to open inbound ports, maintain bastion hosts, or manage SSH keys.&lt;/p&gt;

&lt;h2&gt;
  
  
  Internet Getway
&lt;/h2&gt;

&lt;p&gt;Rout destination 0.0.0.0/0&lt;br&gt;
Instance public V4 or V6 or ElasticIP&lt;/p&gt;

&lt;h2&gt;
  
  
  Nat Getway
&lt;/h2&gt;

&lt;p&gt;Nat Getway is a tool that can connect Lambda to interner getway so that one can connect  to the internet, so  basicly nat geteway makes publicIP for lambda&lt;/p&gt;

&lt;p&gt;Specify the public subnet.&lt;br&gt;
Specify elastic IP Address.&lt;br&gt;
Update the Rout table and target to Nat getway.&lt;/p&gt;

&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%2Fl82b30cne684ouhpj665.jpg" 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%2Fl82b30cne684ouhpj665.jpg" alt="The way that web server and DB server works" width="584" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Backup
&lt;/h2&gt;

&lt;p&gt;keywords: centralzed, full managed services&lt;br&gt;
Automated the data protiction across the varius AWS swrvices.&lt;br&gt;
it used for data storage protection &lt;/p&gt;

&lt;h2&gt;
  
  
  Health check
&lt;/h2&gt;

&lt;p&gt;increasing the health check intro val makes the process slower, as it would take longer between checks to.determine if an instance is healthy.&lt;/p&gt;

&lt;h2&gt;
  
  
  Custom Amazon machine Image(AMI)
&lt;/h2&gt;

&lt;p&gt;by using AMI you eliminate the time the instance spend downloading and configuring application upon boot.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Life cycle policies:&lt;/strong&gt; are preferred tool for cost optimization when you have a define access pattern (eg. rarely after X days)&lt;/p&gt;

</description>
      <category>aws</category>
      <category>fundamental</category>
    </item>
    <item>
      <title>AWS- How to Storage</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Mon, 15 Apr 2024 20:51:54 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-how-to-storage-1f3f</link>
      <guid>https://dev.to/hootan_hsn/aws-how-to-storage-1f3f</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;EBS Volumes are created for a specific AZ . It is possible to migrate them between different AZs using EBS Snapshots.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Aurora
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Aurora read replica
&lt;/h2&gt;

&lt;p&gt;Scalable - available _ real heavy works and better on sql&lt;/p&gt;

&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%2F5sogoq5v1n287yrdjeik.jpeg" 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%2F5sogoq5v1n287yrdjeik.jpeg" alt="replica aurora" width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;We &lt;strong&gt;cannot&lt;/strong&gt; directly inport DB snaps/hot into Aurora&lt;/p&gt;

&lt;p&gt;DMS doesn't work with Snapshot.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You can not directly import Db snapshot into Aurora to do that you have to use Database migration service&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;RDS snapshot only compatible with RDSs&lt;/p&gt;

&lt;p&gt;By default, the Root volume type will be deleted as its "Delete On Termination" attribute checked by default. Any other EBS volume types will not be deleted as its "Delete On Termination" attribute disabled by default.&lt;/p&gt;

&lt;p&gt;MIs are built for a specific AWS Region, they're unique for each AWS Region. You can't launch an EC2 instance using an AMI in another AWS Region, but you can copy the AMI to the target AWS Region and then use it to create your EC2 instances.&lt;/p&gt;

&lt;p&gt;When creating EC2 instances, you can only use the following EBS volume types as boot volumes: gp2, gp3, io1, io2, and Magnetic (Standard).&lt;/p&gt;

&lt;p&gt;Using EBS Multi-Attach, you can attach the same EBS volume to multiple EC2 instances in the same AZ. Each EC2 instance has full read/write permissions.&lt;/p&gt;

&lt;p&gt;EFS is a network file system (NFS) that allows you to mount the same file system on EC2 instances that are in different AZs.&lt;/p&gt;

&lt;p&gt;EBS are network drives which makes it provides less I/O performance than Instance Store.&lt;/p&gt;

&lt;p&gt;EC2 Instance Store provides the best disk I/O performance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;You are running a high-performance database that requires an IOPS of 310,000 for its underlying storage. What do you recommend?&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;256,000 is the maximum IOPS you can achieve when you're using the EBS io2 Block Express volume type.&lt;/p&gt;

&lt;p&gt;64,000 is the maximum IOPS you can achieve when you're using EBS io1 or io2 volume types.&lt;/p&gt;

&lt;p&gt;16,000 is the maximum IOPS you can achieve when you're using the EBS gp2 volume type.&lt;/p&gt;

&lt;p&gt;You can run a database on an EC2 instance that uses an Instance Store, but you'll have a problem that the data will be lost if the EC2 instance is stopped (it can be restarted without problems). One solution is that you can set up a replication mechanism on another EC2 instance with an Instance Store to have a standby copy. Another solution is to set up backup mechanisms for your data. It's all up to you how you want to set up your architecture to validate your requirements. In this use case, it's around IOPS, so we have to choose an EC2 Instance Store.&lt;/p&gt;

&lt;p&gt;provisioned volumes greate for data base worload wich sensetive to storage performance and consistancy.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Storage Classes
&lt;/h2&gt;

&lt;p&gt;Data base Dump:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;S3&lt;/li&gt;
&lt;li&gt;Aurora&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Tier List&lt;/strong&gt;&lt;br&gt;
Regional frequently accessed files&lt;br&gt;
Infrequent Access: Low price and cost to retrieve files&lt;br&gt;
One zone: greate for dev and backup by default.&lt;br&gt;
In compatible: 90% discount.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Availablity and Durability&lt;/strong&gt;&lt;br&gt;
Regional: multi AZ and greate for production&lt;/p&gt;
&lt;h2&gt;
  
  
  EFS
&lt;/h2&gt;

&lt;p&gt;Go to EFS console and click on "create filesystem" button&lt;br&gt;
click on "customize" button.&lt;br&gt;
name it&lt;/p&gt;

&lt;p&gt;&lt;code&gt;mnt/efs/fs1&lt;/code&gt; &lt;strong&gt;How to create a file in?&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;su 
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nt"&gt;----------&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="nt"&gt;---------&lt;/span&gt;/--------
&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="nt"&gt;--------&lt;/span&gt;/--------
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;means into&lt;br&gt;
/ means use this filename&lt;br&gt;
cat means it will read the filed for you&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  EBS vs EFS
&lt;/h2&gt;

&lt;p&gt;Delete AMI image &lt;br&gt;
high Availablity and Scailablity:ELB&amp;amp;ASG&lt;/p&gt;

&lt;p&gt;Vertical scalablity=&amp;gt; switch to the better instance &lt;br&gt;
Horizontal scalablity=&amp;gt; use number of instances&lt;br&gt;
Hight Availability=&amp;gt; use multi AZ servers for backup&lt;/p&gt;
&lt;h2&gt;
  
  
  What is load balancing
&lt;/h2&gt;

&lt;p&gt;forward user trafic into the server&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of load balancer:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;classic load Balancer(CLB)&lt;/li&gt;
&lt;li&gt;Application load balancer(ALB)&lt;/li&gt;
&lt;li&gt;Network load balancer(NLB)&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Getway load balancer(GLB)&lt;/p&gt;

&lt;p&gt;-&amp;gt;  load      | security  -&amp;gt; &lt;br&gt;
user &amp;lt;-  balancer  | groups    &amp;lt;- EC2&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;0.0.0/0         eg.IP 80         sg.-----&lt;br&gt;
any IP           &lt;/p&gt;
&lt;h2&gt;
  
  
  Advanced Load blancer
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Network Security&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;-create a security group named launch-wizard-1 with the rules of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SSH - custom ::/0&lt;/li&gt;
&lt;li&gt;SSH - custom 0.0.0.0/0&lt;/li&gt;
&lt;li&gt;HTTP - [Security group of load balancer]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;How to creat a Load Balancer?&lt;/strong&gt;&lt;br&gt;
launch 2 instances:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;My first instance &lt;/li&gt;
&lt;li&gt;my second instance&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;without key pair and the security group named launch-wizard-1&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;which allowed as to do HTTP traffic and SSH trafic into our EC2 instance.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Create a load balancer(ALB)&lt;br&gt;
name it to: DemoALB&lt;br&gt;
check the all AZ's&lt;br&gt;
open another tab and create new security group:&lt;br&gt;
  name it to: Demo-sg-load-balancer&lt;br&gt;
  Description: Allow HTTp into ALB&lt;br&gt;
  HTTP    0.0.0.0/0&lt;/p&gt;

&lt;p&gt;back to previus tab remove the default security group and add Demo-sg-load-balancer.&lt;br&gt;
open another tab and create new target group:&lt;br&gt;
   name it to: demo-tg-alb&lt;br&gt;
   check both instances and include pending below.&lt;/p&gt;

&lt;p&gt;back to previus tab add the target group demo-tg-alb&lt;br&gt;
and done.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Load balancer ruls&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;click on your load balancer &lt;br&gt;
under listeners click on HTTP:80&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;add rule&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;name it into: DEmo rule&lt;/li&gt;
&lt;li&gt;on add conditions (path-&amp;gt; /eror)&lt;/li&gt;
&lt;li&gt;fixed response &lt;/li&gt;
&lt;li&gt;code:404&lt;/li&gt;
&lt;li&gt;response: not found, custom errore!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;creating NLB&lt;/strong&gt;&lt;br&gt;
name it into: DemoNLB&lt;br&gt;
take every AZ's&lt;br&gt;
  create security group:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Demo-sg-nlb&lt;/li&gt;
&lt;li&gt;  Demo sg for nlb&lt;/li&gt;
&lt;li&gt;  HTTP    0.0.0.0/0
attach the security group
for the listeners create a target group:&lt;/li&gt;
&lt;li&gt;   name it: Demo-tg-nlb&lt;/li&gt;
&lt;li&gt;   protocol:  TCP    port:80&lt;/li&gt;
&lt;li&gt;   health check: HTTP&lt;/li&gt;
&lt;li&gt;   Advanced health check setting: healthy thresholds:2 timeout:2 interval:5
check all
include as pending bellow
add demo-tg-nlb to the listener&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AWS Lake Formation&lt;/strong&gt;&lt;br&gt;
AWS Lake Formation is Amazon’s managed service for building, securing, and governing a data lake on Amazon S3 with fine‑grained access control and centralized permissions. It simplifies data ingestion, cataloging, cleaning, and security so teams can share data safely across analytics and machine‑learning tools&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;application load balancer&lt;/strong&gt;&lt;br&gt;
cross-zon load balancing is enable by default &lt;br&gt;
no charges in this one&lt;/p&gt;

&lt;p&gt;network load balancer &amp;amp; getway load balancer is exactly opposite of application load balacer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;to enable cross-zon load balancing&lt;/strong&gt;&lt;br&gt;
click on the load balancer: go on "attributes" tab; click on "edite" btn and check the "m cross-zon load balancing" &lt;/p&gt;

&lt;p&gt;client ---&amp;gt;  load&lt;br&gt;
       &amp;lt;---   balacer&lt;br&gt;
      SSl/TLS&lt;br&gt;
it will encrypt the traffic.&lt;/p&gt;

&lt;p&gt;to enable it:&lt;br&gt;
go to the load balancer click on the load balancer name, scroll down click on "add listener" btn. change the protocol from HTTP to HTTPS the action would be forward the spacific target group.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;In the Network load balacer you have to change protocol to TLS.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Deregistration delay or connection Draining&lt;/strong&gt;&lt;br&gt;
Time to complete "in-flight-request" while the instance is de-registering or unhealthy.&lt;br&gt;
It takes between 1 to 3600 seconds in default it's 300 seconds.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;auto scaling group *&lt;/em&gt;&lt;br&gt;
atomaticaly it scals up or down in the situation. we have 2 types:&lt;br&gt;
1.Spot instance (60%-90% cheeper - not reliable)&lt;br&gt;
2.On-Demand instance3 (costy - reliable)&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When there is end-users involved you should not use spot instances. we use it for background job.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  Amazon CloudFront Distribution (S3 or HTTP)
&lt;/h2&gt;

&lt;p&gt;Delivers content with low latency and the best option for static content.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Data Exchange *&lt;/em&gt;&lt;br&gt;
used to share data to external partys.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lake formation&lt;/strong&gt;&lt;br&gt;
AWS CloudFormation is Amazon’s “infrastructure‑as‑code” service — it lets you define your entire AWS environment (EC2, VPCs, RDS, S3, IAM, etc.) in a single template, and AWS automatically builds and manages everything for you. It removes manual setup, ensures consistency, and makes deployments repeatable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ASG&lt;/strong&gt;&lt;br&gt;
minimum capacity, desired capacity, maximum cpacity&lt;br&gt;
it will scal ou or in for you.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Elasric load balancer automaticaly with health check method since it self to the auto scaling group instance.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;
  
  
  Cloud watch alarms &amp;amp; scailing
&lt;/h2&gt;

&lt;p&gt;This is a metric that you specify such as avarage CPU, custom metric to Scali your instances.&lt;/p&gt;
&lt;h2&gt;
  
  
  how to run it
&lt;/h2&gt;

&lt;p&gt;click on "auto scaling group" then click on "create auto scaling group"&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;name it&lt;/li&gt;
&lt;li&gt;create &lt;/li&gt;
&lt;li&gt;launch template &lt;/li&gt;
&lt;li&gt;and then link it&lt;/li&gt;
&lt;li&gt;launch a tamplate: with a keypair and security group and in the advanced detail write the user data.&lt;/li&gt;
&lt;li&gt;select al AZ's &lt;/li&gt;
&lt;li&gt;attach to an existing load balancer &lt;/li&gt;
&lt;li&gt;select your target group&lt;/li&gt;
&lt;li&gt;enable ELB&lt;/li&gt;
&lt;li&gt;create&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  scaling policies hands on
&lt;/h2&gt;

&lt;p&gt;EC2&amp;gt;auto scaling groups&amp;gt;DemoASG&lt;/p&gt;

&lt;p&gt;go on Dynamic scaling polices and click on create:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;target tracking policy&lt;/li&gt;
&lt;li&gt;target value:40&lt;/li&gt;
&lt;li&gt;create&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;go on details tab and click on edit on the group size:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Max:3&lt;/li&gt;
&lt;li&gt;create&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;go on "instance management" tab click on instance name and click on "connect"&lt;br&gt;
search "instance stress amazon Linux" on google and open the gist.github page.&lt;br&gt;
copy the first command in the instance and copy the second command for the installing "stress"&lt;br&gt;
to run the stress write:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;stress &lt;span class="nt"&gt;-c&lt;/span&gt; 4
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>aws</category>
      <category>database</category>
      <category>devops</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>3 Ways to Use Your AWS Certification to Boost Your Career</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Sun, 04 Feb 2024 03:25:05 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/3-ways-to-use-your-aws-certification-to-boost-your-career-4jk6</link>
      <guid>https://dev.to/hootan_hsn/3-ways-to-use-your-aws-certification-to-boost-your-career-4jk6</guid>
      <description>&lt;p&gt;You have received AWS certification; congratulations! Now what? Here are three steps that you can take to find a job with it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Train yourself with projects
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS workshops&lt;/strong&gt; are hands-on events designed to teach or introduce practical skills, techniques, or concepts that you can use to solve business problems. They are created by the teams at Amazon Web Services (AWS) and cover various topics such as machine learning, DevOps, well-architected, and more. You can learn more and sign up for workshops at &lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://workshops.aws/" rel="noopener noreferrer"&gt;
      workshops.aws
    &lt;/a&gt;
&lt;/div&gt;
&lt;br&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%2Fzag7wd6cdd4nh9x6k8jj.jpeg" alt="AWS-workshop" width="800" height="487"&gt;

&lt;h2&gt;
  
  
  Let the experts find a job for you
&lt;/h2&gt;

&lt;p&gt;Get Hired with &lt;strong&gt;Pathrise&lt;/strong&gt;&lt;br&gt;
Pathrise is an online program that provides one-on-one mentorship, career advice, and training to help aspiring tech professionals land their dream jobs. You only pay if you succeed in getting hired. Pathrise offers courses in six key areas: software engineering, strategy/ops, data, product design, marketing, and sales . Pathrise claims to have helped over 500 professionals get jobs at tech companies such as Google, Facebook, Amazon, and LinkedIn. If you are interested, you can apply for Pathrise at&lt;/p&gt;
&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://www.pathrise.com/" rel="noopener noreferrer"&gt;
      pathrise.com
    &lt;/a&gt;
&lt;/div&gt;
&lt;br&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%2Fyohrbpfc88itu271n7gu.jpeg" alt="pathriseUI" width="800" height="431"&gt;

&lt;h2&gt;
  
  
  Widen your Network
&lt;/h2&gt;

&lt;p&gt;AWS user groups are communities of AWS users who meet regularly to share ideas, learn from each other, and explore new services and best practices. They are organized by regions and topics, and anyone can join or start a user group. User groups can also help you manage permissions for multiple users in your AWS account by attaching policies to the group. For example, you can create a user group for developers and give them access to AWS services related to coding, testing, and deployment. If you want to learn more about AWS user groups, you can visit &lt;code&gt;https://www.aws.amazon.com/developer/community/usergroups/&lt;/code&gt;&lt;br&gt;
o find a user group near you or read [this documentation] to learn how to create and manage user groups in AWS.&lt;br&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%2Fnkdg8nll22vcqiibksgl.jpeg" 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%2Fnkdg8nll22vcqiibksgl.jpeg" alt="aws user groups UI" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope this helps.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>certification</category>
      <category>career</category>
      <category>cloudskills</category>
    </item>
    <item>
      <title>AWS Certification Made Easy: Learn from the Best Resources and Practice Tools</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Thu, 01 Feb 2024 20:15:29 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-certification-made-easy-learn-from-the-best-resources-and-practice-tools-589f</link>
      <guid>https://dev.to/hootan_hsn/aws-certification-made-easy-learn-from-the-best-resources-and-practice-tools-589f</guid>
      <description>&lt;p&gt;There are three tips that you can follow besides studying to increase your chances of getting AWS certification.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Practice the exam on your mobile anywhere
&lt;/h2&gt;

&lt;p&gt;Cloud Prep is an app that helps you prepare for cloud certifications, such as AWS, IBM, and Google Cloud. It provides flashcards, practice questions, mock tests, and personalized learning based on your knowledge gaps. You can download Cloud Prep from the App Store or visit their website for more information.&lt;br&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%2Fa9qxpy35pjv52z92jqet.jpeg" 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%2Fa9qxpy35pjv52z92jqet.jpeg" alt="Cloud prep app UI" width="800" height="327"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Do real-world-like practices
&lt;/h2&gt;

&lt;p&gt;WHIZLABS is a world-class technology training platform for your teams. It offers 250+ IT certification video courses, practice tests, and hands-on labs for various domains such as AWS, Azure, Java, PMP, Agile, Big Data, Linux, and more. You can study and practice at your own pace with WHIZLABS unique content, boost your skills today for a brighter future.&lt;br&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%2F644hvcf0c80ervez883g.jpeg" 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%2F644hvcf0c80ervez883g.jpeg" alt="whiz UI" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Test yourself
&lt;/h2&gt;

&lt;p&gt;Tutorials Dojo is a platform that provides high-quality courses, practice tests, and hands-on labs for various IT certifications, such as AWS, Azure, Google Cloud, Java, PMP, and more. It helps you study and practice at your own pace, with unique content, detailed explanations, and cheat sheets. You can also access exclusive discounts and promotions on their courses.&lt;br&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%2F9v3akxlp9ihhxdxle5r7.jpeg" 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%2F9v3akxlp9ihhxdxle5r7.jpeg" alt="dojo UI" width="800" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope this was helpful. As for my trick to improving your chance of getting this certification, I would say that the best way is to use the resources that I mentioned above and also review the official AWS documentation and FAQs. You can also ask me any questions that you have about AWS or cloud computing in general. I’m always happy to help.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>tutorial</category>
      <category>certification</category>
      <category>tooling</category>
    </item>
    <item>
      <title>AWS - How to EC2 (2024)</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Fri, 12 Jan 2024 01:12:25 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-how-to-ec2-3fp4</link>
      <guid>https://dev.to/hootan_hsn/aws-how-to-ec2-3fp4</guid>
      <description>&lt;p&gt;EC2= Elastic Compute Cloud= Infrastracture as a service&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It mainly consists in the capability of:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;renting virtual machines(EC2)&lt;/li&gt;
&lt;li&gt;Storing data on virtual drives(EBS)&lt;/li&gt;
&lt;li&gt;Distributing load across machines (ELB)&lt;/li&gt;
&lt;li&gt;Scaling the services using an Auto-scaling group(ASG)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;EC2 user data is used to automate boot tasks such as:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Installing updates&lt;/li&gt;
&lt;li&gt;installing software&lt;/li&gt;
&lt;li&gt;Downloading common files from the internet&lt;/li&gt;
&lt;li&gt;anything you can think of it&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Running EC2&lt;/strong&gt;&lt;br&gt;
launch EC2 --&amp;gt; Instances&amp;gt; launch intances&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Name it and click on additional tag&lt;/li&gt;
&lt;li&gt;Amazon linux amazon linux 2 ami(free tier) 64-bit&lt;/li&gt;
&lt;li&gt;t2.micro is free every month&lt;/li&gt;
&lt;li&gt;Create a new key pair name it key pair type: RSA private key file format: .pem click on "create key pair".&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;If you have windows and it's from before windows10(8,7,xp) you should choose ".ppk".&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;5.click on "Advanced deatils" then scroll all over down to "user data" then write this on textbox bellow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;#!/bin/bash&lt;/span&gt;
&lt;span class="c"&gt;# Use this for your user data (script from top to bottom)&lt;/span&gt;
&lt;span class="c"&gt;# install httpd (Linux 2 version)&lt;/span&gt;
yum update &lt;span class="nt"&gt;-y&lt;/span&gt;
yum &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; httpd
systemctl start httpd
systemctl &lt;span class="nb"&gt;enable &lt;/span&gt;httpd
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"&amp;lt;h1&amp;gt;Hello World from &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;hostname&lt;/span&gt; &lt;span class="nt"&gt;-f&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;lt;/h1›"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /var/www/html/index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;6.click on "launch intances"&lt;/p&gt;

&lt;h2&gt;
  
  
  EC2 Security Group
&lt;/h2&gt;

&lt;p&gt;Most of problems with timeout connects with EC2 Security Groups.&lt;br&gt;
Network &amp;amp; security&amp;gt; security groups &lt;br&gt;
you can click on "edit inbound rules" in detal tab of the instance, to make changes.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;most of problems with timeout connects with EC2 security groups.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Security Groups, Good to know&lt;/strong&gt;&lt;br&gt;
• Can be attached to multiple instances.&lt;br&gt;
• Locked down to a region / VPC combination.&lt;br&gt;
• Does live “outside” the EC2 – if traffic is blocked the EC2 instance won’t see it.&lt;br&gt;
• It’s good to maintain one separate security group for SSH access.&lt;br&gt;
• If your application is not accessible (time out), then it’s a security group issue.&lt;br&gt;
• If your application gives a “connection refused“ error, then it’s an application error or it’s not launched.&lt;br&gt;
• All inbound traffic is blocked by default.&lt;br&gt;
• All outbound traffic is authorised by default.&lt;/p&gt;
&lt;h2&gt;
  
  
  The security group does not be deleted? Follow these steps:
&lt;/h2&gt;

&lt;p&gt;Select the security group that you want to be deleted&lt;br&gt;
Go on in bound rules tap then click on "Edit inbound rules"&lt;br&gt;
then delete all the rules.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Classic Ports to know&lt;/strong&gt;&lt;br&gt;
• 22 = SSH (Secure Shell) - log into a Linux instance.&lt;br&gt;
• 21 = FTP (File Transfer Protocol) – upload files into a file share.&lt;br&gt;
• 22 = SFTP (Secure File Transfer Protocol) – upload files using SSH.&lt;br&gt;
• 80 = HTTP – access unsecured websites.&lt;br&gt;
• 443 = HTTPS – access secured websites.&lt;br&gt;
• 3389 = RDP (Remote Desktop Protocol) – log into a Windows instance.&lt;/p&gt;
&lt;h2&gt;
  
  
  SSH
&lt;/h2&gt;

&lt;p&gt;Allow you to control pysicaly a machine or a setver, all using te terminal or command.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;windows OS before windows10, there not supporting SSH. they supporting putty insted.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;when you create EC2-key you will be downloaded a .pem file automaticaly, this file helps you to connect via SSH.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;how to give a Role to instance&lt;/strong&gt;&lt;br&gt;
In instance section click on "Action" button&amp;gt; security&amp;gt; modify IAM role.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;you can write commands on SSH like this:&lt;br&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight console"&gt;&lt;code&gt;&lt;span class="go"&gt;aws iam list-users
ping google.com
whoami
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;How to Running .pem file&lt;/strong&gt;&lt;br&gt;
open terminal/power shell and write this command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight ssh"&gt;&lt;code&gt;&lt;span class="k"&gt;ssh&lt;/span&gt; -i [file name] ec2-user[public-ip]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;you can filed public ip in information of instance that you created.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Linux simple commands&lt;/strong&gt;&lt;br&gt;
ls &amp;amp; ll: List of files that i'm in it.&lt;br&gt;
cd.. : Go a folder back.&lt;br&gt;
pwd: Where you are.&lt;br&gt;
chmod 0400 [file name]: Change the promotion of the key file.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;EC2 Instance Purchasing option&lt;/strong&gt;&lt;br&gt;
_On demand:_is better for workloads that must not be interrupted or have strickted conpletion deadline.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Reserved:&lt;/em&gt; it's for those one who planes to get for long term and for that you will get a good discount.(1 or 3 year)&lt;br&gt;
and Convertible Reserved Instances is for long workloads with flexible instances&lt;/p&gt;

&lt;p&gt;&lt;em&gt;saving plans:&lt;/em&gt; you gonna commit to a specfic spending in your server.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Spot instance:&lt;/em&gt; last minutes discount for an unknown range of time, and you gonna lose it on anytime.&lt;br&gt;
it is very cheap, has flexible start time and can be interrupted with 2 min notice.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Dedicated Host:&lt;/em&gt; It's like you buy oit insted of reserve it.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Dedicated Hosts are good for companies with strong compliance needs or for software that have complicated licensing models. This is the most expensive EC2 Purchasing Option available.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Capacity Reservations:&lt;/em&gt; It's like preordering for a long term use but in period of preordering you can cancell your order.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Strategies to allocate Spot Instances:&lt;/strong&gt;&lt;br&gt;
• lowestPrice: from the pool with the lowest price (cost optimization, short workload)&lt;br&gt;
• diversified: distributed across all pools (great for availability, long workloads)&lt;br&gt;
• capacityOptimized: pool with the optimal capacity for the number of instances&lt;br&gt;
• priceCapacityOptimized (recommended): pools with highest capacity available, then select &lt;br&gt;
the pool with the lowest price (best choice for most workloads)&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Spot Fleets allow us to automatically request Spot Instances with the lowest price&lt;/p&gt;

&lt;p&gt;Compute Optimized EC2 instances are great for compute-intensive workloads requiring high-performance processors (e.g., batch processing, media transcoding, high-performance computing, scientific modeling &amp;amp; machine learning, and dedicated gaming servers).&lt;/p&gt;

&lt;p&gt;EC2 User Data is used to bootstrap your EC2 instances using a bash script. This script can contain commands such as installing software/packages, download files from the Internet, or anything you want.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Spot Fleet&lt;/strong&gt;&lt;br&gt;
Spot Fleet is a set of Spot Instances and optionally On-demand Instances. It allows you to automatically request Spot Instances with the lowest price.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Ultimate way to save money&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Intences&amp;gt; Spot requests&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;In this section you can click on "pricing history" button, youcan see the chart of history.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;For creating it, click on "Request Spot Insteces"&lt;br&gt;
In target capacity you can give it a target via CPUs, Memorys or Instaces; and you can check the maintain capacity and give it the option of when you kicked out, what it should do: Terminate, Stop or Hibernate &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Lets talk about IPs
&lt;/h2&gt;

&lt;p&gt;IPV4: most common format used online.&lt;br&gt;
IPV6: most for IOT.&lt;/p&gt;

&lt;p&gt;-If you need to have a fixed public IP for your instance, you need on Elastic IP.&lt;/p&gt;

&lt;p&gt;-you can only have 5 Elastic  IP in your account.&lt;br&gt;
for more you have to  ask AWS to increase it.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Try to avoid using Elastic IP.&lt;br&gt;
try to use a random public IP and register a DNS name to it insted.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;-you can use a load Balancer instead of public IP.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;when we use SSH into our EC2 machines we can not use private IP unless you have VPN.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Load Balancer Connection
&lt;/h2&gt;

&lt;p&gt;Used for when remaining or de-registering instances from Load balancer it allows in-flight request before it shutdown but it is not speeding to launch an instances.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating Elastic IP
&lt;/h2&gt;

&lt;p&gt;network &amp;amp; security &amp;gt; Elastic IPs&lt;br&gt;
-In Elastic IP Section click on "Allocate Elastic IP adress" button&lt;br&gt;
-Then Click on "Alocate" button.&lt;br&gt;
-click on "action"&amp;gt; Associate Elastic IP address&lt;br&gt;
In the section:&lt;br&gt;
check instance   =&amp;gt; choose the instance that you want run&lt;br&gt;
write the private IP of instance.&lt;br&gt;
then click on "Associate" button.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;When you do that the public IP and Elastic IP will be the same.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;To Remove Elastic IP&lt;/strong&gt;&lt;br&gt;
In Elastic Section:&lt;br&gt;
Action&amp;gt; Disassociate Elastic IP&amp;gt; Disase Action&amp;gt; Release Elastic IP&amp;gt; Release.&lt;/p&gt;

&lt;h2&gt;
  
  
  Placment groups
&lt;/h2&gt;

&lt;p&gt;-How EC2 instances going to placed&lt;/p&gt;

&lt;p&gt;-It comes with strategy:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cluster: Fast with high risk.&lt;/li&gt;
&lt;li&gt;Spread: low risk with limited size &lt;/li&gt;
&lt;li&gt;Partition: unlimited size and low risk&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;How to run placment groups&lt;/strong&gt;&lt;br&gt;
Network&amp;amp;Security&amp;gt; Placment groups&lt;br&gt;
click on "create placment group" button.&lt;br&gt;
Name it the give a strategy for example we use it as a cluster&lt;br&gt;
then click create group&lt;br&gt;
but if you give a diffrent strategy like "spread". you can set spread level Rack or Host.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to launch instance with placment group&lt;/strong&gt;&lt;br&gt;
instance&amp;gt; instances click on launch instances&lt;br&gt;
then scroll down to "advanced detail"&lt;br&gt;
on this tab you can fined placment group name.&lt;br&gt;
then you can select between groups that you created before.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How to create instances with Hibernate feature&lt;/strong&gt;&lt;br&gt;
I launching instances section:&lt;br&gt;
choose proper machin and OS and proper instance type&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Give it a keyPair&lt;/li&gt;
&lt;li&gt;In network setting tab click "Edit" button
click on select existing security group(normaly launch wizard 1)&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In configure storage section it has to be bigger than your machin's room.&lt;br&gt;
-on Advanced detail section; scroll down to stop-Hibernate behavior-Enable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you Enable Hibernation, the EBS must be encrypted to do so:&lt;br&gt;
Go back to storage tab and click on "Advanced".&lt;br&gt;
choose your EBS volume and yes to encrypted and choose the default AWS/EBS for KMS key.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instance store volume != EBS volume(this is encrypted)&lt;/p&gt;

&lt;h2&gt;
  
  
  EC2 Instance Storage
&lt;/h2&gt;

&lt;p&gt;It's like network USB Stick.&lt;br&gt;
Elastic Block Storage&amp;gt; volumes&lt;br&gt;
click on "create volume"&lt;br&gt;
In Availabiity Zon you have to choose same one where your EC2 instance is.&lt;/p&gt;

&lt;p&gt;-No to attach volume to the instance:&lt;br&gt;
click on "Actions" and then "Attach volume"&lt;br&gt;
choose your instance that you want to attach and click on "attach volume" button.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Snapshot&lt;/strong&gt;&lt;br&gt;
Elastic Block store&amp;gt; volumes&lt;br&gt;
click on "Action" and then "create Snapshot" give it a "Description" and done. you got a snapshot of volume.&lt;/p&gt;

&lt;p&gt;now go to Elastic block store&amp;gt; snapshot to recreate a volume from snapshot go to "Action" and then click on "create volume from snapshot" choose the storage and in the AZ dosen't have to be on the same AZ as instance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Createing image from instances&lt;/strong&gt;&lt;br&gt;
Right click on your instance in the instance section and cick on image and template and then click on create image.&lt;/p&gt;

&lt;p&gt;to see your image list go to images&amp;gt; AMIs&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To running a instance from custom image&lt;/strong&gt;&lt;br&gt;
when you are in the launching instance section on "application and OS image" tab click my AMIs tab and shoose your AMI.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ec2</category>
      <category>cloud</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>AWS -How to IAM (2024)</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Sun, 07 Jan 2024 03:24:47 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/aws-iam-1fi0</link>
      <guid>https://dev.to/hootan_hsn/aws-iam-1fi0</guid>
      <description>&lt;p&gt;&lt;strong&gt;IAM&lt;/strong&gt;: Identity and Access Management Global Service&lt;br&gt;
some AWS services need to perform actions on your behalf. to do so, you assign permissions to AWS services with IAM Rols.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;A statement in an IAM policy consist of Sid, Effect, Principal, Action, Resource and condition.&lt;/p&gt;

&lt;p&gt;Group only contain Users.&lt;/p&gt;

&lt;p&gt;a user can contain to multiple group.&lt;/p&gt;

&lt;p&gt;Groups comes with custom permition.(with JSON document that you can call it)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  How to Run IAM
&lt;/h2&gt;

&lt;p&gt;Access management&amp;gt; users&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating user
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Name it/ give a password&lt;/li&gt;
&lt;li&gt;I want to create an IAM user&lt;/li&gt;
&lt;li&gt;Autogenerated password and check users must create a new password&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Create a group
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;name it&lt;/li&gt;
&lt;li&gt;give a premission eg: Administor___provides full access&lt;/li&gt;
&lt;li&gt;add the user into group&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;With creating  "Account Alias" you can simply sign in URL&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Premission Policies
&lt;/h2&gt;

&lt;p&gt;Access managment&amp;gt; Policies&lt;br&gt;
On the Policies section click on "Create policy"&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;you have two option to create policy: visual and JSON&lt;br&gt;
we use visual&lt;/p&gt;
&lt;/blockquote&gt;

&lt;ol&gt;
&lt;li&gt;Choose a service: IAM&lt;/li&gt;
&lt;li&gt;Allowing actions: listUser and getUser&lt;/li&gt;
&lt;li&gt;Resowres: All&lt;/li&gt;
&lt;li&gt;choose a policy name and then create&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;If you go to user section, then chose a user you can give the policy to them.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Password Policy
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;configure password requirement:&lt;br&gt;
Access managment&amp;gt; Account settings&lt;br&gt;
on Account settings section click on "Edit"&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MFA&lt;br&gt;
click on the name on top-rigt cornell &lt;br&gt;
then click "Security credentials"&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;Assign an MFA device&lt;/li&gt;
&lt;li&gt;give it a name, use the Authontication app&lt;/li&gt;
&lt;li&gt;Install Authontication app on your mobile phone then scan the QR code and then usse the code1 and code2 on the text box below.&lt;/li&gt;
&lt;li&gt;then you're good to go&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How can users access AWS?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;AWS Managment console 
protected by password+MFA&lt;/li&gt;
&lt;li&gt;AWS Command line interface(CLI)
protected by access keys&lt;/li&gt;
&lt;li&gt;AWS software Developer kit(SDK)
for code: protected by access keys&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;Access keys are generated though the AWS console&lt;/p&gt;

&lt;p&gt;a region to reminde: canada(central) ca-central-1&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Creating access key:
&lt;/h2&gt;

&lt;p&gt;access management&amp;gt; users&lt;br&gt;
on the secion click on the name(eg:hootan)&lt;br&gt;
scroll down&lt;br&gt;
security credentials&amp;gt; create access key&lt;br&gt;
click on command line&lt;/p&gt;

&lt;h2&gt;
  
  
  How to run access key?
&lt;/h2&gt;

&lt;p&gt;first install aws cli on your computer&lt;br&gt;
then run your terminal or cmd:&lt;br&gt;
write: &lt;code&gt;aws configure&lt;/code&gt;&lt;br&gt;
then  press ID and pass&lt;br&gt;
press default region &lt;br&gt;
output format is not matter&lt;br&gt;
then write: &lt;code&gt;iam list-users&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Cross-account IAM roel allow users in one account to access resources in another account in limited time.
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Application Load balancer doeas not have a " Cross-region replication" feature&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>iam</category>
      <category>cloud</category>
      <category>backend</category>
    </item>
    <item>
      <title>How to use Font Awesome in proper way</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Fri, 31 Mar 2023 06:28:10 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/how-to-use-font-awesome-in-proper-way-2fc1</link>
      <guid>https://dev.to/hootan_hsn/how-to-use-font-awesome-in-proper-way-2fc1</guid>
      <description>&lt;p&gt;First go to &lt;a href="//cdnjs.com"&gt;cdnjs.com&lt;/a&gt; to get the library link.&lt;/p&gt;

&lt;p&gt;in code you need one specific class named icon(or whatever) to calling icons and tag class for styling it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.icon::before{
    display:inline-block;
    font-style:normal;
    font-variant:normal;
    text-rendering: auto;
    -webkit-font-smothing:antialiased;
    font-family: "Font Awesome 6 Free";
    font-weight: 900; 
    /* or it can be 400 */
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and tag's class for styling&lt;br&gt;
&lt;code&gt;content:"\f061";&lt;br&gt;
color:white;&lt;/code&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;the \f061&lt;br&gt;
 is the icon character&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://fontawesome.com/icons/categories" rel="noopener noreferrer"&gt;the source site for picking the icon&lt;/a&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>fontaswesome</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Section Styling with CSS3</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Wed, 25 May 2022 06:40:20 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/advanced-css-4jm7</link>
      <guid>https://dev.to/hootan_hsn/advanced-css-4jm7</guid>
      <description>&lt;p&gt;This section explains how to style specific sections in your HTML using CSS3 selectors.&lt;/p&gt;

&lt;h2&gt;
  
  
  Targeting Every Other Section:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;CSS:&lt;/strong&gt; &lt;code&gt;Section:nth-of-type(2n)&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;Explanation:&lt;/strong&gt; This targets every second section element (n) based on its position among its siblings (&lt;code&gt;2n&lt;/code&gt;).&lt;br&gt;
Targeting the Last Section:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CSS:&lt;/strong&gt; &lt;code&gt;Section:last-of-type&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;Explanation:&lt;/strong&gt; This targets the last section element regardless of the total number of sections.&lt;/p&gt;
&lt;h2&gt;
  
  
  Using Font Awesome Icons
&lt;/h2&gt;

&lt;p&gt;While understanding how to section your HTML is important, this section focuses on using Font Awesome icons for styling.&lt;/p&gt;
&lt;h2&gt;
  
  
  Getting Font Awesome:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Website:&lt;/strong&gt; Head over to &lt;a href="https://fontawesome.com/v4/icons" rel="noopener noreferrer"&gt;fontawesome&lt;/a&gt;(cdnjs.com is another option) to download the Font Awesome library.&lt;/p&gt;
&lt;h2&gt;
  
  
  Basic Implementation:
&lt;/h2&gt;

&lt;p&gt;Here's a breakdown of the provided code snippet for using Font Awesome icons:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Class for Icons:&lt;/strong&gt; Define a class named &lt;code&gt;.icon&lt;/code&gt; to target the elements where you want to display icons.&lt;br&gt;
&lt;strong&gt;Styling Class:&lt;/strong&gt; Use a separate class (e.g., &lt;code&gt;.tang&lt;/code&gt;) to style the appearance of the icon (&lt;code&gt;size&lt;/code&gt;, &lt;code&gt;color&lt;/code&gt;, etc.).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;.icon::before {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 6 Free"; /* Use quotes for font names */
  font-weight: 900; /* Or 400 for lighter weight */
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Tag Class and Icon Character:&lt;/strong&gt;&lt;br&gt;
It's unclear what "Tag class" refers to here.&lt;br&gt;
You likely meant using a class on the element containing the icon and specifying the icon character code within the CSS. Font Awesome provides character codes for each icon. For example, to display the "home" icon, you might use &lt;code&gt;content: &lt;br&gt;
"\f015"&lt;/code&gt;; within the &lt;code&gt;.icon::before&lt;/code&gt; style.&lt;br&gt;
Color can be set using the color property within the &lt;code&gt;.icon::before&lt;/code&gt; style (e.g., &lt;code&gt;color: white;&lt;/code&gt;).&lt;/p&gt;

&lt;h2&gt;
  
  
  Responsive Design Techniques:
&lt;/h2&gt;

&lt;p&gt;Here are various techniques for creating responsive layouts:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Flexbox:&lt;/strong&gt;&lt;br&gt;
This code snippet (&lt;code&gt;With:50%; merge-left: auto;&lt;/code&gt;) seems like an attempt to use flexbox for a two-column layout. However, "&lt;code&gt;merge-left&lt;/code&gt;" isn't a standard flexbox property. You might want to use &lt;code&gt;justify-content: space-between;&lt;/code&gt; on the parent container to achieve equal spacing between two flex items (assuming 50% width each).&lt;br&gt;
&lt;strong&gt;Calc:&lt;/strong&gt;&lt;br&gt;
The snippet &lt;code&gt;Calc(500px+20%)&lt;/code&gt; demonstrates using the &lt;code&gt;calc()&lt;/code&gt; function to calculate a dynamic width based on a fixed value (500px) and a percentage (20%).&lt;br&gt;
&lt;strong&gt;Clamp:&lt;/strong&gt;&lt;br&gt;
The snippet &lt;code&gt;Clamp(2vw,5rem,5vm)&lt;/code&gt; showcases the &lt;code&gt;clamp()&lt;/code&gt; function, which allows you to define a minimum, preferred, and maximum value for an element's size based on viewport &lt;code&gt;width (vw)&lt;/code&gt;, rem units, or viewport &lt;code&gt;height (vm)&lt;/code&gt; in this case.&lt;br&gt;
&lt;strong&gt;Columns:&lt;/strong&gt;&lt;br&gt;
The snippets &lt;code&gt;column:2;&lt;/code&gt; &lt;code&gt;column-span: on;&lt;/code&gt; attempt to use the multi-column layout. However, "&lt;code&gt;column-span: on&lt;/code&gt;" isn't a valid property. You might want to use &lt;code&gt;column-count: 2;&lt;/code&gt; to define two columns and remove column-span. Alternatively, &lt;code&gt;column: 100px;&lt;/code&gt; defines a fixed column width of 100px.&lt;br&gt;
Tip: Consider using a CSS framework like Bootstrap or Tailwind CSS for a more comprehensive set of responsive layout tools.&lt;/p&gt;

&lt;p&gt;I hope this improved version clarifies the concepts and provides more helpful information.&lt;/p&gt;

</description>
      <category>css</category>
      <category>responsive</category>
      <category>mediaquery</category>
      <category>frontend</category>
    </item>
    <item>
      <title>best text editors theme</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Wed, 25 May 2022 06:28:00 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/best-text-editors-theme-28bf</link>
      <guid>https://dev.to/hootan_hsn/best-text-editors-theme-28bf</guid>
      <description>&lt;h2&gt;
  
  
  Atome(text editor) best thems
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;UI theme&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Predawn
&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%2Fvnivy1mazbf1hbu6z3kj.png" alt="Predawn" width="800" height="548"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;-East end &lt;br&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%2Fq8357qxo7hzmne1kdxiv.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%2Fq8357qxo7hzmne1kdxiv.png" alt="East end" width="800" height="449"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Syntax theme&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  East end notebook&lt;/li&gt;
&lt;li&gt;  East end &lt;/li&gt;
&lt;li&gt;  Predawn&lt;/li&gt;
&lt;li&gt;  Solarized Dark&lt;/li&gt;
&lt;li&gt;  Solarized Light&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;font family&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/source-foundry/Hack/archive/v3.003.zip" rel="noopener noreferrer"&gt;Hack&lt;/a&gt;&lt;br&gt;
This is one of the most customizable fonts of all. It has 1,573 glyphs, and you can change the details of each one yourself.&lt;br&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%2F4vkvavsn3nxvg90bwst4.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%2F4vkvavsn3nxvg90bwst4.png" alt="Hack" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.marksimonson.com/assets/content/fonts/AnonymousPro-1_002.zip" rel="noopener noreferrer"&gt;Anonymous Pro&lt;/a&gt;&lt;br&gt;
with this font never mistake 0 from O.&lt;br&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%2Fqql0pv6gnyzaubfnxftx.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%2Fqql0pv6gnyzaubfnxftx.png" alt="Anonymous Pro" width="800" height="352"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Jetbrains IDE or text editors best themes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;UI theme&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Green lite theme&lt;br&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%2Fudez37bm5tky5u2u27rh.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%2Fudez37bm5tky5u2u27rh.png" alt="Green lite theme" width="800" height="582"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CodelyTV Theme&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&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%2Fzy5c9ofg3psrj5sza43x.jpg" 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%2Fzy5c9ofg3psrj5sza43x.jpg" alt="CodelyTV Theme" width="800" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;font family&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/tonsky/FiraCode/releases/download/6.2/Fira_Code_v6.2.zip" rel="noopener noreferrer"&gt;Fira Code Font&lt;/a&gt;&lt;br&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%2Fw8l4v9iyjy6sqf1whriw.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%2Fw8l4v9iyjy6sqf1whriw.png" alt="Fira code" width="718" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Visual Studio Code best theme
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;light theme&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Eva light
&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%2Fyipq3pz42op9hhdejxhj.png" alt="Eva light" width="800" height="704"&gt;
&lt;/li&gt;
&lt;li&gt;Quiet light 
&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%2Fo1uf9jsmz49gpi8sxhcn.png" alt="Quiet light" width="425" height="370"&gt;
&lt;/li&gt;
&lt;li&gt;Seafoam-pastel-light
&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%2F50ia5lczvkg6o4b9hjlo.png" alt="Seafoam-pastel-light" width="800" height="452"&gt;
&lt;/li&gt;
&lt;li&gt;Solarized light
&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%2F0a7gl8pjdveb4w30gkco.png" alt="Solarized light" width="800" height="492"&gt;
&lt;/li&gt;
&lt;li&gt;Ayu Light
&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%2F6e7gr3tohzz6krq1fr9g.png" alt="Ayu Light" width="800" height="1078"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;dark theme&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Atom one dark
&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%2Fpb9oo8uy6plcnsq75n2d.jpg" alt="Atom one dark" width="800" height="450"&gt;
&lt;/li&gt;
&lt;li&gt;Ayu Mirage
&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%2F6e7gr3tohzz6krq1fr9g.png" alt="Ayu Light" width="800" height="1078"&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;font family&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/google/fonts/tree/master/ofl/inconsolata" rel="noopener noreferrer"&gt;Inconsolata&lt;/a&gt;&lt;br&gt;
compressed and clear.&lt;br&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%2Fc3zaf1qvzk3ucd6w2799.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%2Fc3zaf1qvzk3ucd6w2799.png" alt="Inconsolata" width="800" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;what is your favorite?&lt;/p&gt;

</description>
      <category>theme</category>
      <category>texteditor</category>
      <category>vscode</category>
      <category>jetbrains</category>
    </item>
    <item>
      <title>Sass: Supercharge Your CSS with Style</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Wed, 25 May 2022 05:59:13 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/what-is-special-about-scss-17ll</link>
      <guid>https://dev.to/hootan_hsn/what-is-special-about-scss-17ll</guid>
      <description>&lt;p&gt;CSS (Cascading Style Sheets) is the language that styles the web, but sometimes, it can feel a bit...plain. Enter Sass (Syntactically Awesome Style Sheets), a preprocessor that adds superpowers to your CSS, making it more efficient, maintainable, and enjoyable to write.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Use Sass?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;DRY Up Your Code:&lt;/strong&gt;  The DRY principle (Don't Repeat Yourself) is essential in coding. Sass helps you achieve this by introducing features like variables, mixins, and nesting. You can define styles once and reuse them throughout your project, saving time and reducing redundancy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Boost Maintainability:&lt;/strong&gt; Large stylesheets can become unwieldy. Sass features like nesting help organize your code, making it easier to understand and modify later. Imagine your CSS code as a messy room; Sass helps declutter and organize it!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Increase Efficiency:&lt;/strong&gt;  Sass lets you perform operations like calculations and comparisons within your stylesheets. This can save you time and effort compared to writing repetitive CSS code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Extend Your Creativity:&lt;/strong&gt; Sass mixins allow you to create reusable components with parameters. This lets you experiment with different styles while keeping your code base clean.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sass Superpowers:
&lt;/h2&gt;

&lt;p&gt;We mentioned that Sass adds superpowers to your CSS. Let's delve into some of its key features:&lt;br&gt;
&lt;strong&gt;@mixin&lt;/strong&gt;&lt;br&gt;
Imagine creating a reusable style block that you can apply to different elements with slight variations. That's the magic of mixins! They are like pre-made functions for styles, allowing you to define a set of styles with a name and then call that name on various elements throughout your Sass code.&lt;/p&gt;

&lt;p&gt;It’s like functions but in css.&lt;br&gt;
For include the function, you have to use this: &lt;a class="mentioned-user" href="https://dev.to/include"&gt;@include&lt;/a&gt; name();&lt;br&gt;
&amp;lt;!&amp;gt;It’s can use static variables: $name : backgroundcolor: black;&lt;br&gt;
We can separate things to adding more CSS files and add them all together for using it you have to create file with naming of:&lt;br&gt;
name.css&lt;br&gt;
and then in main CSS file you include it like that:&lt;br&gt;
&lt;a class="mentioned-user" href="https://dev.to/import"&gt;@import&lt;/a&gt; “./name”&lt;/p&gt;

&lt;p&gt;Here's an example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@mixin button-style($color, $background) {
  color: $color;
  background-color: $background;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
}

.primary-button {
  @include button-style(white, #333);
}

.secondary-button {
  @include button-style(black, #ddd);
}

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

&lt;/div&gt;



&lt;p&gt;In this example, the &lt;code&gt;button-style&lt;/code&gt; mixin takes two arguments: &lt;code&gt;$color&lt;/code&gt; and &lt;code&gt;$background&lt;/code&gt;. We can then call this mixin with different color and background values on our &lt;code&gt;.primary-button&lt;/code&gt; and &lt;code&gt;.secondary-button&lt;/code&gt; classes, creating consistent button styles with variations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;nesting&lt;/strong&gt;&lt;br&gt;
Ever wished your CSS selectors could reflect the actual structure of your HTML? Nesting allows you to do just that! It lets you indent your Sass code to define styles for child elements within a parent element. This improves readability and makes your code more organized.&lt;/p&gt;

&lt;p&gt;Here's an example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
.card {
  background-color: #fff;
  padding: 20px;
  border-radius: 5px;

  h2 {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }

  p {
    line-height: 1.5;
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As you can see, the styles for the &lt;code&gt;h2&lt;/code&gt;and &lt;code&gt;p&lt;/code&gt; elements are nested within the &lt;code&gt;.card&lt;/code&gt; class, reflecting their hierarchical relationship in the HTML.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;variables&lt;/strong&gt;&lt;br&gt;
Tired of hardcoding colors, font sizes, and other values throughout your CSS? Variables are your savior! They allow you to define a single value and then reference it by name throughout your Sass code. This makes it easier to maintain consistency and allows for global changes by modifying just the variable definition.&lt;/p&gt;

&lt;p&gt;Here's an example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$primary-color: #333;
$secondary-color: #ddd;

body {
  background-color: $primary-color;
  color: $secondary-color;
}

.heading {
  color: $primary-color;
}

.text {
  color: $secondary-color;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;In this example, we define two variables: &lt;code&gt;$primary-color&lt;/code&gt; and &lt;code&gt;$secondary-color&lt;/code&gt;. We can then use these variables consistently throughout our stylesheet, ensuring color harmony and simplifying future changes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;functions&lt;/strong&gt;&lt;br&gt;
Sass functions take your styling power to a whole new level. You can define custom functions to perform calculations, comparisons, and manipulations on your styles. This allows for more complex and dynamic styling scenarios.&lt;/p&gt;

&lt;p&gt;Here's a basic example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;@function lighten($color, $amount) {
  // Logic to lighten the color based on $amount
  return lighten($color, $amount);
}

.highlight {
  background-color: lighten(#333, 20%);
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This example defines a &lt;code&gt;lighten&lt;/code&gt; function that takes a color and an amount and returns a lighter version of the color. We can then use this function to create a highlight background color with a bit more lightness compared to the base color.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting Started with Sass
&lt;/h2&gt;

&lt;p&gt;Using Sass is surprisingly simple. Here's a quick overview:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Installation:&lt;/strong&gt; You'll need a Sass compiler like sass or Dart Sass. Installation methods vary depending on your operating system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Write Your Sass:&lt;/strong&gt; Create a .scss file and start writing your styles with Sass syntax. It's similar to CSS, but with added features like variables and nesting.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Compile Your Sass:&lt;/strong&gt; Run the Sass compiler on your .scss file to generate a regular .css file that browsers understand.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Tips for Using Sass Effectively:
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Start Small:&lt;/strong&gt; Don't try to rewrite your entire website in Sass overnight. Begin with a small project to get comfortable with the syntax.&lt;br&gt;
&lt;strong&gt;Embrace the Community:&lt;/strong&gt; There's a wealth of Sass resources online, from tutorials to frameworks. Don't hesitate to seek help or inspiration from the community.&lt;br&gt;
&lt;strong&gt;Keep it Clean:&lt;/strong&gt; Even with Sass, maintain good coding practices. Use clear variable names, proper indentation, and meaningful comments.&lt;/p&gt;

&lt;p&gt;Sass is a powerful tool that can significantly improve your CSS workflow. With its ability to streamline coding, enhance maintainability, and boost creativity, Sass can help you write cleaner, more efficient, and downright awesome styles.&lt;/p&gt;

&lt;p&gt;Ready to take your CSS to the next level? Dive into the world of Sass and experience the difference!&lt;/p&gt;

</description>
      <category>scss</category>
      <category>sass</category>
      <category>css</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Building Responsive Layouts: A Guide to Breakpoints, Font Sizing, and Blur Effects</title>
      <dc:creator>Hootan</dc:creator>
      <pubDate>Wed, 25 May 2022 05:50:52 +0000</pubDate>
      <link>https://dev.to/hootan_hsn/css-information-2c3l</link>
      <guid>https://dev.to/hootan_hsn/css-information-2c3l</guid>
      <description>&lt;h2&gt;
  
  
  positioning
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is positioning?&lt;/strong&gt; This determines how an element is positioned on the web page.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of Positioning:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Absolute position&lt;/strong&gt;&lt;br&gt;
Allows complete control over the element's location on the page, independent of the normal document flow (like "god mode"). However, other elements will ignore it and potentially overlap.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Relative position&lt;/strong&gt;&lt;br&gt;
Positions the element relative to its &lt;strong&gt;normal position&lt;/strong&gt; in the document flow. Great for when you want an element to shift slightly based on its surroundings (e.g., a parent element). Unlike absolute positioning, other elements will still consider it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unset option&lt;/strong&gt;&lt;br&gt;
Resets the element's position back to its normal position in the document flow. This removes any previously applied positioning (absolute or relative) and makes the element inherit its properties from the parent element.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;-&lt;strong&gt;Horizontal Smooth Scrolling Layout:&lt;/strong&gt; Techniques for creating smooth horizontal scrolling effects, possibly using Locomotive Scroll library.&lt;br&gt;
-&lt;strong&gt;Distorted Link Effects with SVG Filters:&lt;/strong&gt; Explores using SVG filters to create visually interesting link effects.&lt;br&gt;
-&lt;strong&gt;Audio-Based Distortion with p5.js:&lt;/strong&gt; Demonstrates how to use p5.js and its sound library to create audio-reactive distortion effects on images.&lt;br&gt;
-&lt;strong&gt;Unrolling Image Effect with WebGL:&lt;/strong&gt; Explains the core concept behind creating an unrolling image effect using WebGL with the Three.js library.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Responsive sizes&lt;/strong&gt;&lt;br&gt;
Here, you define your responsive breakpoints for different screen sizes:&lt;br&gt;
&lt;strong&gt;Sm:&lt;/strong&gt; Small - 360px wide by 800px tall&lt;br&gt;
&lt;strong&gt;Md:&lt;/strong&gt; Medium - 768px wide by 800px tall&lt;br&gt;
&lt;strong&gt;Lg:&lt;/strong&gt; Large - 1024px wide by 800px tall&lt;br&gt;
&lt;strong&gt;Xl:&lt;/strong&gt; Extra Large - 1280px wide by 800px tall&lt;/p&gt;
&lt;h2&gt;
  
  
  Font Sizes
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Use "em" for fonts:&lt;/strong&gt; Recommends using "em" units for font sizes as they allow for easier scaling in responsive design.&lt;br&gt;
&lt;strong&gt;Growing Default Font Size:&lt;/strong&gt; While it's possible to increase the default font size for responsive design, "em" units offer more flexibility.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Blure background&lt;/strong&gt;&lt;br&gt;
This section provides code snippets for blurring a background with different filter options (opacity, brightness) but needs correction in syntax:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Filter: opacity(X,X);
-webkit-filter:opacity(X,X);
-webkit-filter:brightness(X);
-webkit-filter:brightness(X);

                    Then blure it!
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Filter:&lt;/strong&gt; Use &lt;code&gt;opacity(value)&lt;/code&gt; only once. Here it's repeated.&lt;br&gt;
&lt;strong&gt;Vendor Prefixes:&lt;/strong&gt; For broader compatibility, add &lt;code&gt;-webkit-filter&lt;/code&gt;before the standard &lt;code&gt;filter&lt;/code&gt; property.&lt;br&gt;
&lt;strong&gt;Clarity:&lt;/strong&gt; Mention that "X" needs to be replaced with the desired value for opacity and brightness (e.g., &lt;code&gt;opacity(0.5)&lt;/code&gt; for 50% opacity).&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Finding picture&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Pixabay.com&lt;/li&gt;
&lt;li&gt;  Freepik.com&lt;/li&gt;
&lt;li&gt;  Unsplash.com&lt;/li&gt;
&lt;li&gt;  Pixels.com&lt;/li&gt;
&lt;li&gt;  vecteezy.com&lt;/li&gt;
&lt;li&gt;  500px.com&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Icon download&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  Flaticon.com&lt;/li&gt;
&lt;li&gt;  Icons8.com&lt;/li&gt;
&lt;li&gt;  Fontawsome.com&lt;/li&gt;
&lt;li&gt;  Theleagueofwoveabletype.com&lt;/li&gt;
&lt;li&gt;  Fontsquirrel.com -&amp;gt; change font format&lt;/li&gt;
&lt;li&gt;  Kudakurage.com/ligature-symbols&lt;/li&gt;
&lt;li&gt;  ‘thems-pixeden.com/font-demos/7-stroke/index.html&lt;/li&gt;
&lt;li&gt;  Remixixon.com&lt;/li&gt;
&lt;li&gt;  Ionicons.com&lt;/li&gt;
&lt;li&gt;  Iconfinder.com&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Learn this from youtube&lt;/strong&gt;&lt;br&gt;
learn how to create animation moving objects:&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=eY4sXczY5AQ&amp;amp;t=6s&amp;amp;pp=ygUZR2V0dGluZyBzdGFydGVkIHdpdGggR3NhcA%3D%3D" rel="noopener noreferrer"&gt;getting started with GSAP&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=AQf8SBcEG8M&amp;amp;pp=ygUuQ3JlYXRlIHBhcmFsbGF4IHNjcm9sbGluZyBlZmZlY3QgZGVzaWduIGNvdXJzZQ%3D%3D" rel="noopener noreferrer"&gt;Create parallax scrolling effect&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and at least minmum and most of used things:&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=2IjyqauKumE&amp;amp;pp=ygUlQnVpbGQgb25lIGNvbG9yIFVJUmVzcG9uc2l2ZSAgZGF2ZSBlZA%3D%3D" rel="noopener noreferrer"&gt;Build one color UIResponsive&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=MBaw_6cPmAw&amp;amp;t=637s&amp;amp;pp=ygUfQnVpbGQgYSBwb3AgdXAgd2l0aCBqYXZhIHNjcmlwdA%3D%3D" rel="noopener noreferrer"&gt;Build a pop up with java script&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope this improved version is clearer and easier to understand!&lt;/p&gt;

</description>
      <category>css</category>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
