Pros and Cons of Textbooks vs. Other Books in the Career Development of Self-Study Software Engineers

Relative Articles:

i. Why Do Beginner Web Developers Need to Work with Textbooks and Not Books?
ii. Pros and Cons of Textbooks vs. Other Books in the Career Development of Self-Study Software Engineers (this)
iii. 10 Best Frontend & Backend Web Development Textbooks Used by University Schools or Appropriate for Self-study

===

===

Introduction

Self-study is a fundamental aspect of a software engineer’s career development. As you embark on this journey, choosing the right learning materials is crucial. Among these materials, books play a pivotal role. However, the choice between textbooks and other types of books can significantly impact your growth as a self-study software engineer. In this blog post, we’ll explore the pros and cons of textbooks vs. other books specifically in the context of career development for self-study software engineers.

Pros of Textbooks:

  1. Structured Learning Path: Textbooks are known for their structured approach to technical subjects. They guide you through a systematic learning path, which can be particularly valuable for self-study. This structure ensures that you build a solid foundation before moving on to more advanced topics.
  2. Comprehensive Coverage: Textbooks often provide in-depth and comprehensive coverage of technical subjects. They delve into the intricacies of programming languages, algorithms, and software development methodologies, giving you a solid understanding of the fundamentals.
  3. Accuracy and Reliability: Textbooks are rigorously reviewed and edited by experts in the field, ensuring the accuracy and reliability of the content. In a rapidly evolving industry like software engineering, having trustworthy resources is essential.
  4. Exercises and Practice Problems: Many textbooks include exercises and practice problems, allowing you to apply what you’ve learned. These hands-on activities are crucial for honing your coding skills and problem-solving abilities.
  5. Supplementary Resources: Some textbooks come with supplementary resources, such as online platforms with additional materials like code samples, quizzes, and video tutorials. These resources can enhance your learning experience.

Cons of Textbooks:

  1. Cost: Textbooks can be expensive, and the cost can add up, especially if you need to purchase multiple books for different topics. This cost factor can be a significant consideration for self-study learners on a budget.
  2. Updates and Revisions: In the fast-paced world of software engineering, information can become outdated quickly. Textbooks may require frequent updates or may not cover the latest technologies and trends.

Pros of Other Books:

  1. Varied Perspectives: Non-textbook books, such as software development memoirs or biographies, offer varied perspectives and insights into the software engineering industry. They can inspire you and provide valuable career guidance.
  2. Creative Problem Solving: Fiction and creative non-fiction books stimulate creativity and problem-solving skills, which can be valuable in software engineering. They encourage you to think outside the box and approach problems from different angles.
  3. Soft Skills Development: Other books, like self-help and leadership books, can help you develop crucial soft skills such as communication, teamwork, and time management, which are essential for career growth.

Cons of Other Books:

  1. Lack of Technical Depth: Non-textbook books may lack the technical depth required for in-depth mastery of programming languages and software development concepts. They are often more suited for personal development rather than technical learning.
  2. Limited Structure: Unlike textbooks, other books may not provide a structured learning path, making it challenging to progress systematically through a subject.

Conclusion

For self-study software engineers, the choice between textbooks and other books depends on your career goals and learning style. Textbooks are excellent for acquiring a deep technical understanding of programming languages and software development concepts, offering a structured and reliable path to knowledge. However, they can be costly and may require updates.

On the other hand, other books provide a broader perspective, stimulate creativity, and develop soft skills. They can be valuable for personal and professional development but may lack the technical depth required for certain career objectives.

Ultimately, a balanced approach that combines both types of books may be the most effective strategy. Use textbooks for technical depth and structured learning, and complement your reading with other books to enhance your creativity, gain insights, and develop soft skills. The key is to tailor your reading choices to align with your career development goals as a self-study software engineer.

Setup Laravel 10.x Homestead in Windows 10/11

Section – 1 [Install Software]

https://laravel.com/docs/10.x/homestead#installation-and-setup

vagrant_2.3.7_windows_amd64.msi – https://developer.hashicorp.com/vagrant/downloads

VirtualBox-6.1.46-158378-Win.exe – https://www.virtualbox.org/wiki/Download_Old_Builds_6_1

VirtualBox 6.1.46 (released July 18 2023) << This and Not the >> VirtualBox 7.0.10 platform packages – ​Windows hosts

According to: https://laravel.com/docs/10.x/homestead#installation-and-setup

