<?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: Syed Umair Ali</title>
    <description>The latest articles on DEV Community by Syed Umair Ali (@syedumaircodes).</description>
    <link>https://dev.to/syedumaircodes</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%2F543112%2Fafa113c1-eba9-4913-bde5-12a4fb51a90d.jpg</url>
      <title>DEV Community: Syed Umair Ali</title>
      <link>https://dev.to/syedumaircodes</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/syedumaircodes"/>
    <language>en</language>
    <item>
      <title>The ULTIMATE GUIDE to landing a FRONT-END role</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Tue, 06 Aug 2024 18:19:35 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/the-ultimate-guide-to-landing-a-front-end-role-2n4k</link>
      <guid>https://dev.to/syedumaircodes/the-ultimate-guide-to-landing-a-front-end-role-2n4k</guid>
      <description>&lt;h2&gt;
  
  
  How to get a front-end job
&lt;/h2&gt;

&lt;p&gt;If you want to get a job at a MANGA company without any degree or not much academic background you'll have to put in the work for a couple of months grinding your ass off and learn all the required skills to even get passed the initial screening.&lt;/p&gt;

&lt;p&gt;Or, you could learn the bare minimum, build projects, get a job at a small company and then work your way towards your dream job. The choice is yours.&lt;/p&gt;

&lt;h2&gt;
  
  
  Required technical skills
&lt;/h2&gt;

&lt;p&gt;HTML, CSS, and JavaScript are the building blocks for learning front-end web development. These three are the most important things in front-end development and you don't need to completely master all of them.&lt;/p&gt;

&lt;p&gt;Knowing enough HTML to make a solid structure, enough CSS to nicely style your sites, and enough JavaScript to add interactivity into your projects will be enough to land you an internship.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Out of all the three JavaScript is the most important and you should spend the most amount of time learning it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There are some core concepts in JavaScript such as scopes, closures, and the DOM which are one of the most important things that you must know when applying for a job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pick your framework
&lt;/h2&gt;

&lt;p&gt;After learning the three core concepts you need to learn a few more things like a JavaScript and CSS framework which makes your job a whole lot easier.&lt;/p&gt;

&lt;p&gt;A JavaScript framework combines little things like page routing, styling, and state management into a single boilerplate type project for you to use.&lt;/p&gt;

&lt;p&gt;A CSS framework provides you with pre-built styles, components, and classes which you can just copy-paste and modify them to your liking.&lt;/p&gt;

&lt;p&gt;Although frameworks provide a lot of functionality the problem is that there are too many of them. (especially JavaScript ones.) &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Pick only one that you like the most or the one that is most popular, or the one which is required in most job postings in your area.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There are also other things like version control, pre-processors, search engine optimization, and accessibility which are also good to know and are easy to learn.&lt;/p&gt;

&lt;p&gt;If you deep dive into front-end web development you'll learn about design systems, UI/UX design, and progressive web applications. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;These skills are the ones that will make you stand out from the rest.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Creating your portfolio
&lt;/h2&gt;

&lt;p&gt;Your portfolio is the most important thing that will help you land a job. It will help you stand apart from the rest, and if it's super impressive you won't even need to apply sometimes.You need two things in your portfolio, one being the portfolio website itself and the second one being your profile on GitHub. &lt;/p&gt;

&lt;p&gt;GitHub is the most popular code repository platform and having a good, well structured GitHub profile can be a advantage when applying for jobs.&lt;/p&gt;

&lt;p&gt;Make sure you have a great introduction section and pin your greatest projects to the front page of your profile. &lt;/p&gt;

&lt;p&gt;The read-me file of all of your projects that are pinned or displayed in your portfolio website should be complete and straight forward. A good read me consists of the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A short introduction about your project.&lt;/li&gt;
&lt;li&gt;The technologies that you have used.&lt;/li&gt;
&lt;li&gt;Instructions on how to run this project.&lt;/li&gt;
&lt;li&gt;A link to see the live preview.&lt;/li&gt;
&lt;li&gt;Screenshots and images of the project.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Experiment with your portfolio website as much as you can, add fancy animations and graphics but don't overdo it. The main focus should be about displaying the projects that you have worked on to your employer.&lt;/p&gt;

&lt;p&gt;There is no rule about which technologies you should choose to create you portfolio website, choose the stack you're most comfortable with or learn a new technology to implement it into your website.&lt;/p&gt;

&lt;h2&gt;
  
  
  Picking projects to showcase
&lt;/h2&gt;

&lt;p&gt;You shouldn't put all of your projects on portfolio. Pick only the ones that you are most proud of and make sure you understand the code so that you can explain it in the interview if asked.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Build something that you can show off to other people proudly.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The most important thing is that your project should have a nice design, responsiveness, and it should be simple to use because the interviewer doesn't have time to go through every part of your code.&lt;/p&gt;

&lt;p&gt;Like the read me file of your project, if you can provide some documentation about your projects that will be a plus point and if have done testing and show it then your project will be better than most of the candidates automatically.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating your resume
&lt;/h2&gt;

&lt;p&gt;Apart from your portfolio, your resume is the first thing that the interviewer will look at when you apply for a job. &lt;/p&gt;

&lt;p&gt;Most companies use an application tracking system which filters out the candidates based on which one is most relevant, even if they don't use an ATS, the recruiter only spends a maximum of two minutes looking at each resume.&lt;/p&gt;

&lt;p&gt;Your resume must have the top keywords that were in the job posting description and be as simple as possible so that it can be read in just a few minutes. This way you your resume will be able to pass the ATS machine and impress the person reading it.&lt;/p&gt;

