<?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: professional writer</title>
    <description>The latest articles on DEV Community by professional writer (@professionalw0).</description>
    <link>https://dev.to/professionalw0</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%2F892194%2F777a8cfb-997b-4268-984f-4407e5cdffe1.jpg</url>
      <title>DEV Community: professional writer</title>
      <link>https://dev.to/professionalw0</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/professionalw0"/>
    <language>en</language>
    <item>
      <title>Strengthening Your Node.js Applications: Essential Secure Coding Practices</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Mon, 04 Mar 2024 21:06:32 +0000</pubDate>
      <link>https://dev.to/professionalw0/strengthening-your-nodejs-applications-essential-secure-coding-practices-42h9</link>
      <guid>https://dev.to/professionalw0/strengthening-your-nodejs-applications-essential-secure-coding-practices-42h9</guid>
      <description>&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%2Ftt53kuabymi0ens8ua3l.jpeg" 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%2Ftt53kuabymi0ens8ua3l.jpeg" alt="Image description" width="318" height="159"&gt;&lt;/a&gt;&lt;br&gt;
In today's digital landscape, where cybersecurity threats lurk around every corner, ensuring the security of your Node.js applications is paramount. With the ever-evolving nature of cyber threats, mastering secure coding practices is not just a good idea—it's a necessity. Whether you're a seasoned developer or just starting your journey with Node.js, adopting robust security measures can safeguard your applications and protect sensitive data from falling into the wrong hands.&lt;/p&gt;

&lt;p&gt;This article &lt;a href="https://techscriptlab.com/secure-coding-nodejs-best-practices/"&gt;Secure Coding in Node.js&lt;/a&gt; offers invaluable insights into enhancing the security of your Node.js applications. Authored by experts in the field, this comprehensive guide delves deep into the intricacies of secure coding practices tailored specifically for Node.js environments. From implementing encryption algorithms to mitigating common vulnerabilities such as injection attacks and cross-site scripting (XSS), this resource equips developers with the knowledge and techniques needed to build resilient and secure applications.&lt;/p&gt;

&lt;p&gt;By incorporating the principles outlined in "Fortifying Node.js Applications: Mastering Secure Coding Practices," developers can bolster their defenses against a myriad of threats, ensuring that their applications remain resilient in the face of evolving cyber risks. Whether you're developing a small-scale project or a mission-critical enterprise application, prioritizing security from the outset is key to safeguarding your assets and maintaining the trust of your users.&lt;/p&gt;

&lt;p&gt;In conclusion, the importance of secure coding practices cannot be overstated in today's cybersecurity landscape. With Node.js becoming increasingly popular for building web applications, it's imperative for developers to stay abreast of the latest security protocols and best practices. "Fortifying Node.js Applications: Mastering Secure Coding Practices" serves as an indispensable resource for developers looking to fortify their applications and navigate the complex terrain of cybersecurity with confidence.&lt;/p&gt;

</description>
      <category>node</category>
      <category>security</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Safeguarding the Future: The Importance of Protecting the JavaScript Language</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Mon, 04 Mar 2024 20:43:26 +0000</pubDate>
      <link>https://dev.to/professionalw0/safeguarding-the-future-the-importance-of-protecting-the-javascript-language-ia3</link>
      <guid>https://dev.to/professionalw0/safeguarding-the-future-the-importance-of-protecting-the-javascript-language-ia3</guid>
      <description>&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%2Fdvrcfl170bgcd4peh0ib.jpeg" 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%2Fdvrcfl170bgcd4peh0ib.jpeg" alt="Image description" width="300" height="168"&gt;&lt;/a&gt;&lt;br&gt;
In the digital age, where technology permeates every aspect of our lives, JavaScript stands as one of the most fundamental programming languages. Its versatility and ubiquity empower developers to craft dynamic and interactive web experiences. However, with great power comes great responsibility. As JavaScript continues to evolve, ensuring its security becomes paramount.&lt;/p&gt;

