<?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: thewiseman</title>
    <description>The latest articles on DEV Community by thewiseman (@abiola_oyedokun).</description>
    <link>https://dev.to/abiola_oyedokun</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%2F1175216%2F67c77990-8823-4eb4-9695-f252a4e64a13.jpg</url>
      <title>DEV Community: thewiseman</title>
      <link>https://dev.to/abiola_oyedokun</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abiola_oyedokun"/>
    <language>en</language>
    <item>
      <title>How to become a software engineer without a degree in 5 steps</title>
      <dc:creator>thewiseman</dc:creator>
      <pubDate>Sun, 08 Oct 2023 15:46:37 +0000</pubDate>
      <link>https://dev.to/abiola_oyedokun/how-to-become-a-software-engineer-without-a-degree-in-5-steps-3alg</link>
      <guid>https://dev.to/abiola_oyedokun/how-to-become-a-software-engineer-without-a-degree-in-5-steps-3alg</guid>
      <description>&lt;p&gt;By Abiola___&lt;br&gt;
October 8th 2023.&lt;br&gt;
A career in software engineering requires continuous learning and development, which can open the door for professionals who are self-taught. Explore alternative pathways for entering the software engineering field.&lt;br&gt;
What does a software engineer do?&lt;br&gt;
A software engineer is responsible for designing, developing, testing, and maintaining software applications and systems.&lt;/p&gt;

&lt;p&gt;This dynamic and ever-evolving discipline combines technical skills like programming with problem-solving abilities to create efficient and reliable solutions for real-world challenges. As technology continues to advance at a rapid pace, software engineering remains a field of lifelong learning.&lt;/p&gt;

&lt;p&gt;How to become a software engineer without a degree.&lt;/p&gt;

&lt;p&gt;Becoming a self-taught software engineer won’t happen overnight. Before you land your first software engineer job, it can take months or years to learn all of the necessary skills, like programming languages, tools, and API design.&lt;/p&gt;

&lt;p&gt;Here are five steps you can take to pursue a career as a software engineer without entering a formal computer science degree program. Keep in mind there are many pathways to consider, this is just one. &lt;/p&gt;

&lt;p&gt;Step 1: Familiarize yourself with a programming language.&lt;/p&gt;

&lt;p&gt;From JavaScript to Python, there are several programming languages to choose from when learning computer science. Common entry-level programming languages  for software engineers include:&lt;/p&gt;

&lt;p&gt;Java: high-level, open-source programming language to create applications that run in browsers and virtual machines.&lt;/p&gt;

&lt;p&gt;JavaScript: text-based scripting language that makes webpages interactive (e.g. animations, audio functionality, carousels, etc.).&lt;/p&gt;

&lt;p&gt;Python: high-level programming language often used by data scientists and business analysts.&lt;/p&gt;

&lt;p&gt;Ultimately, the language you pick should be relevant to your career goals. For example, if you want to be a front-end web developer, you’ll want to make sure that you learn JavaScript fundamentals and backend programming.&lt;/p&gt;

&lt;p&gt;Alternatively, learners interested in game or app development might want to learn Java, a programming language that is used often in enterprise software applications.&lt;/p&gt;

&lt;p&gt;Beginners may want to learn Python to build a solid foundation in programming concepts. Python's simplicity, readability, strong community support, and wide range of applications make it a popular choice for beginners who want to embark on their coding journey without feeling overwhelmed.&lt;/p&gt;

&lt;p&gt;Step 2: Gain an understanding of data structures and algorithms.&lt;br&gt;
Once you’ve mastered one or two programming languages, the next step is to learn about data structures and algorithms. &lt;/p&gt;

&lt;p&gt;Data structures improve the efficiency of storing, fetching, and organizing data. Algorithms, which you can think of as sets of operations and instructions, are applied to data structures to get a desired output. It’s important to learn about algorithms and data structures because you will be expected to use them in the field and tech companies often have questions about them in their coding interviews.&lt;/p&gt;

&lt;p&gt;Step 3: Build a portfolio on GitHub&lt;br&gt;
If you lack professional experience, learn about GitHub and use its features to your advantage with an online portfolio.&lt;/p&gt;

&lt;p&gt;With a platform like GitHub, you can contribute to open-source projects as a way to work with other developers, refine your technical abilities, and showcase your skills. Some tips for keeping your GitHub profile impressive include:&lt;/p&gt;

&lt;p&gt;•Organize your repositories: Use clear names and descriptions. Include a README file in each repository, detailing what the project does, how to run it, and any other relevant information.&lt;/p&gt;