&lt;p&gt;These are the things that you can do to make your resume look nice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Don't use more than three fonts and colors.&lt;/li&gt;
&lt;li&gt;The flow of the text should be from top to bottom.&lt;/li&gt;
&lt;li&gt;Include the most important information at the top.&lt;/li&gt;
&lt;li&gt;Use a spell checker to remove any spelling or grammar mistakes.&lt;/li&gt;
&lt;li&gt;Don't add any irrelevant information.&lt;/li&gt;
&lt;li&gt;Make your contact information clearly visible.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Creating a cover letter
&lt;/h2&gt;

&lt;p&gt;A cover letter is probably not required most of the time but if the job posting requires it then you can send it along with you resume.&lt;/p&gt;

&lt;p&gt;The important thing for cover letters is to make them short. You only need to write what position you are applying for, what you are doing right now, and why you’re a good fit for the position&lt;/p&gt;

&lt;p&gt;The crucial part is where you explain why you should get the job. Create an online presence In this digital age if you don't have an online presence, you don't exist. &lt;/p&gt;

&lt;p&gt;This is true because the internet helps us to be visible to people that live across the globe and they can see what we are working on and if they like your work they can collaborate with you easily and if you get noticed by a hiring manager you can land a great new role too.&lt;/p&gt;

&lt;p&gt;Programmers don't need to be active on every single social media site on the internet. Twitter(X.com) and LinkedIn are enough for you.&lt;/p&gt;

&lt;p&gt;LinkedIn is the social media site where any one can share their achievements and progress and contact hiring managers or CEOs of companies. You can add you past experiences, awards and certifications, and the skills that you can share with recruiters all over the world.&lt;/p&gt;

&lt;p&gt;Twitter(X.com) is a place for everyone to hangout and most programmers and startup founders are quite active there so it's a great platform to share your thoughts and ask for guidance from experts. &lt;/p&gt;

&lt;p&gt;You can also gain better insights about a company and senior developers and how they work and solve their problems.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It is also a great place to learn in public, you can participate in online challenges like thirty days of X and hundred days of X. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Sharing your progress with others will help be more confident. Don't just share your achievements, share your failures and solutions to your problems and insights that you gained on your journey as well.&lt;/p&gt;

&lt;p&gt;You’re very likely to find a group of like-minded people who will help and support you in your learning journey. They may offer a word of encouragement and advice or even connect you with someone who has a job for you.&lt;/p&gt;

&lt;p&gt;There are also other ways to create an online presence like starting a blog or contributing to open source projects. If you start a blog, you can learn a lot form writing down the things you learn and can also help other people by sharing your experience with them.&lt;/p&gt;

&lt;p&gt;Answering questions on Stack Overflow and Quora can also help you get recognized online, this will also tell you about how much do you really know about a certain topic. &lt;/p&gt;

&lt;h2&gt;
  
  
  Finding the job
&lt;/h2&gt;

&lt;p&gt;Finding and applying for a job can be scary if you're looking for a first timer looking for a internship or junior role. &lt;/p&gt;

&lt;p&gt;Most job postings for developers aren't written by developers but are written by managers or human resources which don't know most of the technical aspects for hiring developers so they'll just put every single requirement that comes to mind in the post.&lt;/p&gt;

&lt;p&gt;They do this because they need to filter out only the best candidates possible and this in return can be a lot of requirements to meet especially if you're a beginner, don't try to get overwhelmed and if you meet at least 50 percent of the requirements then go ahead and apply for the job, chances are you'll get selected and even land the job.&lt;/p&gt;

&lt;p&gt;Apply for as many job offerings as you can because this will increase your chances of getting hired, even if you don't get selected for the job you'll build up experience and find your weak areas. Improve on them for the next interview and eventually you'll land the perfect interview.&lt;/p&gt;

&lt;p&gt;If you see a job posting, contact them via email first. Introduce your self, tell where you found the ad, what are your skills and why do you think you're a perfect candidate for this job.&lt;/p&gt;

&lt;p&gt;Attach your resume and provide links to your GitHub and LinkedIn profiles even if they didn't ask for it. Sometimes people post contract jobs or hire freelancers for a single project. If you have built any project like they need include links to it in the email also.&lt;/p&gt;

&lt;p&gt;Some companies offer referral bonuses to their employees if they can help in recruiting new talent. Make connections on LinkedIn and ask if they can refer you in their company. &lt;/p&gt;

&lt;h2&gt;
  
  
  The interview process
&lt;/h2&gt;

&lt;p&gt;The first step in the interview process in some companies will be a simple 15-minute phone call. The recuriter will determine two things from this phone call, how well can you communicate with others and the second one will be to check if you have the basic knowledge of things listed in your resume and portfolio.&lt;/p&gt;

&lt;p&gt;Prepare for the call a day before, make sure you're in a quiet room and your phone is charged, you are sitting in a comfortable position, make sure you're not hungry or have to go to the bathroom before or during the call, re-read your resume and go through all the converstion you've had before the call with interviewer.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Researching about the comapny before hand is also a good practice.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  General questions
&lt;/h2&gt;

&lt;p&gt;When the interview starts, you're likely to get some general questions. They should warm you up and make you comfortable.&lt;/p&gt;

&lt;p&gt;The question most people fail to answer is Tell me about yourself? This is a simple question but people may not be able to answer it. Your answer should include the following point in order to impress the recruiter.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Why do want to become a front-end developer.&lt;/li&gt;
&lt;li&gt;Your skills set and the things you want to learn.&lt;/li&gt;
&lt;li&gt;Why do wanna work in this company.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The interviewer can also ask questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What projects have you worked on recently?&lt;/li&gt;
&lt;li&gt;What's your specialty?&lt;/li&gt;
&lt;li&gt;What is the project you're most proud of?&lt;/li&gt;
&lt;li&gt;What do you know about our company?&lt;/li&gt;
&lt;li&gt;Why do you want to be with us?&lt;/li&gt;
&lt;li&gt;How do you stay up to date with the latest tech trends?&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Technical questions
&lt;/h2&gt;