&lt;p&gt;Recently, an insightful article titled &lt;a href="https://techscriptlab.com/javascript-security-best-practices/"&gt;javascript security best practices&lt;/a&gt; shed light on the imperative nature of protecting JavaScript code. Authored by experts in the field, the article offers invaluable insights into the best practices for securing JavaScript applications, ranging from input validation to authentication mechanisms. It not only underscores the significance of secure coding practices but also emphasizes the broader importance of safeguarding the language itself.&lt;/p&gt;

&lt;p&gt;JavaScript's pivotal role in web development renders it a prime target for malicious actors. Exploiting vulnerabilities in JavaScript code can lead to severe consequences, ranging from data breaches to compromised user privacy. Consequently, adopting stringent security measures is crucial to mitigate these risks.&lt;/p&gt;

&lt;p&gt;One of the primary reasons to safeguard JavaScript is its pivotal role in shaping the modern web landscape. From dynamic websites to robust web applications, JavaScript powers a myriad of digital experiences. Any compromise to its security could undermine the trust users place in online platforms, hindering the growth of e-commerce, social networking, and other vital sectors.&lt;/p&gt;

&lt;p&gt;Furthermore, JavaScript's cross-platform compatibility amplifies its significance. Whether on desktop or mobile devices, JavaScript enables seamless interactions across diverse environments. Thus, any vulnerabilities in the language can have far-reaching implications, affecting a vast array of users worldwide.&lt;/p&gt;

&lt;p&gt;Moreover, JavaScript's integration with emerging technologies like the Internet of Things (IoT) and serverless computing underscores the urgency of protecting its ecosystem. As these technologies become increasingly intertwined with everyday life, the stakes of JavaScript security escalate.&lt;/p&gt;

&lt;p&gt;In light of these considerations, developers must prioritize implementing the best security practices outlined in the aforementioned article. This includes but is not limited to input validation, proper authentication mechanisms, and regular code audits. Additionally, staying abreast of the latest security trends and patches is essential to preemptively address potential vulnerabilities.&lt;/p&gt;

&lt;p&gt;Beyond individual codebases, collective efforts are necessary to fortify the JavaScript ecosystem. Collaborative initiatives such as bug bounty programs and community-driven security audits foster a culture of transparency and accountability. By sharing insights and resources, the development community can collectively bolster JavaScript's resilience against emerging threats.&lt;/p&gt;

&lt;p&gt;In conclusion, the article "JavaScript Security Best Practices: Safeguarding Your Code" serves as a poignant reminder of the critical role that JavaScript plays in the digital realm. Protecting the language goes beyond mere code hygiene—it safeguards the integrity of the web and preserves the trust of users worldwide. As stewards of the JavaScript ecosystem, it is incumbent upon developers to uphold the highest standards of security, ensuring a safer and more resilient digital future.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>typescript</category>
      <category>testing</category>
      <category>security</category>
    </item>
    <item>
      <title>PHP: Getters and Setters</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Sun, 07 Aug 2022 16:42:10 +0000</pubDate>
      <link>https://dev.to/professionalw0/php-getters-and-setters-3hb1</link>
      <guid>https://dev.to/professionalw0/php-getters-and-setters-3hb1</guid>
      <description>&lt;p&gt;In this guide, we are going to show you how to create “Getters” and “Setters” using PHP.&lt;/p&gt;

&lt;p&gt;“Getters” and “Setters” are class functions that allow you to control access to an object’s properties.&lt;/p&gt;

&lt;p&gt;Sometimes, people will refer to them as “mutator methods”.&lt;/p&gt;

&lt;p&gt;To sum it up:&lt;/p&gt;

&lt;p&gt;A “getter” allows you to retrieve or get a given property.&lt;/p&gt;

&lt;p&gt;A “setter” allows you to set the value of a given property.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://professional-writer0.blogspot.com/2022/08/getter-and-setter-in-php.html"&gt;read more&lt;/a&gt;
&lt;/h2&gt;