&lt;p&gt;•Clean your code and add documentation: Add comments and documentation to explain your thought process and implementation. This not only helps others understand your work but also demonstrates your ability to write maintainable code.&lt;/p&gt;

&lt;p&gt;•Participate in coding challenges: Solve problems and build projects within a constrained time frame. These experiences can demonstrate your ability to work under pressure and quickly develop functional prototypes.&lt;/p&gt;

&lt;p&gt;•Work on group projects: Showcase your teamwork and communication skills by working with other developers on a project. This could also be a good opportunity to network.&lt;/p&gt;

&lt;p&gt;Step 4: Ace the coding interview&lt;br&gt;
A coding interview allows potential employers and recruiters to evaluate your technical skills and problem-solving ability. One effective way of preparing for a technical interview is to practice solving technical questions using resources like LeetCode , which crowdsources thousands of interview questions. Another pathway could be to learn coding techniques with online short courses or boot camps.&lt;/p&gt;

&lt;p&gt;If you’re interviewing for a role with a specialization, you should also review concepts and frameworks related to that specific technology or stack. &lt;/p&gt;

&lt;p&gt;Lastly, it might help to have a partner to help you learn interview techniques. This will help you practice explaining your thought process when solving problems.&lt;/p&gt;

&lt;p&gt;Step 5: Expand your knowledge&lt;br&gt;
There are many avenues of study available to learn software engineering. From enrolling in a coding boot camp to obtaining a course certificate, only you know which is the best path for you.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>softwareengineering</category>
      <category>beginners</category>
    </item>
    <item>
      <title>A comprehensive Guide to using Adobe Photoshop</title>
      <dc:creator>thewiseman</dc:creator>
      <pubDate>Tue, 03 Oct 2023 18:59:51 +0000</pubDate>
      <link>https://dev.to/abiola_oyedokun/a-comprehensive-guide-to-using-adobe-photoshop-5a6j</link>
      <guid>https://dev.to/abiola_oyedokun/a-comprehensive-guide-to-using-adobe-photoshop-5a6j</guid>
      <description>&lt;p&gt;Adobe Photoshop is a powerful and versatile software product that has become the industry standard for image editing and manipulation. Whether you're a professional graphic designer or a hobbyist photographer, mastering Photoshop can open up a world of creative possibilities. In this article, we will provide a comprehensive guide on how to use Adobe Photoshop effectively&lt;/p&gt;

&lt;p&gt;1.Getting started:&lt;/p&gt;

&lt;p&gt;a. Installation and Setup:&lt;/p&gt;

&lt;p&gt;*Download and install Adobe Photoshop from the official Adobe website.&lt;br&gt;
Follow the installation prompts and enter your license key if required.&lt;br&gt;
b. Interface Overview:&lt;/p&gt;

&lt;p&gt;*Familiarize yourself with the Photoshop workspace, including the toolbar, panels, and menus.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Opening and Creating Documents:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;a. Opening an Existing File:&lt;/p&gt;

&lt;p&gt;*Go to File &amp;gt; Open and select the image you want to work on.&lt;br&gt;
b. Creating a New Document:&lt;/p&gt;

&lt;p&gt;*Go to File &amp;gt; New and specify the document settings (width, height, resolution, etc.).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Basic Tools and Functions:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;a. Selection Tools:&lt;/p&gt;

&lt;p&gt;Learn to use the Marquee, Lasso, and Magic Wand tools for making selections.&lt;br&gt;
b. Layers:&lt;/p&gt;

&lt;p&gt;Understand the concept of layers and how to create, delete, and manipulate them.&lt;br&gt;
c. Editing Tools:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Explore basic editing tools like Crop, Rotate, and Resize.
Image Editing Techniques:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;a. Retouching:&lt;/p&gt;

&lt;p&gt;Use the Healing Brush and Clone Stamp for blemish removal and object cloning.&lt;br&gt;
b. Color Adjustments:&lt;/p&gt;

&lt;p&gt;Master adjustments like Brightness/Contrast, Levels, and Curves.&lt;br&gt;
c. Filters and Effects:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Experiment with filters and effects to enhance your images creatively.
Advanced Features:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;a. Masks and Channels:&lt;/p&gt;

&lt;p&gt;Learn to create and use layer masks and alpha channels for precise editing.&lt;br&gt;
b. Text and Typography:&lt;/p&gt;