&lt;p&gt;Your recruiter will also ask you technical questions for which you have to be prepared. These questions can range from easy to questions about algorithms and data structures.&lt;/p&gt;

&lt;p&gt;Some of the questions that can be asked in a front-end job interview:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What's the difference between let ,var ,and const?&lt;/li&gt;
&lt;li&gt;What is this in JavaScript?&lt;/li&gt;
&lt;li&gt;What is event delegation&lt;/li&gt;
&lt;li&gt;What is a prototype?&lt;/li&gt;
&lt;li&gt;What is a Worker?&lt;/li&gt;
&lt;li&gt;What is a Stack and a Queue?&lt;/li&gt;
&lt;li&gt;What is a Big O notation?&lt;/li&gt;
&lt;li&gt;What was the last tricky bug you solved?&lt;/li&gt;
&lt;li&gt;What are things you don't like about JavaScript?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you start answering the questions don't say everything &lt;br&gt;
quickly, keep calm and take your time while answering and try to explain as much as possible. &lt;/p&gt;

&lt;p&gt;Even if you don't know the answer to the question don't say that you don't know or ask for the next question, tell them that you haven't used the particular thing you are asking or if you've used a different approach.&lt;/p&gt;

&lt;p&gt;The last part of the initial call are your questions. You should have a few of these prepared:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How long is the recruitment process?&lt;/li&gt;
&lt;li&gt;How many steps it has?&lt;/li&gt;
&lt;li&gt;How big is your team?&lt;/li&gt;
&lt;li&gt;Are there other teams in the company?&lt;/li&gt;
&lt;li&gt;What is the culture like?&lt;/li&gt;
&lt;li&gt;What projects you usually work on?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Asking these questions will make it seem like you're a professional who really cares about the job.&lt;/p&gt;

&lt;h2&gt;
  
  
  The recruitment task
&lt;/h2&gt;

&lt;p&gt;Some companies might give you a task designed for the role you're applying to and give a time period to complete it. You can take the task home and complete it at your own pace.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Keep in mind this is a great way for companies to out-source some of the work they have.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you really want to get the job and find the task easy make sure the code that you write to complete the task is the best code that you've ever written. You can also add a cherry on top by adding some extra features to show off your skills.&lt;/p&gt;

&lt;h2&gt;
  
  
  The on-site interview
&lt;/h2&gt;

&lt;p&gt;Companies will invite to at their offices to conduct an on-site interview and they'll ask you questions related to your portfolio, algorithms and data structures, and general computer science questions.&lt;/p&gt;

&lt;p&gt;The main point of an on-site interview is to evaluate you by checking how well are your communication skills, presentation skills, and can you handle pressure or not.&lt;/p&gt;

&lt;p&gt;Keep your calm, how you dress and present yourself at the interview matters a lot. First impressions matter a lot in the corporate world so make sure yours is the best.&lt;/p&gt;

&lt;p&gt;Take a moment before you answer questions, if you don't understand the question ask for the interviewer to repeat it. If you don't know the answer just say that you haven't come across this yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  Watch out for red flags
&lt;/h2&gt;

&lt;p&gt;While the companies you apply to will asses that you are perfect candidate for them or not you should try to asses if the company is a perfect fit for you or not.&lt;/p&gt;

&lt;p&gt;There are many red flags that you need to watch out for when doing an interview.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is the recruiter on time for the interview?&lt;/li&gt;
&lt;li&gt;Are they pressuring you?&lt;/li&gt;
&lt;li&gt;Are they rude to you or dismiss you while you're talking?&lt;/li&gt;
&lt;li&gt;They are not interested and are doing other things while you're presenting yourself.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After the on-site interview find more information about the company. If you do this in the beginning it would be better. &lt;/p&gt;

&lt;p&gt;Find out what current and ex-employees have to say about the work environment and the companies turnover rate is also an important factor to decide if you actually want to work their or not.&lt;/p&gt;

&lt;h2&gt;
  
  
  Replying to the job offer
&lt;/h2&gt;

&lt;p&gt;If you get selected then the company will send you a job offer letter. If you want to work for them then great! Accept the offer or negotiate some changes that you want.&lt;/p&gt;

&lt;p&gt;If you don't want to work there send them an email saying the reason you can't work for them but write it as professional and polite as you can.&lt;/p&gt;

&lt;h2&gt;
  
  
  Learn from your rejection
&lt;/h2&gt;

&lt;p&gt;If you get rejected then don't feel sad instead write an email to the company and ask them to provide you the feedback about your interview and then improve on the areas that you are weak in according to the feedback given.&lt;/p&gt;




&lt;h2&gt;
  
  
  The end
&lt;/h2&gt;

&lt;p&gt;If you have come this far then thank you so much for reading this. please feel free to give your feedback to me &lt;a class="mentioned-user" href="https://dev.to/syedumaircodes"&gt;@syedumaircodes&lt;/a&gt; and If you like this please share it with your friends and collegues.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>frontend</category>
      <category>career</category>
      <category>beginners</category>
    </item>
    <item>
      <title>My Takeaways from Still Writing...</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Fri, 19 Jul 2024 13:20:50 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/my-takeaways-from-still-writing-4nln</link>
      <guid>https://dev.to/syedumaircodes/my-takeaways-from-still-writing-4nln</guid>
      <description>&lt;p&gt;Whenever we think that we have conquered all hurdles and challenges and can enjoy some peace and quiet, that's exactly the time that life throws a curve ball and we begin the process again, facing new hurdles and challenges as life continues to go on.&lt;/p&gt;