</description>
      <category>php</category>
      <category>java</category>
      <category>algorithms</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Int Object is Not Iterable – Python Error [Solved]</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Sat, 06 Aug 2022 07:47:09 +0000</pubDate>
      <link>https://dev.to/professionalw0/int-object-is-not-iterable-python-error-solved-2f75</link>
      <guid>https://dev.to/professionalw0/int-object-is-not-iterable-python-error-solved-2f75</guid>
      <description>&lt;p&gt;If you are running your Python code and you see the error “TypeError: 'int' object is not iterable”, it means you are trying to loop through an integer or other data type that loops cannot work on.&lt;/p&gt;

&lt;p&gt;In Python, iterable data are lists, tuples, sets, dictionaries, and so on.&lt;/p&gt;

&lt;p&gt;In addition, this error being a “TypeError” means you’re trying to perform an operation on an inappropriate data type. For example, adding a string with an integer.&lt;/p&gt;

&lt;p&gt;Today is the last day you should get this error while running your Python code. Because in this article, I will not just show you how to fix it, I will also show you how to check for the &lt;strong&gt;iter&lt;/strong&gt; magic methods so you can see if an object is iterable.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Fix Int Object is Not Iterable
&lt;/h2&gt;

&lt;p&gt;If you are trying to loop through an integer, you will get this error:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;count = 14

for i in count:
    print(i)
# Output: TypeError: 'int' object is not iterable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One way to fix it is to pass the variable into the range() function.&lt;/p&gt;

&lt;p&gt;In Python, the range function checks the variable passed into it and returns a series of numbers starting from 0 and stopping right before the specified number.&lt;/p&gt;

&lt;p&gt;The loop will now run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;count = 14

for i in range(count):
    print(i)

# Output: 0
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9
# 10
# 11
# 12
# 13
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Another example that uses this solution is in the snippet below:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/08/what-does-not-iterable-mean-in-python.html"&gt;read more&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>programming</category>
      <category>oop</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Database setup using XAMPP</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Sat, 06 Aug 2022 07:31:12 +0000</pubDate>
      <link>https://dev.to/professionalw0/database-setup-using-xampp-2da</link>
      <guid>https://dev.to/professionalw0/database-setup-using-xampp-2da</guid>
      <description>&lt;p&gt;This is a short introduction to help you setup and test access to your database using a local web server (XAMPP). For more information on SQL commands, please refer to database textbook(s).&lt;br&gt;
(Please let me know if you find any errors or omissions in the document —Upsorn Praphamontripong, 27-January-2022)&lt;br&gt;
XAMPP is an open source package that is widely used for PHP development. XAMPP contains MariaDB, PHP, and Perl; it provides a graphical interface for SQL (phpMyAdmin), making it easy to maintain data in a relational database.&lt;/p&gt;

&lt;h2&gt;
  
  
  read also : &lt;a href="https://professional-writer0.blogspot.com/2022/08/phpmyadmin-sql-dump-pass-password.html"&gt;phpmyadmin sql dump pass password passwd pwd&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;If you have not installed XAMPP, please refer to XAMPP-setup to install and set up XAMPP.&lt;/p&gt;

&lt;p&gt;Assuming that you have already set up XAMPP&lt;/p&gt;

&lt;p&gt;Start the database server ("MySQL Database")&lt;br&gt;
Start the PHP environment ("Apache Web Server")&lt;br&gt;
Note:  phpMyAdmin  runs on a PHP environment. To use  phpMyAdmin  to manage databases, Apache Web server must be started.&lt;/p&gt;

&lt;p&gt;Reminder: be sure to stop the server when you are done. Leaving the servers running consumes energy and may later prevent the servers from starting (in particular, MySQL server).&lt;/p&gt;

&lt;h2&gt;
  
  
  Access phpMyAdmin