Code Editor/IDE: PhpStorm-2023.1.4.exe or VSCodeSetup-x64-1.80.1.exe

Lastly install: Git-2.41.0.3-64-bit.exe – https://git-scm.com/downloads

Section – 2 [ENABLE VT-x in Hardware/BIOS/UEFI if disabled]

http://leonidassavvides.com/blog/2023/07/23/enable-vt-x-in-hp-z640-workstation/

Section – 3 [Installing Homestead]

https://laravel.com/docs/10.x/homestead#installing-homestead

Go To CLI Terminal in IDE/Editor or Windows Terminal or Git Bash Terminal and execute:

git clone https://github.com/laravel/homestead.git D:\htdocs_xampp\Homestead

where D:\htdocs_xampp\Homestead the Homestead directory, after entering this directory:

d:
cd d:\htdocs_xampp\Homestead

Next, execute the bash init.bat command from the Homestead directory to create the Homestead.yaml configuration file. The Homestead.yaml file is where you will configure all of the settings for your Homestead installation. This file will be placed in the Homestead directory: if there is a problem with the

init.bat 

use

./init.bat

Section – 4 [Configuring Homestead]

Follow the instructions at:

https://laravel.com/docs/10.x/homestead#configuring-homestead

For configuring the file: Homestead.yaml

Section – 5 [Launching The Vagrant Box]

After all, the steps above, it is time to:

Launching The Vagrant Box

You must have in mind the 4 most used CLI commands FROM CLI/Terminal at d:\htdocs_xampp\Homestead\:

vagrant up # if error on this - please Section 6 below
vagrant status
vagrant suspend
vagrant ssh

Section – 6 [Configuring SSH Keys]

In case the first attempt of running:

vagrant up

you getting

Please give the command to generate ssh keys in Windows:

ssh-keygen -t rsa -C "username@email.com"

This will create the:

C:\Users\lwdls\.ssh\id_rsa.pub
C:\Users\lwdls\.ssh\id_rsa

Then you have to go to Homestead.yaml and edit the SSH Keys with the correct Keys you have just created:

authorize: C:\Users\lwdls.ssh\id_rsa.pub
keys:
     - C:\Users\lwdls.ssh\id_rsa

Then you return to Section – 5 and give the command: vagrant up

The first time you have to await some time to download the Vagrant VM – Ubuntu Server from the repositories…

After the VM OK is launched go to: http://homestead.test/phpinfo.php to see the webpage of phpinfo():

phpinfo.php

<?php
phpinfo();
?>

if any problem put the phpinfo.php

in

public/phpinfo.php

to stop the VM – shutdown the PC – give

vagrant suspend

To add additional sites:

Adding Additional Sites

https://laravel.com/docs/10.x/homestead#adding-additional-sites

To create a Laravel Site – start with download Laravel files with the:

https://laravel.com/docs/10.x/installation#your-first-laravel-project

At Terminal d:\htdocs_xampp\

composer create-project laravel/laravel example-laravel-app

Composer can be installed from:

https://getcomposer.org/download/

Also, the composer comes preinstalled in Homestead/Vagrant/VM

And, a second way is:

After:

vagrant up 

Give:

vagrant ssh

and from Terminal at /home/vagrant/ give the command:

 composer create-project laravel/laravel example-laravel-app

Any way you choose, be sure to edit the Homestead.yaml and every new website added to run:

vagrant reload --provision

And lastly

To run a new URL locally modify the host file at:

On macOS and Linux, this file is located at /etc/hosts. On Windows, it is located at C:\Windows\System32\drivers\etc\hosts:

192.168.56.56 homestead.test
192.168.56.56 another1.test
192.168.56.56 another2.test

Again, according to

Homestead.yaml

After, download the Laravel 10.x bootstrap code base, view the Laravel homepage accordingly by going to http://another1.test.

Happy Laravel Web Development & Coding…!

Enable VT-x in hp Z640 Workstation

Symptom – when going to vagrant up – to start a VM for the first time in this OS/PC

The msinfo32 shows: VT-x is disabled

Follow the Steps for the result: VT-x enabled

===

STEP BY STEP – Follows

0 – reboot the PC

Go – Security[3] and after System Security[4]

VT-x is disabled[all three], We will enable all

After confirming it

Go: Main[7] + Save & Exit

now msinfo32 will show:

All Done!