&lt;p&gt;I, like Ralph Waldo Emerson write in my journal about myself, but in fact I'm writing about the universe as it passes through me and all the things and other people that I interact with...&lt;/p&gt;

&lt;p&gt;The state where a human reaches their peak productivity is known as the "Flow state", this state can be like a wast ocean of power waves, these waves can be turned into hydro power for yourself so that you can become the best version of yourself or you can drown in them if you're not care enough.&lt;/p&gt;

&lt;p&gt;I always thought that only I talk to myself but I realized that everyone does, each one of us has an inner censor, a critic that judges each and every action that we do or don't. This inner critic is a frenemy, it can sometimes guide towards right choices but mostly it works to make you feel miserable about your self.&lt;/p&gt;

&lt;p&gt;The flow state is the natural kryptonite of your inner critic, the more productive you are and the more you feel good about yourself the more you'll be able to silence your inner critic.&lt;/p&gt;

&lt;p&gt;In order to grow a tree you need a tiny seed, that's the same for your skills and abilities as well. Start small, learn the basics and then practice until you're confident in yourself and then practice some more.&lt;/p&gt;

&lt;p&gt;The place where you work should be adopted to the way that suits you best and not the other way around. Some people work in solitude, some work during commute, and some in public cafes. Whatever the place may be, it should feel comfortable to you.&lt;/p&gt;

&lt;p&gt;Whenever you start a new venture, it is divided into three parts, the beginning where everything is great, the middle where shit really gets tough and you need to step out of the comfort zone, the middle parts challenge us to find our inner strengths and test us. The ending is where the true beauty lies, where you learn a lot of lessons and learn why you had to learn them.&lt;/p&gt;




</description>
      <category>discuss</category>
      <category>productivity</category>
      <category>learning</category>
      <category>community</category>
    </item>
    <item>
      <title>A Simple Guide to Python Variables</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Tue, 09 Jul 2024 03:20:29 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/a-simple-guide-to-python-variables-2geb</link>
      <guid>https://dev.to/syedumaircodes/a-simple-guide-to-python-variables-2geb</guid>
      <description>&lt;h2&gt;
  
  
  Introduction to Variables
&lt;/h2&gt;

&lt;p&gt;A variable is like a container. Every variable has a value that has been assigned to it and whenever you use the variable the value that was assigned to it will actually be used. A variable's value can be changed dynamically through code and it will hold the last value that was assigned to it.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;name&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;John Doe&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Python allows you to assign more than one variable in a single line by separating their names and values with commas.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;name&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;age&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;gender&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;John&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;male&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Naming Variables
&lt;/h2&gt;

&lt;p&gt;In Python, there are a few rules that need to be followed when you're working with variables so that your code is easier to read and doesn't cause unnecessary errors.&lt;/p&gt;

&lt;p&gt;The name of a variable can only contain numbers, letters, and underscores and must start with an underscore or a letter and not a number. &lt;/p&gt;

&lt;p&gt;If you're variable name contains two words then join them together with a underscore because spaces shouldn't be used in variable names since adding a space makes them two different words.&lt;/p&gt;

&lt;p&gt;Python comes with some restricted keywords that are used in programming and those words can't be used as the name of a variable since Python has assigned a special function to them already.&lt;/p&gt;

&lt;h2&gt;
  
  
  Constant Variables
&lt;/h2&gt;

&lt;p&gt;In Python, and other programming languages, constant variables are variables whose values cannot be changed once they have been declared.&lt;/p&gt;

&lt;p&gt;Any variable whose name is written in all capital letters will be treated as a constant variable in Python.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt; &lt;span class="n"&gt;VALUE_OF_PI&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;3.14&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;p&gt;Did you find this post informational? Share your thoughts in the comments and let me know where are you on your Python Journey. Don't forget to like and share if you found this helpful!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>python</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>3 Amazing Productivity Apps for Linux</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Mon, 08 Jul 2024 18:59:20 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/3-amazing-productivity-apps-for-linux-pac</link>
      <guid>https://dev.to/syedumaircodes/3-amazing-productivity-apps-for-linux-pac</guid>
      <description>&lt;p&gt;I use Ubuntu 24.04 as my daily driver on my main laptop and these are some of the best native Linux apps that I use on a daily basis.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Iotas
&lt;/h2&gt;

&lt;p&gt;Iotas is a note taking application for Linux distributions that is available in the Ubuntu repositories or as a Flatpak that you can download from Flathub.&lt;/p&gt;

&lt;p&gt;It's the Linux equivalent of Apple Notes for me, it doesn't have all of the features but is enough for me. Iotas allows you to write in plain text as well as markdown and offers an editing and viewing mode to see how your text looks.&lt;/p&gt;

&lt;p&gt;Iotas allows you to categorize your notes using category which you can add to a note by right clicking on it and Iotas will create a new folder and store the note in it. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Iotas also offers syncing to Nextcloud but I haven't used it since I don't use Nextcloud.&lt;/p&gt;
&lt;/blockquote&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%2Fn6aycza0muee6j68ma5r.png" 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%2Fn6aycza0muee6j68ma5r.png" alt="Screenshot of Iotas on Flathub"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Foliate
&lt;/h2&gt;

&lt;p&gt;Foliate is an epub reader for Linux distributions available as a Flatpak and in some distro's repositories as well. Foliate offers a great reading experience with multiple viewing options, themes and font options so that you can customize your reading experience.&lt;/p&gt;

&lt;p&gt;Foliate is a great epub reader but is not limited to only E-pub files, Foliate can open Mobipocket, Kindle, PDFs, and CBZ files that makes it a all-one-solution for reading books and files. &lt;/p&gt;