&lt;/h2&gt;

&lt;p&gt;Open a web browser, enter a URL   &lt;a href="http://localhost"&gt;http://localhost&lt;/a&gt;   to access XAMPP dashboard&lt;br&gt;
Select  phpMyAdmin  tab&lt;/p&gt;

&lt;p&gt;Alternatively, you may access  phpMyAdmin  via the XAMPP manager / controller, click  Go to Application  button to access XAMPP dashboard.&lt;/p&gt;

&lt;p&gt;The main page should look similar to the following&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/08/how-do-i-import-sql-file-into-xampp.html"&gt;read more How do I import a .SQL file into xampp?&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

</description>
      <category>database</category>
      <category>sql</category>
      <category>php</category>
      <category>programming</category>
    </item>
    <item>
      <title>What is difference between Firebase and Google Analytics?</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Fri, 29 Jul 2022 05:26:22 +0000</pubDate>
      <link>https://dev.to/professionalw0/what-is-difference-between-firebase-and-google-analytics-2fl5</link>
      <guid>https://dev.to/professionalw0/what-is-difference-between-firebase-and-google-analytics-2fl5</guid>
      <description>&lt;p&gt;Google Analytics is a powerful web traffic analytics tool used by many websites to understand how users interact with the website and where they go after signing up. However, Google Analytics is not suitable for all webmasters as it has some limitations compared to other tools. Also, Google Analytics is only available in the Google platform. Therefore, some webmasters use other tools for analysis, such as Firebase and SEMRush. &lt;/p&gt;

&lt;p&gt;read more : &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/Firebase-vs-Google-Analytics.html"&gt;Which One Should You Choose?&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Firebase is a functional tool used by webmasters to analyze website traffic. It can be used in tandem with Google Analytics to improve user experience and increase conversion rates. In contrast to GA, firebase allows you to track user events in real time and access data easily via the browser or via desktop apps. It also allows you to send real-time notifications and create dynamic campaigns for marketing purposes. On the other hand, Google Analytics uses web server log files to track website traffic behavior while it collects data via cookies on a periodic basis. &lt;/p&gt;

&lt;p&gt;Apart from that, both services use different data collection methods—GA collects data through cookies on a periodic basis while firebase collects data directly from websites via server logs. Using firebase instead of GA can help you analyze your website’s performance in real time instead of collecting historical data over several weeks or months. In addition, using both tools together can provide deeper insights into your website’s performance and potential user behavior patterns.&lt;/p&gt;

&lt;p&gt;Firebase and Google Analytics are complementary services used together as they both provide crucial insights into the health of your website's traffic channels. Both tools collect different types of data about users' activities on your website; however, their primary purpose is quite different. While GA aims to give you an accurate picture of your users’ behavior, firebase helps you manage this information by providing real-time insights into your websites’ performance via cloud storage platform. Furthermore, combining both services can help you identify potential problems with your website before actual users experience any issues due to poor performance or security issues.&lt;/p&gt;

&lt;p&gt;Firebase and Google Analytics are complementary services that help webmasters better understand how users interact with their websites and what drives user engagement on various platforms such as Facebook and Twitter. Therefore, it’s important that webmasters keep an eye on their websites using both tools so they can find any potential issues early enough for fixing them. &lt;/p&gt;

</description>
      <category>firebase</category>
      <category>javascript</category>
      <category>sql</category>
      <category>analytics</category>
    </item>
    <item>
      <title>Invalid Nullable Value – Enable for C# 7.3</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Thu, 28 Jul 2022 11:13:59 +0000</pubDate>
      <link>https://dev.to/professionalw0/invalid-nullable-value-enable-for-c-73-5f66</link>
      <guid>https://dev.to/professionalw0/invalid-nullable-value-enable-for-c-73-5f66</guid>
      <description>&lt;p&gt;I was playing around with Visual Studio 2019 and the open source ASP.NET Core blog engine Miniblog.Core. I cloned it to my local, opened it in Visual Studio 2019 and tried to build the solution. I immediately ran into the error below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Error  CS8630  Invalid 'nullable' value: 'Enable' for C# 7.3. Please use language version '8.0' or greater.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So, I looked up the error message and every Stack Overflow page I ended up on, says that I have to set the Language Version in Visual Studio. Okay, so how do I do that? I eventually found this answer, which gives you the steps to get to the Advanced Build Settings dialog box for the project.&lt;/p&gt;