&lt;p&gt;Add text to your images and apply text effects.&lt;br&gt;
c. Smart Objects:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Understand the benefits of using Smart Objects for non-destructive editing.
Saving and Exporting:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;a. Save Formats:&lt;/p&gt;

&lt;p&gt;Choose the appropriate file format (e.g., JPEG, PNG, PSD) when saving your work.&lt;br&gt;
b. Exporting:&lt;/p&gt;

&lt;p&gt;Use the Export As option to save images for web and mobile devices.&lt;br&gt;
Keyboard Shortcuts:&lt;/p&gt;

&lt;p&gt;Speed up your workflow by learning essential keyboard shortcuts.&lt;br&gt;
Additional Resources:&lt;/p&gt;

&lt;p&gt;Explore online tutorials, courses, and Adobe's official documentation for in-depth learning.&lt;br&gt;
Troubleshooting:&lt;/p&gt;

&lt;p&gt;*Common issues and how to resolve them.&lt;br&gt;
Practice and Experiment:&lt;/p&gt;

&lt;p&gt;The key to mastering Photoshop is practice. Experiment with different tools and techniques to develop your skills.&lt;br&gt;
Conclusion:&lt;/p&gt;

&lt;p&gt;Adobe Photoshop is a versatile and powerful software product that can greatly enhance your image editing and manipulation capabilities. With the knowledge gained from this comprehensive guide, you can begin your journey to becoming a proficient Photoshop user. Remember, practice makes perfect, so don't hesitate to experiment and explore the software's vast potential.&lt;br&gt;
Thanks….&lt;/p&gt;

</description>
      <category>design</category>
    </item>
    <item>
      <title>Exploring the power of JavaScript: A comprehensive Guide</title>
      <dc:creator>thewiseman</dc:creator>
      <pubDate>Tue, 03 Oct 2023 18:34:19 +0000</pubDate>
      <link>https://dev.to/abiola_oyedokun/exploring-the-power-of-javascript-a-comprehensive-guide-4anc</link>
      <guid>https://dev.to/abiola_oyedokun/exploring-the-power-of-javascript-a-comprehensive-guide-4anc</guid>
      <description>&lt;p&gt;JavaScript, often referred to as the "language of the web," has evolved into a versatile and indispensable tool for web developers. In this article, we'll dive deep into the world of JavaScript, exploring its core concepts, advanced features, and practical applications. Whether you're a novice or an experienced developer, this guide will provide valuable insights into harnessing the full potential of JavaScript.&lt;/p&gt;

&lt;p&gt;Table of Contents:&lt;/p&gt;

&lt;p&gt;JavaScript Fundamentals&lt;/p&gt;

&lt;p&gt;*Understanding Variables and Data Types&lt;br&gt;
Control Structures: Loops and Conditionals&lt;br&gt;
Functions and Scope&lt;br&gt;
Working with Arrays and Objects&lt;br&gt;
DOM Manipulation&lt;/p&gt;

&lt;p&gt;*Accessing and Modifying HTML Elements&lt;br&gt;
Event Handling and Event Delegation&lt;br&gt;
Dynamic Page Updates&lt;br&gt;
Asynchronous JavaScript&lt;/p&gt;

&lt;p&gt;*Introduction to Callbacks, Promises, and Async/Await&lt;br&gt;
Making API Requests with Fetch&lt;br&gt;
Error Handling in Asynchronous Code&lt;br&gt;
ES6 and Beyond&lt;/p&gt;

&lt;p&gt;*Arrow Functions and Template Literals&lt;br&gt;
Destructuring and Spread/Rest Operators&lt;br&gt;
Classes and Modules&lt;br&gt;
Working with Front-End Frameworks&lt;/p&gt;

&lt;p&gt;*Introduction to React, Angular, and Vue.js&lt;br&gt;
Integrating JavaScript into Frameworks&lt;br&gt;
Building Interactive Web Applications&lt;br&gt;
Server-Side JavaScript&lt;/p&gt;

&lt;p&gt;*Node.js and Express.js&lt;br&gt;
Building RESTful APIs&lt;br&gt;
Real-time Applications with WebSockets&lt;br&gt;
Performance Optimization&lt;/p&gt;

&lt;p&gt;*Minification and Bundling&lt;br&gt;
Lazy Loading and Code Splitting&lt;br&gt;
Profiling and Debugging&lt;br&gt;
Security Best Practices&lt;/p&gt;