&lt;p&gt;Foliate's features don't end there, it also has bookmarks, dictionary lookup, progress slider with chapter marks and much more.&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%2Flhh24bjf9jsa4xcjssca.png" 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%2Flhh24bjf9jsa4xcjssca.png" alt="Screenshot of Foliate on Flathub"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Only office
&lt;/h2&gt;

&lt;p&gt;Ubuntu and other Linux distributions comes with an office suite pre-installed which is known as LibreOffice. Although it's a solid option but it's not a replacement for Microsoft Office 365 for me.&lt;/p&gt;

&lt;p&gt;I use Apache Only office as my desktop office suite of choice, It has &lt;em&gt;Waaay&lt;/em&gt; better compatibility with office 365 documents the Libreoffice and also has a nice PDF editor as well.&lt;/p&gt;

&lt;p&gt;Only office is available on Windows and Mac as well and is not a Linux only application so you can try it as well on your computer and see if its worth switching over from office 365.&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%2F2mwch5mnx53e8iiaz58l.png" 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%2F2mwch5mnx53e8iiaz58l.png" alt="Screenshot of Only office on Flathub"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Which of these apps you liked the most? Share your thoughts in the comments and let me know how you plan to use any of them yourself. Don't forget to like and share if you found this helpful!&lt;/p&gt;

</description>
      <category>linux</category>
      <category>ubuntu</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>4 Essential UI Design Tips That Will Transform Your Interfaces</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Mon, 08 Jul 2024 03:59:56 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/4-essential-ui-design-tips-that-will-transform-your-interfaces-5e5p</link>
      <guid>https://dev.to/syedumaircodes/4-essential-ui-design-tips-that-will-transform-your-interfaces-5e5p</guid>
      <description>&lt;h2&gt;
  
  
  Starting from scratch
&lt;/h2&gt;

&lt;p&gt;Starting a new design completely from the ground up can be a challenging task, if you don't have the complete requirements or haven't decided on the features that your product will have.&lt;/p&gt;

&lt;p&gt;Figure out the main components of your product first and then get to designing. If you spend time designing a cool navigation component but later found that the product doesn't need a navigation component then your effort will be wasted.&lt;/p&gt;

&lt;p&gt;You can always use that component in another design but you designed something that wasn't needed and this can be quite a blunder when your working with tight deadlines.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Focusing on the main features and components will help you save time and also get your work done faster.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Using a Design System
&lt;/h2&gt;

&lt;p&gt;If you have a pre-defined color scheme or a design system that you will use for the aesthetics of your design then start using it from the beginning so that you can incorporate it into your design easily.&lt;/p&gt;

&lt;p&gt;If not, don't stress over it. Start your design with black and white colors and then add colors and accents at the end so that you don't waste time experimenting with colors while your design isn't even finished.&lt;/p&gt;

&lt;p&gt;Creating designs in monotone or gray scale will allow you to experiment with spacing, contrast and size of the design and you'll end up with a cleaner design that you can add color to whenever you want.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ship whats neccessary
&lt;/h2&gt;

&lt;p&gt;There are a ton of features that you can add in your product whether you want to include them or not. &lt;/p&gt;

&lt;p&gt;In the start, add only the necessary and core components and then listen to the user feedback about which features they need and how they need it in your product and then design them and add them.&lt;/p&gt;

&lt;p&gt;Doing so will make your product lean and will make the user happy as well as you're only shipping the features that they need and not unnecessary features that will make users want to leave your product.&lt;/p&gt;

&lt;h2&gt;
  
  
  Design Accordingly
&lt;/h2&gt;

&lt;p&gt;The vibe of your designs should be according to the main user demographic. If you're making a corporate or finance product then the vibe should be more professional looking with simple colors and fonts and to the point components that make the design look inline with the company or business.&lt;/p&gt;

&lt;p&gt;On the other hand, a product for a startup or a product that focuses on the youth will have a totally different vibe to it. It will have wild design, large-size typography, animations, fun-little interactions, and other interactive elements that catch the attention of the viewer.&lt;/p&gt;




&lt;p&gt;Which of these tips resonated with you the most? Share your thoughts in the comments and let me know how you plan to apply it in your next UI design project. Don't forget to like and share if you found this helpful!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>ux</category>
      <category>ui</category>
      <category>productivity</category>
    </item>
    <item>
      <title>DNS 101: How the Internet Really Finds Your Favorite Websites</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Sun, 07 Jul 2024 09:34:09 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/domain-name-system-dns-for-beginners-dec</link>
      <guid>https://dev.to/syedumaircodes/domain-name-system-dns-for-beginners-dec</guid>
      <description>&lt;p&gt;Whenever you visit any website on your computer or mobile device you type in the name of that website in your web browser and the browser loads up the website.&lt;/p&gt;

&lt;p&gt;The browser actually has to communicate with other computers and servers in order to find the website that you want to visit in order to load the requested website.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;These computers can be located in the same building, same area, same country or even across the globe.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In order for the browser to load up a website it has to communicate with the servers that could know where the website is located and it does that by using a domain name system. &lt;/p&gt;

&lt;p&gt;The DNS takes the domain of the website and turns it into a number that is  known as an IP address and each domain that is currently active on the internet is mapped to its own IP address.&lt;/p&gt;

&lt;p&gt;The DNS is a mapper that maps all the domains to their IP addresses and every device that can connect to the internet has a built in IP resolver so it can resolve the domain it should connect to when you want to visit a website. Most of the times your internet service provider or ISP is the one that resolves the IP addresses for you but you can do it manually as well if you want.&lt;/p&gt;

&lt;p&gt;A DNS resolver is a software is the software that your computer connects to when it doesn't know the IP address of the domain you want to visit to. &lt;/p&gt;