&lt;p&gt;read more : &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/invalid-nullable-value-enable-for-c-7-3.html"&gt;invalid nullable value enable for c# 7.3&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>programming</category>
      <category>php</category>
      <category>node</category>
    </item>
    <item>
      <title>How do I use JSON formatter extension in Chrome?</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Thu, 28 Jul 2022 05:57:44 +0000</pubDate>
      <link>https://dev.to/professionalw0/how-do-i-use-json-formatter-extension-in-chrome-4iac</link>
      <guid>https://dev.to/professionalw0/how-do-i-use-json-formatter-extension-in-chrome-4iac</guid>
      <description>&lt;p&gt;Chrome has a built-in JSON formatter extension that you can use to format and export your JSON data. To get started, open Chrome, click on the three lines in the top right corner of the browser window (gear icon), select "Tools", then click on "Extensions". In the Extensions list, find and install the JSON Formatter Extension. After installation is complete, you will see a new button named "JSON" next to File &amp;gt; Export.. Clicking this button will open up a dialog box where you can configure how your data will be formatted and exported.&lt;/p&gt;

&lt;h2&gt;
  
  
  read also : &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/how-to-convert-json-to-csv-with-python.html"&gt;How to Convert JSON to CSV with Python&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;JSON formatter extension is an extension for Google Chrome that helps you to formatting the JSON data. It is available as an add-on in the Google Chrome web store and can be installed in just a few seconds. Once installed, the JSON formatter extension will be available in the extension bar located at the top of the browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  read also : &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/vscode-annotation-autoclose-tool-to.html"&gt;vscode annotation autoclose&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Starting with the extension, you will first need to load the JSON data you want to format. Once the JSON data is loaded, you will be able to select the format you want to use for the data. Currently, the JSON formatter extension supports three formats - text, JSON, and Markdown. After selecting the format, you will be able to choose the level of formatting you want to use for the data. The available formats and levels of formatting are as follows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text - The data will be formatted using basic text formatting options such as font, color, and size.&lt;/li&gt;
&lt;li&gt;JSON - The data will be formatted using the standard JSON formatting options.&lt;/li&gt;
&lt;li&gt;Markdown - The data will be formatted using the standard Markdown formatting options.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Once the data is formatted, you will be able to save the formatted data in either a text or JSON file. In addition, you will also be able to share the formatted data with other people.&lt;/p&gt;

&lt;p&gt;JSON formatter extension is an essential tool for anyone who wants to format the JSON data in a professional manner. It is easy to use and provides a wide range of formatting options.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>tutorial</category>
      <category>programming</category>
      <category>python</category>
    </item>
    <item>
      <title>How do I annotate with git blame in Visual Studio?</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Wed, 27 Jul 2022 12:38:36 +0000</pubDate>
      <link>https://dev.to/professionalw0/how-do-i-annotate-with-git-blame-in-visual-studio-4j37</link>
      <guid>https://dev.to/professionalw0/how-do-i-annotate-with-git-blame-in-visual-studio-4j37</guid>
      <description>&lt;p&gt;TFS (and so does VS) uses the Term "Annotate" instead of "Blame", just right click on the editor when you have a file open, then click Source Control, Annotate.&lt;/p&gt;

&lt;p&gt;read also : &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/vscode-annotation-autoclose-tool-to.html"&gt;vscode annotation&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'm sure there are other ways to do it, either from the menu, toolbars, solution explorer, etc.&lt;/p&gt;

