Exercise Objective
- Build a Blazor Server App
Notes:
Blazor WebAssembly happens client side where as Blazor Server everything happens server side.
The advantage/disadvantage of this is that Blazor WebAssembly can run offline.
However it comes as a minor cost to performance to run applications offline. The more processing required the heavier the impact of running a stand alone web assembly app.
dotnet cli commands
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Tools
First off. What is Monarch.
It’s a premium social sharing plugin for WordPress from Elegant Themes.
Monarch Plugin Documentation | Elegant Themes Documentation

Updating the twitter logo to the new X from Mr Elon Musk.
You first need to upload a new logo to your WordPress website. You can download them here.




Then you need to add this CSS to your website.
Unfortunately it’s not 100% perfect. But it’s better than the solution I received directly from elegant themes.
li.et_social_twitter:hover i.et_social_icon.et_social_icon_twitter, i.et_social_icon.et_social_icon_twitter { color: transparent; background-image: url(/wp-content/uploads/2024/06/twitter-logo-dark.png) !important; background-size: contain; background-repeat: no-repeat; background-position: center; background-size: 35%; } .et_monarch .et_social_twitter, li.et_social_twitter:hover i.et_social_icon.et_social_icon_twitter, .et_monarch .et_social_networks.et_social_circle li.et_social_twitter:hover i, .et_monarch .et_social_networks.et_social_circle .et_social_twitter i{ background-color: #ececec !important; }

The terms “Software Developer” and “Software Engineer” are often used interchangeably in the tech industry, but there are some distinctions between the two roles based on their scope of work, responsibilities, and focus areas. Here are the key differences:
Scope of Work
-
Software Developer:
- Primarily focuses on writing and maintaining code.
- Involved in the development lifecycle, including designing, coding, testing, and debugging software applications.
- Works on specific applications or functions within an application.
-
Software Engineer:
- Takes a broader, more systematic approach to software development.
- Engages in the full software development lifecycle, from initial concept and design to deployment and maintenance.
- Works on entire systems, infrastructure, and software architecture.
- Often involved in integrating software with hardware and ensuring the overall system meets requirements.
Responsibilities
-
Software Developer:
- Write clean, efficient, and maintainable code.
- Collaborate with other developers and team members to develop software solutions.
- Focus on implementing features and functionalities as specified in requirements.
- May handle some aspects of testing and debugging but typically not as comprehensively as engineers.
-
Software Engineer:
- Design software solutions to solve complex problems, considering scalability, security, and performance.
- Develop and maintain software architecture and infrastructure.
- Ensure that software integrates seamlessly with other systems and components.
- Often involved in project planning, requirement analysis, and risk management.
- Conduct extensive testing and validation to ensure the system’s integrity and reliability.
Focus Areas
-
Software Developer:
- Application development and feature implementation.
- Front-end or back-end development, depending on specialization.
- Writing and maintaining codebases.
-
Software Engineer:
- System design and architecture.
- Full-stack development, often with an emphasis on backend and infrastructure.
- Optimizing systems for performance and scalability.
- Applying engineering principles to software development, including problem-solving, project management, and analytical skills.
Education and Skills
-
Software Developer:
- Often has a background in computer science or related fields.
- Strong programming skills in specific languages (e.g., Python, Java, JavaScript).
- Proficiency in using development tools and frameworks.
- Focus on practical coding skills and application development.
-
Software Engineer:
- Typically has a formal education in software engineering, computer science, or related engineering disciplines.
- Broad knowledge of computer science principles, software engineering methodologies, and system design.
- Skills in various programming languages, software architecture, and engineering practices.
- Emphasis on analytical thinking, problem-solving, and systematic approaches to software development.
Summary
While both roles are crucial in the software development process, software developers are primarily focused on coding and application development, whereas software engineers have a broader scope, dealing with system-level design, architecture, and integrating software with hardware and other systems. The distinction can vary depending on the organization and industry, but these are the general differences between the two roles.