&lt;p&gt;If the DNS resolver doesn't know the IP address of the domain it will ask other DNS resolvers about the domain and when the domain if found by one of the IP resolvers, your IP resolver will tell your computer that the domain that you want to visit is at this IP address and your computer will load the website and the DNS resolver will then cache the domain for future reference.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;1.1.1.1 is a popular DNS resolver from Cloudflare.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;I hope you liked this simple and beginner freidnly introduction to Domain Name Systems, if you have any questions please feel free to ask them in comments below.&lt;/p&gt;

&lt;p&gt;You can follow me on Twitter(X), Linkedin, and GitHub &lt;a class="mentioned-user" href="https://dev.to/syedumaircodes"&gt;@syedumaircodes&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>learning</category>
      <category>networking</category>
    </item>
    <item>
      <title>How to write better CSS</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Sat, 06 Jul 2024 13:12:28 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/how-to-write-better-css-2plo</link>
      <guid>https://dev.to/syedumaircodes/how-to-write-better-css-2plo</guid>
      <description>&lt;p&gt;In order to write better CSS for styling websites you must first learn three things, which are responsive design, your code is maintainable and scalable, and is performative.&lt;/p&gt;

&lt;p&gt;Responsive design is all about making sure your website looks and behaves perfectly on every possible screen size. Since the number of screen sizes is ever increasing, responsive design is a fundamental concept that every frontend developer must learn and master.&lt;/p&gt;

&lt;p&gt;The code you write must be written in such a way that other developers can also easily understand it and contribute to it. This makes the code more maintainable and can easily scale if the scope of the project increases.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Use simple and meaningful class names and the markup should use semantic elements mostly.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The performance of CSS classes and styles can only be increased when you use the proper attributes and also use the latest available features to make your code more performant.&lt;/p&gt;

&lt;h2&gt;
  
  
  Systemize your code
&lt;/h2&gt;

&lt;p&gt;Always use a system when designing from scratch, break each section into independent components that can also be used later on. Design with components in mind not layouts.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The BEM architecture is a great starting point for a systematic approach to CSS.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The 7-to-1 approach is also a good choice if your working primarily with large codebases and is not worth it for smaller projects. This approach outlines that you create seven different files for each type styling and then combine them into one single file.&lt;/p&gt;




&lt;p&gt;Hope these tips help, if you have questions leave them in the comments and if you want to connect with me you can follow me on Twitter(X) or Linkedin: &lt;a class="mentioned-user" href="https://dev.to/syedumaircodes"&gt;@syedumaircodes&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>css</category>
      <category>html</category>
    </item>
    <item>
      <title>How to get hired as a front-end developer - Part 1</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Sun, 28 Aug 2022 12:00:13 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/how-to-get-hired-as-a-front-end-developer-part-1-39mo</link>
      <guid>https://dev.to/syedumaircodes/how-to-get-hired-as-a-front-end-developer-part-1-39mo</guid>
      <description>&lt;p&gt;If you want to get a job at a MANGA company without any degree or not much academic background you'll have to put in the work for a couple of months grinding your ass off and learning all the required skills to even get passed the initial screening.&lt;/p&gt;

&lt;p&gt;Or, you could learn the bare minimum, build projects, get a job at a small company and then work your way towards your dream job. The choice is yours.&lt;/p&gt;

&lt;h2&gt;
  
  
  Required technical skills
&lt;/h2&gt;

&lt;p&gt;HTML, CSS, and JavaScript are the building blocks for learning front-end web development. These three are the most important things in front-end development and you don't need to completely master all of them, knowing enough HTML to make a solid structure, enough CSS to nicely style your sites, and enough JavaScript to add interactivity to your projects will be enough to land you an internship.&lt;/p&gt;

&lt;p&gt;Out of all the three JavaScript is the most important and you should spend the most amount of time learning it. There are some core concepts in JavaScript such as scopes, closures, and the DOM which are one of the most important things that you must know when applying for a job.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pick your framework
&lt;/h2&gt;

&lt;p&gt;After learning the three core concepts you need to learn a few more things like a JavaScript and CSS framework which makes your job a whole lot easier.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A JavaScript framework combines little things like page routing, styling, and state management into a single boilerplate type project for you to use. &lt;/li&gt;
&lt;li&gt;A CSS framework provides you with pre-built styles, components, and classes that you can just copy-paste and modify to your liking.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Although frameworks provide a lot of functionality, there are too many of them. (especially JavaScript ones.) Pick only one that you like the most, the most popular, or the one required in most job postings in your area.&lt;/p&gt;

&lt;p&gt;Other things like version control, pre-processors, search engine optimization, and accessibility are also good to know and are easy to learn.&lt;/p&gt;

&lt;p&gt;If you deep dive into front-end web development you'll learn about design systems, serverless computing, UI/UX design, and progressive web applications. These skills are the ones that will make you stand out from the rest.&lt;/p&gt;

&lt;p&gt;If you've read this far thank you! I'm a new writer and your support will be highly appreciated. I'll talk about how to build your online portfolio and resume in the next part.&lt;/p&gt;

&lt;p&gt;If you like you can follow me on Twitter &lt;a class="mentioned-user" href="https://dev.to/syedumaircodes"&gt;@syedumaircodes&lt;/a&gt; &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>beginners</category>
      <category>career</category>
    </item>
    <item>
      <title>Tech Jargon: Demystified</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Thu, 15 Jul 2021 13:26:29 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/tech-jargon-demystified-16bg</link>
      <guid>https://dev.to/syedumaircodes/tech-jargon-demystified-16bg</guid>
      <description>&lt;p&gt;If you're like me and are deep into the latest tech trends, you might have heard or read about all the new and confusing jargon that most people don't know about or are confused about what it means. Don't worry. I'll explain all the tech-related slang in a funny and bite-sized manner, starting from the simpler ones.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.Cloud:
&lt;/h3&gt;

&lt;p&gt;A cloud is a collection of computers connected together that host different services so that you can use your computer to connect to those computers and use those services. Some clouds allow you to store your documents or photos. We call them clouds because they are located in other countries or sometimes across the globe.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4lwwj60ras2lek9g4bhk.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4lwwj60ras2lek9g4bhk.jpg" alt="Cloud computing" width="747" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2.Containers:
&lt;/h3&gt;

&lt;p&gt;I asked one of my seniors at my school, what are containers? And why is everyone using them? He pulled up an image of a food container on his computer and showed it to me. I was puzzled and thought he was having fun with me. I again asked, what is a docker container? He again showed me the same image and said, instead of the food, you put your code in here and use it wherever you want. I was like Hmmmm, sounds cool.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7v8j963m6qdujlufg7b2.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7v8j963m6qdujlufg7b2.gif" alt="Cool cool cool" width="498" height="202"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3.EaaS: Everything as a Service:
&lt;/h3&gt;

&lt;p&gt;In our modern-day, everything is available as a service. And honestly speaking, I'm having mixed feelings about everything in my life being available as-a-service to me. It has its pros and cons equally. For example, I want to arrive at work in a new car but don't have one. I can use a car-as-a-service(Uber, Lyft). The same goes for PaaS and SaaS offerings, available from tech companies &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fis5tuzrxpw9foruc297l.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fis5tuzrxpw9foruc297l.jpg" alt="MaaS" width="600" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4.Container Orchestrator:
&lt;/h3&gt;

&lt;p&gt;Managing a single container is easy managing multiple containers? That's where the fun begins. You don't handle them we use container orchestration software that handles all of our containers namely Kubernetes or Docker-swarm. We just tell them how and when to handle it and then kick back and relax. &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvkpvnp35yyttcbexp4x5.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvkpvnp35yyttcbexp4x5.jpg" alt="Manage containers" width="500" height="543"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hope you find this informative and funny and have fun while reading this as much as I had writing it. Comment other techy jargon that I should explain next.&lt;/p&gt;

</description>
      <category>cloud</category>
      <category>beginners</category>
      <category>aws</category>
      <category>docker</category>
    </item>
    <item>
      <title>Checking out Windows 11 (LEAKED)</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Fri, 25 Jun 2021 17:14:53 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/checking-out-windows-11-leaked-4fhc</link>
      <guid>https://dev.to/syedumaircodes/checking-out-windows-11-leaked-4fhc</guid>
      <description>&lt;p&gt;Yesterday march 24th marked the start of a new era for Microsoft's Windows Operating system when they announced the latest version called Windows 11 which should've been called windows 10.5 in my opinion but there are many changes in this new version, some of which I like and some that nobody likes. Which we are going to discuss in this post.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I have tested Windows 11 in a Virtual machine using 6 gigs of ram and 150 gigs of storage using the leaked ISO that is available on the internet and didn't install it on bare-metal hardware so your mileage may vary.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  The new Start-menu
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fybogdf1wu725lekedc15.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fybogdf1wu725lekedc15.png" alt="The new start menu" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
After the first boot you are greeted with the new centered start menu and centered taskbar icons which I'm not a fan of because I like windows 10's simple start menu without live tiles and the new one is just too big I guess. But i guess some people will like it.&lt;/p&gt;

&lt;h1&gt;
  
  
  Copy-Pasting "Features"
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyusmbzx8ehu8bed9xt6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyusmbzx8ehu8bed9xt6.png" alt="New Desktop switcher" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
The centered taskbar, rounded corners, and new icons looks like it's copied from Mac OS the start menu is a copy of KDE's ditto menu and the new desktop switcher is just apple's mission control upside-down. The overall "visual-change" is not that appealing in this super early dev-build but the final product is expected to look gorgeous. But only time will tell about that.&lt;/p&gt;