</description>
      <category>vscode</category>
      <category>git</category>
      <category>python</category>
      <category>programming</category>
    </item>
    <item>
      <title>Code Annotation: a VSCode extension for adding notes on your code without commiting</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Wed, 27 Jul 2022 12:35:30 +0000</pubDate>
      <link>https://dev.to/professionalw0/code-annotation-a-vscode-extension-for-adding-notes-on-your-code-without-commiting-1lb1</link>
      <guid>https://dev.to/professionalw0/code-annotation-a-vscode-extension-for-adding-notes-on-your-code-without-commiting-1lb1</guid>
      <description>&lt;p&gt;Code annotation is a Visual Studio Code extension that creates and tracks annotations from your source code without actually committing comments on your code.&lt;/p&gt;

&lt;p&gt;You can download Code Annotation directly from the Marketplace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Problem Statement
&lt;/h2&gt;

&lt;p&gt;When I’m investigating some bug, or just going through the code for some reason, it’s very common that I came to some realizations:&lt;/p&gt;

&lt;p&gt;Oh oh, this code is too strange, this shouldn’t be like this, need to check it later&lt;br&gt;
Damm, this is a horrible name for this method/variable&lt;br&gt;
I need to come back to this function after when popping the calling stack I’m traversing&lt;br&gt;
I need to fix the use of this API here, here, and here (in multiple files)&lt;br&gt;
But because this happens while I’m working on something else, I don’t want to stop, take care of it, and get back. So, what I used to do was either to:&lt;/p&gt;

&lt;p&gt;Open my to-do list app, insert an entry on it for the future, and possibly not adding enough context for the future making it a useless entry&lt;br&gt;
Add a not-so-beautiful comment like // DO NOT COMMIT: Thamara check this, which usually lead to me forgetting and committing it anyway (and having to remove, rebase, merge, whatever)&lt;br&gt;
Use of the adding breakpoints feature on VSCode, and frequently losing track of why I tagged something, as well as getting my actual breakpoints all mess up&lt;br&gt;
Needless to say, I needed a better system.&lt;/p&gt;

&lt;p&gt;To summarize the problem: I wanted to add some notes that would be tied to a code, but I could include a better description of why I was adding that note. I wanted to track what I added and I didn’t want to commit anything (read: didn’t want to rely on adding TODOs to the code).&lt;/p&gt;

&lt;p&gt;I went over several extensions on the VSCode marketplace and could not find anything. So I did the very best thing I do when I have a problem: I solved it myself. If there was no available solution, I would build it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/vscode-annotation-autoclose-tool-to.html"&gt;read more | vscode annotation&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>vscode</category>
      <category>programming</category>
      <category>tutorial</category>
      <category>git</category>
    </item>
    <item>
      <title>Git commit</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Wed, 27 Jul 2022 07:22:20 +0000</pubDate>
      <link>https://dev.to/professionalw0/git-commit-1h99</link>
      <guid>https://dev.to/professionalw0/git-commit-1h99</guid>
      <description>&lt;p&gt;The project's staged changes are captured in a snapshot by the &lt;strong&gt;git commit&lt;/strong&gt; command. You can think of committed snapshots as "safe" versions of a project because Git won't alter them unless you specifically instruct it to. The git add command is used to'stage' or promote changes to the project that will be saved in a commit before the git commit command is executed. The two most frequently used commands are git commit and git add.&lt;/p&gt;

&lt;h2&gt;
  
  
  read also : &lt;a href="https://professional-writer0.blogspot.com/2022/07/an-advanced-guide-to-amend-commits-in.html"&gt;What does git commit Amend do?&lt;/a&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Git commit vs SVN commit
&lt;/h2&gt;