&lt;p&gt;*Cross-Site Scripting (X&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1Ohqhtbf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j0poupwdivprjvpqd87n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1Ohqhtbf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/j0poupwdivprjvpqd87n.png" alt="Image description" width="800" height="532"&gt;&lt;/a&gt;SS) and Cross-Site Request Forgery (CSRF)&lt;br&gt;
Content Security Policy (CSP)&lt;br&gt;
Secure Authentication and Authorization&lt;br&gt;
Testing and Debugging&lt;/p&gt;

&lt;p&gt;*Unit Testing with Jest&lt;br&gt;
Debugging Tools and Techniques&lt;br&gt;
Code Quality Analysis&lt;br&gt;
Future Trends&lt;/p&gt;

&lt;p&gt;*WebAssembly and JavaScript&lt;br&gt;
Progressive Web Apps (PWAs)&lt;br&gt;
Serverless Architecture and Jamstack&lt;br&gt;
In conclusion,JavaScript continues to be a dominant force in web development, enabling developers to create interactive and responsive web applications. This comprehensive guide serves as a roadmap for mastering JavaScript, from its fundamental concepts to advanced topics. As you embark on your JavaScript journey, remember that continuous learning and practice are key to becoming a proficient developer in this dynamic language.&lt;br&gt;
Thanks &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
    </item>
    <item>
      <title>Future of Artificial intelligence: Advancements and ethical considerations</title>
      <dc:creator>thewiseman</dc:creator>
      <pubDate>Tue, 03 Oct 2023 18:18:52 +0000</pubDate>
      <link>https://dev.to/abiola_oyedokun/future-of-artificial-intelligence-advancements-and-ethical-considerations-5dn0</link>
      <guid>https://dev.to/abiola_oyedokun/future-of-artificial-intelligence-advancements-and-ethical-considerations-5dn0</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--bFeD5wGk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ywrftpyuwqbmzs0c54ts.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--bFeD5wGk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ywrftpyuwqbmzs0c54ts.jpg" alt="Image description" width="800" height="800"&gt;&lt;/a&gt;&lt;br&gt;
Artificial Intelligence (AI) has made significant strides in recent years, revolutionising industries and transforming the way we live and work. This article explores the current advancements in AI and the ethical considerations that come with them, shedding light on the future of this rapidly evolving field.&lt;/p&gt;

&lt;p&gt;Advancements in AI:&lt;/p&gt;

&lt;p&gt;Deep Learning: Deep neural networks have enabled machines to process and understand complex data, leading to breakthroughs in natural language processing, image recognition, and autonomous vehicles.&lt;/p&gt;

&lt;p&gt;Reinforcement Learning: AI systems are now capable of learning through trial and error, allowing them to master tasks like playing complex games and optimising resource allocation.&lt;/p&gt;

&lt;p&gt;Generative Adversarial Networks (GANs): GANs have opened new doors in creating realistic synthetic data, which has applications in art, design, and data augmentation.&lt;/p&gt;

&lt;p&gt;Quantum Computing: Quantum computers are poised to revolutionise AI by solving problems that are currently computationally infeasible, such as simulating complex molecular structures and optimizing supply chains.&lt;/p&gt;

&lt;p&gt;Ethical Considerations:&lt;/p&gt;

&lt;p&gt;Bias and Fairness: As AI systems learn from historical data, they can inherit biases present in the data, leading to unfair outcomes. Ensuring fairness and reducing bias in AI algorithms is a crucial ethical concern.&lt;/p&gt;

&lt;p&gt;Privacy: AI's ability to analyze vast amounts of personal data raises concerns about individual privacy. Striking a balance between innovation and protecting privacy rights is essential.&lt;/p&gt;

&lt;p&gt;Accountability: Determining responsibility when AI systems make errors or biased decisions is a complex challenge. Establishing accountability frameworks is critical.&lt;/p&gt;

&lt;p&gt;Job Displacement: The automation of tasks through AI can lead to job displacement in certain industries. Preparing the workforce for these changes is an ethical and societal imperative.&lt;/p&gt;

&lt;p&gt;Security: The use of AI in cybersecurity can be a double-edged sword. While it can help detect threats, it can also be exploited by malicious actors. Ensuring robust security measures is vital.&lt;/p&gt;

&lt;p&gt;In conclusion,the future of AI is bright, with countless opportunities for innovation and advancement. However, ethical considerations must be at the forefront of these developments to ensure that AI benefits society as a whole. Striking a balance between technological progress and responsible AI deployment will shape the path forward in this transformative field.&lt;br&gt;
Thanks &lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