&lt;h1&gt;
  
  
  Window-snapping
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F16vkr4ttztal29eelo8v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F16vkr4ttztal29eelo8v.png" alt="Window-snapping in windows 11" width="800" height="600"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqxiw7wm1r347vckz14q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqxiw7wm1r347vckz14q.png" alt="Window-snapping in windows 11" width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Window snapping is a very old feature available in Linux distro's for as long as I know, Most Linux users generally prefer Tilling windows managers because of the keyboard-driven workflow. This feature is also available in Windows 10 using the fancy-zones power-toy but in windows 11 they made it as a built-in feature and &lt;strong&gt;IT WORKS PERFECTLY&lt;/strong&gt;.Period. I mean it's very well refined and intelligent(You'll understand when you use it) which makes my workflow a whole lot easier and productive. It's one of the smaller changes that have a bigger affect while multitasking.&lt;/p&gt;

&lt;h1&gt;
  
  
  Performance
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fie3tfowthld93lwec9ct.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fie3tfowthld93lwec9ct.png" alt="Task manager" width="800" height="449"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Okay so as how well it performs in a Virtual machine, It didn't feel like I was using a Virtual machine and I mean it when I say the performance is great. All of the under the hood improvements finally worked and it runs amazingly fast and responsive even the animations are great. Microsoft really did a great job in improving the performance of this version.&lt;/p&gt;

&lt;h1&gt;
  
  
  Final Verdict
&lt;/h1&gt;

&lt;p&gt;I'm waiting to test the release version which will have all the bells and whistles that Microsoft talked about in the event because this version is a very early developer build and many more features will be added to the release version.&lt;br&gt;
Until then I'm sticking with Linux Mint on my main machine with a Windows 10 Virtual machine. My only concern is that telemetry will increase as even the start menu is cloud powered now and the 64 gigs that it will take to install.     &lt;/p&gt;

</description>
      <category>windows</category>
      <category>news</category>
      <category>review</category>
      <category>watercooler</category>
    </item>
    <item>
      <title>How to hash your passwords in Node.js Easily.</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Fri, 16 Apr 2021 20:29:33 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/how-to-encrypt-your-passwords-in-node-js-easily-2d4f</link>
      <guid>https://dev.to/syedumaircodes/how-to-encrypt-your-passwords-in-node-js-easily-2d4f</guid>
      <description>&lt;p&gt;Hello, fellow devs!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It's been a long time since I have written any new article here. So here is a small tutorial that I find very easy, fun, and also productive.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I'll show you a simple way how you can hash your passwords in node.js using &lt;code&gt;Bcrypt.js&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The example I'm using today is from an API that I am making right now.&lt;/p&gt;

&lt;p&gt;First, we will install a library called &lt;code&gt;bcrypt.js&lt;/code&gt; using a simple npm command &lt;code&gt;npm install bcryptjs&lt;/code&gt; and then import it into our project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwniotf4kjk4dc9eakyr2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwniotf4kjk4dc9eakyr2.png" alt="Imported libraries" width="517" height="163"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And now I'll show the difference between an encrypted request and a not encrypted request made using postman. this is the request code without using bcrypt.js&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgrno1hm0iywpw4vbhjir.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgrno1hm0iywpw4vbhjir.png" alt="Post request without bcrypt.js" width="696" height="411"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the post request sent using postman without hashing. &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flhu7yitjc0zyla6b2ho1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flhu7yitjc0zyla6b2ho1.png" alt="Request without hashing" width="800" height="402"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And this is the response I get.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foev2swql9a27y7nqt4fs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foev2swql9a27y7nqt4fs.png" alt="Response of postman request" width="800" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And now I will use the &lt;code&gt;hashSync&lt;/code&gt; method provided by &lt;code&gt;bcrypt.js&lt;/code&gt; to hash the user password field.&lt;/p&gt;

&lt;p&gt;These are the changes required in the code. this is a simple function built into the &lt;code&gt;bcrypt.js&lt;/code&gt; library.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjguadmxgezwyni8lqlh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjguadmxgezwyni8lqlh.png" alt="Changes into code" width="604" height="367"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And now in the response of the API, the password field will be in hashed form.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc6cf9f8lewmdubyoo8ue.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc6cf9f8lewmdubyoo8ue.png" alt="Password is now hashed" width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is a simple way to hash your passwords in node.js.&lt;/p&gt;

&lt;p&gt;Plus points if you can find the Simpsons reference. :)&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>codenewbie</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Install MacOS in a VM on Linux</title>
      <dc:creator>Syed Umair Ali</dc:creator>
      <pubDate>Mon, 08 Feb 2021 17:11:49 +0000</pubDate>
      <link>https://dev.to/syedumaircodes/install-macos-in-a-vm-on-linux-308b</link>
      <guid>https://dev.to/syedumaircodes/install-macos-in-a-vm-on-linux-308b</guid>
      <description>&lt;h1&gt;
  
  
  Why would you do this?
&lt;/h1&gt;

&lt;p&gt;The answer is simple if you're a cross-platform developer wanting to test your software on a mac without buying one or just want a hackintosh without all the hassle then this might be for you.&lt;/p&gt;

&lt;h1&gt;
  
  
  What are we going to do?
&lt;/h1&gt;

&lt;p&gt;We are going to install a snap package on a computer running a linux distrbution and then with the help of that snap package install macOS on the computer in a virtual machine.&lt;/p&gt;

&lt;h4&gt;
  
  
  What are we installing:
&lt;/h4&gt;

&lt;p&gt;We are going to install a snap package called sosumi which is based on &lt;a href="https://github.com/foxlet/macOS-Simple-KVM" rel="noopener noreferrer"&gt;macos-simple-kvm&lt;/a&gt; project that creates a macOS virtual machine easily for us to use.&lt;/p&gt;

&lt;h5&gt;
  
  
  Requirements:
&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;A computer running a modern linux distrbution of linux that supports snap packages.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Installation:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Open your terminal and type &lt;code&gt;Snap&lt;/code&gt; to check if snap is installed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If not then type &lt;code&gt;sudo apt/dnf/pacman install snapd&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now snap should be installed on your system.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now install sosumi by typing &lt;code&gt;sudo snap install sosumi&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A new application will be installed on your computer called sosumi.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Configurations:
&lt;/h4&gt;

&lt;p&gt;Now the last thing to do is to run the sosumi app and install macOS from the macOS recovery screen. But before you do that you need to know that it will use minimum system resources at first you can configure it to your liking for that just go into your home directory and then you need to go to &lt;code&gt;/snap/sosumi/common&lt;/code&gt; and then edit the &lt;code&gt;launch&lt;/code&gt; file present in the folder. The file is set to use 2gb of ram and 2 cores of your processor, you can easily set that your preference.&lt;/p&gt;

&lt;p&gt;There is also a file called macos.qcow2 which is the virtual harddisk of the virtual machine you can resize it to your liking by typing &lt;br&gt;
&lt;code&gt;qemu-img resize macos.qcow2+"your required size"&lt;/code&gt; and then launch the sosumi app and it will show you the macOS recovery screen from there you can install macOS.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If you just want to run only macOS I recommend you use a arch host for better performance.&lt;/p&gt;
&lt;/blockquote&gt;

</description>
      <category>linux</category>
      <category>discuss</category>
      <category>tutorial</category>
      <category>codenewbie</category>
    </item>
  </channel>
</rss>