&lt;p&gt;Despite having the same name, git commit differs significantly from svn commit. For Git newcomers with an svn background, this shared term may cause confusion, so it's crucial to highlight the distinction. A centralised application model (svn) and a distributed application model are being compared when comparing git commit and svn commit (Git). A commit in SVN pushes modifications from the local client to a remote, centralised shared repository. Git distributes its repositories, commits Snapshots to the local repository, and does all of this without ever interacting with other Git repositories. Git commits can be pushed to any remote repository at a later time.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;Git can be seen as a timeline management tool at a high level. The fundamental units of a Git project timeline are commits. Commits can be viewed as snapshots or checkpoints along a Git project's timeline. The git commit command creates commits to record the state of a project at that particular moment. The local repository is always updated with Git Snapshots.&lt;/p&gt;

&lt;h2&gt;
  
  
  read also : &lt;a href="https://professional-writer0.blogspot.com/2022/07/how-to-display-git-full-file-blame-in.html"&gt;vs code git blame inline&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;In contrast to SVN, where the working copy is committed to the main repository, this is fundamentally different. Git, on the other hand, waits until you're prepared to interact with the main repository. Each developer's local repository acts as a buffer between the working directory and the project history, much like the staging area does.&lt;/p&gt;

&lt;h2&gt;
  
  
  Snapshots, not differences
&lt;/h2&gt;

&lt;p&gt;SVN and Git differ practically from one another, but their underlying implementations also adhere to wholly different design philosophies. Git uses snapshots as its basis for version control, whereas SVN tracks file differences. For instance, an SVN commit includes a diff to the original file that was added to the repository. On the other hand, every commit in Git includes a complete record of the contents of every file.&lt;/p&gt;

&lt;p&gt;This makes many Git operations much faster than SVN operations because each file's complete revision is immediately available from Git's internal database, rather than having to be "assembled" from its diffs.&lt;br&gt;
Git's snapshot model significantly influences practically every aspect of its version control model, including branching and merging.&lt;/p&gt;
&lt;h2&gt;
  
  
  Common options
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Commit the staged snapshot. This will launch a text editor prompting you for a commit message. After you’ve entered a message, save the file and close the editor to create the actual commit.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit -a
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Commit a snapshot of all changes in the working directory. This only includes modifications to tracked files (those that have been added with git add at some point in their history).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit -m "commit message"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A shortcut command that immediately creates a commit with a passed commit message. By default, git commit will open up the locally configured text editor, and prompt for a commit message to be entered. Passing the -m option will forgo the text editor prompt in-favor of an inline message.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit -am "commit message"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A power user shortcut command that combines the -a and -m options. This combination immediately creates a commit of all the staged changes and takes an inline commit message.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit --amend
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This option adds another level of functionality to the commit command. Passing this option will modify the last commit. Instead of creating a new commit, staged changes will be added to the previous commit. This command will open up the system's configured text editor and prompt to change the previously specified commit message.&lt;/p&gt;

&lt;h2&gt;
  
  
  Examples
&lt;/h2&gt;

&lt;p&gt;Saving changes with a commit&lt;br&gt;
The following example assumes you’ve edited some content in a file called hello.py on the current branch, and are ready to commit it to the project history. First, you need to stage the file with git add, then you can commit the staged snapshot.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add hello.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This command will add hello.py to the Git staging area. We can examine the result of this action by using the git status command.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git status
On branch main
Changes to be committed:
  (use "git reset HEAD &amp;lt;file&amp;gt;..." to unstage)
   new file: hello.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The green output new file: hello.py indicates that hello.py will be saved with the next commit. From the commit is created by executing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git commit
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will open a text editor (customizable via git config) asking for a commit log message, along with a list of what’s being committed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch main
# Changes to be committed:
# (use "git reset HEAD ..." to unstage)
#
#modified: hello.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Git doesn't require commit messages to follow any specific formatting constraints, but the canonical format is to summarize the entire commit on the first line in less than 50 characters, leave a blank line, then a detailed explanation of what’s been changed. For example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Change the message displayed by hello.py

- Update the sayHello() function to output the user's name
- Change the sayGoodbye() function to a friendlier message
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It is a common practice to use the first line of the commit message as a subject line, similar to an email. The rest of the log message is considered the body and used to communicate details of the commit change set. Note that many developers also like to use the present tense in their commit messages. This makes them read more like actions on the repository, which makes many of the history-rewriting operations more intuitive.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to update (amend) a commit
&lt;/h2&gt;

&lt;p&gt;To continue with the hello.py example above. Let's make further updates to hello.py and execute the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git add hello.py
git commit --amend
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will once again, open up the configured text editor. This time, however, it will be pre-filled with the commit message we previously entered. This indicates that we are not creating a new commit, but editing the last.&lt;/p&gt;

&lt;h2&gt;
  
  
  Summary
&lt;/h2&gt;

&lt;p&gt;The git commit command is one of the core primary functions of Git. Prior use of the git add command is required to select the changes that will be staged for the next commit. Then git commit is used to create a snapshot of the staged changes along a timeline of a Git projects history. Learn more about git add usage on the accompanying page. The git status command can be used to explore the state of the staging area and pending commit.&lt;/p&gt;

&lt;p&gt;The commit model of SVN and Git are significantly different but often confused, because of the shared terminology. If you are coming to Git from a personal history of SVN usage, it is good to learn that in Git, commits are cheap and should be used frequently. Whereas SVN commits are an expensive operation that makes a remote request, Git commits are done locally and with a more efficient algorithm.&lt;/p&gt;

</description>
      <category>python</category>
      <category>tutorial</category>
      <category>git</category>
      <category>githunt</category>
    </item>
    <item>
      <title>What programming language is best for cyber security?</title>
      <dc:creator>professional writer</dc:creator>
      <pubDate>Mon, 25 Jul 2022 02:23:39 +0000</pubDate>
      <link>https://dev.to/professionalw0/what-programming-language-is-best-for-cyber-security-51df</link>
      <guid>https://dev.to/professionalw0/what-programming-language-is-best-for-cyber-security-51df</guid>
      <description>&lt;p&gt;There are many programming languages that can be used for cyber security including but not limited to Java, C++, Python, Ruby and PHP. It is important to choose the right language for a given task because different languages have different features that make them better suited for certain types of tasks. For example, Java has been shown to be effective at building modular applications and handling large data sets while C++ is well known for its strength in creating robust software systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  5 &lt;strong&gt;&lt;a href="https://professional-writer0.blogspot.com/2022/07/5-tips-for-working-remotely-as-junior.html"&gt;Top Tips to Become a Better Software Engineer&lt;/a&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Cyber security programming languages come in all shapes and sizes, but they share a few key features. They are all designed to make it easier to write code, and to make the code more secure. They all have features that make it easier to automate tasks, and to check the code for mistakes. They also have features that make it easier to work with data.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;a href="https://professional-writer0.blogspot.com/2022/07/build-your-developer-roadmap-5-steps-to.html"&gt;How to Become a Backend Developer: Important Skills to Learn&lt;/a&gt;
&lt;/h2&gt;

&lt;p&gt;One of the most important features of a cyber security programming language is the ease of use. Programmers need to be able to write code quickly and easily, without having to learn a lot of complicated terminology. They need to be able to write code that is easy to read, and that makes it easy to understand what is going on.&lt;/p&gt;

&lt;p&gt;Cyber security programming languages are typically used for two purposes: to write code that is used to secure computer systems, and to write code that is used to monitor and control computer systems. There are a number of different cyber security programming languages, but the two most commonly used are Java and Python. Java is used more often than Python, but both languages are used for different purposes.&lt;/p&gt;

&lt;p&gt;There is no one “best” cyber security programming language. Different languages are better suited for different purposes. Java is used more often than Python, but both languages are used for different purposes.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>tutorial</category>
      <category>java</category>
      <category>python</category>
    </item>
  </channel>
</rss>
