HOME PROJECTS/RESOURCES/REFERENCES CONTACT PORTFOLIO

If there is one prayer that you should pray/sing every day and every hour, it is the LORD's prayer (Our FATHER in Heaven prayer)
It is the most powerful prayer. A pure heart, a clean mind, and a clear conscience is necessary for it.
- Samuel Dominic Chukwuemeka

For in GOD we live, and move, and have our being. - Acts 17:28

The Joy of a Teacher is the Success of his Students. - Samuel Dominic Chukwuemeka

Welcome to ASP.NET Web Programming


I greet you this day,

For My Students, please do the following:
First: Click the PROJECTS/RESOURCES/REFERENCES tab
Click the link: O'Reilly Online Learning
Follow the directions and enter with your school email.
Create your own password and sign in.
Access any of the recommended textbooks for the course.
Second: Review the required readings for each module including the Student-Teacher scenarios.
Third: Review the recommended readings for each module.
Fourth: Review the recommended videos and textbooks for each module.
Fifth: Complete the DB (Discussion Board) assignments for each module.
Sixth: Start thinking about your midterm project, your final project, and your final exam.
Seventh: Review the midterm exam and final exam study guides.
Eighth: Should you have any questions, comments, concerns, areas of improvement, and constructive criticisms; please attend the weekly Office Hours/Live Sessions and/or contact me via the school's email system.
Ninth: If you are majoring in any IT (Information Technology) field (especially for women and minorities), you may want to check the Financial Aid section in any of my websites: Scholarships or Scholarships

For My Students and Visitors:
Comments, ideas, areas of improvement, questions, and constructive criticisms are welcome.

For All Those who Seek Peace:
Thank you for visiting.

Samuel Dominic Chukwuemeka (SamDom For Peace) B.Eng., A.A.T, M.Ed., M.S





Discussion Board (DB) Requirements

(1.) Please review the Rules of Netiquette

(2.) Please be creative.
Please paraphrase in your words as applicable.

(3.) No two posts should discuss the same thing.
Each post should be unique.
This implies that you should review any previous posts before you submit your own post.

(4.) The initial post is due on Thursday of the week for which it is required.

(5.) At least one response to the initial post is due on Saturday of the week for which it is required.

(6.) Only one thread per student is allowed.
Please do not create more than one thread.
Please respond to my comments (as applicable) in the same initial thread.
Please make any repost in the same initial thread.
Besides the Introduction DB (where I am required to welcome each student); usually, I make comments to some posts and some responses submitted by Thursday of the week that a DB assignment is due.
If I make any comment to your initial post and/or response (submitted by Thursday); then it is very important you address any concern in my comments.
If you do not understand my comments, please attend the Office Hours/Live Sessions and/or send an email to me and ask for clarification.
I do not go back-and-forth (responding more than one time) to a student in DB forums.
The essence of DB forums is mainly for student communication and collaboration.
The professor only facilitates and makes few comments as necessary.
Typically, if I make any comment to your post and/or response for any DB assignment besides the Introduction DB, it implies that you need to address some issues.
It is important you fix those issues to avoid deduction of points.

(7.) You may not do any of the same examples that I did for either a DB post or DB response.

(8.) You may do any of the questions in the Discuss tab as a substantive post and/or substantive response.

(9.) You may make up your own substantive post and/or substantive response if it is actually substantive.
However, in this case; it is very important you ask me for prior approval.
You may ask me during the Office Hours/Live Sessions and/or via the school's email.

(10.) You may solve the problems in the Assess tab as a DB assessment (post and response).
Questions in the Assess tab count for both DB post and DB response.
Each question in the Assess tab is to be uniquely done by only one student.
This means that it can be done by more than one student.
However, each post must be unique.
Further: For any Textbook Question:
(a.) Please submit a clear screenshot of the Question Number and the Question.
(b.) Any question from the textbook in the Assess tab should be done by only one student.

(11.) Sources/References must be cited accordingly.
You may use: APA (American Psychological Association) style, MLA (Modern Language Association) style, or the Chicago Manual of Style.

(12.) For all questions (post and/or response):
(a.) A web application is required.
This implies that the Uniform Resource Locator (URL) or web address of the web application is required.
My preference is that you use the free website-name.azurewebsites.net website provided by Microsoft or your-first-name.azurewebsites.net or your-last-name.azurewebsites.net or or your-nickname-if-it-is-good.azurewebsites.net
You may use any web hosting company of your choice for your website provided that you use the https version rather than the http version.
Also, you may use ASP.NET Web Forms and/or ASP.NET Web Pages and/or ASP.NET MVC for all web applications done in this course.
For FERPA reasons: I ask that you do not include your first and last names in the domain name (URL) of the web application.
This is because I may use your work as a guide for my subsequent students.
If I do use your work, I shall use only your first name.
I hope you do realize that using your work is helpful for your ePortfolio as well as for my subsequent students.
In that regard, I ask that you keep your website active even when you are done with the course.
Microsoft Azure allows you to have up to ten free websites.

Please post the URL (Uniform Resource Locator) of your website (web address) of your post and/or response.
Paste the URL of your application and set it as a link.
Then, paste the direct link of the URL.
For example: say for DB 1, this can be my post:
DB 1 Post (Introduction to ASP.NET)
(https://aspwebforms.azurewebsites.net/)

(b.) Clear screenshots of the program (code and output)
Please use the Snipping Tool or the Snip & Sketch on your computer to take clear screenshots and trim off excess space/irrelevant information from your program code and output.
Then, use the Insert/Edit Image icon on the Blackboard editor to insert the screenshots of your code and the output.
This is because your colleagues and I should be able to see your code and the output clearly.
Line numbers and all necessary details including the file names are also required.
You may need to increase the font size of your IDE so it is very clear.
You may need to take the screenshots of only the relevant window (the code window).
You may need to take several screenshots.
Also, please ensure you use a clear format for your writings.
Avoid any background colors in the Blackboard Editor.

(13.) Please do not submit an attachment for any DB assignment.
If you do, it will not be clicked. It will not be read. It will not be graded.
Your colleagues and I should be able to see your work directly without opening any attachment.
Any response to such post will not be counted.

Hence the link to the website and the address of the website are required.

(14.) For all DB responses, please mention the first name of your colleague.

(15.) Provide a substantive response to your colleague.
A substantive response is the response that provides constructive criticism, alternative approach that gives the same correct output, additional helpful information that will improve the post, and the correction of any incorrect step and/or output among others.
How would you improve the initial post?
Did you find any errors in the initial post? If you do, please correct the error. Teach your colleague about the error, and explain to him/her how to fix it.
What new knowledge can your colleague acquire from you based on your response?
Can you solve the initial post using an alternative approach that will give the same correct output?
What real-world examples/applications can you provide based on the initial post? Cite your sources accordingly.
Did your colleague learn anything meaningful from you based on your response to the initial post?
Please focus on the initial post. Do not deviate from the concept/topic in the initial post. Do not bring up your own unrelated topic/concept.
Teach/Show your colleague something new and meaningful based on the initial post.
Substantive responses must include the website.
Copy these files of your colleagues: HTML (HyperText MarkUp Language) and CSS (Cascading Style Sheets) files; add your own/make modifications; and publish it.
You may also use your own HTML and CSS files; write your response, and publish it.
In any case, please make a note on your website that it is a response.
Then, copy the URL and paste it as a link and as an address in your response to your colleague.

(16.) Please use at least a size of 14 pt in your writings on the Blackboard Editor, and an acceptable large font size on all your programs (IDE, output console, and web applications among others).

(17.) Please proof-read your writings/websites for mechanical accuracy errors.
Any use of "i" attracts deduction of points.
Multiple mechanical accuracy errors will lead to deduction of points.
I understand that this is not an English class. However, you are expected to write well.

(18.) Please make sure that you write comments in your files: HTML, CSS, and C# files.
Rule of Thumb for Comments (for academic purposes): Anyone (including those with little or no programming knowledge) should be able to read your comments and have a basic idea of your program.
I am not saying you should write comments for every line of code.
I am saying that you should write comments for every code block (section of code).
Do you read my comments? Of course, you should. I provide explanations in my comments.
Does it make sense? Yours should not be different.

Definitions

A Computer Program is a set of instructions given to a computer to perform specific tasks.

A Computer Programmer also known as a coder is a person who writes computer programs.

A Programming Language is the language used to write computer programs to perform specific tasks.
It is written by a computer programmer in a language that the programmer understands (high-level language also known as source code) but not in a language that the computer understands (machine language also known as machine code).
Therefore, it is important to transform the computer program from the source code into machine code so that the computer can understand and run (execute) the program.
To transform (convert) source code into machine code, a compiler or interpreter is required.

A Compiler converts the entire computer program as a whole into machine code.
If it sees any error in the program, it will not compile.
If it does not compile, the program willnot run (execute).
This implies that all errors must be fixed before the program runs.

An Interpreter converts the computer program one statement at a time.
Because it converts it one at a time, the program runs up until the interpreter encounters any error that may prevent the rest of the program from running.

A Scripting Language or a Script or Scripting is a programming language that is interpreted rather than compiled.

Client-side Scripting is the scripting language that runs on the client's web browser (client's tier).
This implies that web browsers are interpreters.

A Web Browser is the program that translates web pages and displays it as a formatted page.
It enables users to access the world wide web (www).
Examples include Microsoft Edge, Google Chrome, and Mozilla Firefox among others.

A Website is a group of web pages usually on the same web server and maintained by a person or group of people.

A Web Page is a page usually written in Hyper Text Markup Language (HTML) that is tranlated by a web browser.

A Web Server or a Server is a computer system that hosts websites.
It stores and disseminates web pages to anyone with an Internet connection.

A Web Host or Web Hosting Service or Web Hosting Service Provider or Web Hosting Company is the company that provides the services for websites to be accessible via the world wide web.
For this course, we shall be using Microsoft Azure as our web host.
But, you are welcome to use any web host of your choice provided your web address contains the secured version of the hypertext transfer protocol (https).

A Uniform Resource Locator (URL) also known as a Web Address is the address of a specific website on the Internet.

A Domain Name is the name that identifies a website.

A Web Link is a link to a website.

A Markup Language is the language that defines the content, structure, and appearance of a web document.
Examples include Hyper Text Markup Language (HTML), eXtensible Hyper Text Markup Language (XHTML), eXtensible Markup Language (XML), and eXtensible Application Markup Language (XAML) among others.
In this course, one of the languages that we shall use is HTML.

Hyper Text Markup Language (HTML) is the markup language used to define the content and structure of a web page.

Cascading Style Sheest (CSS) is the style sheet language used to define the presentation and appearance of a web page.
In this course, one of the languages that we shall use is CSS.

World Wide Web Consortium (W3C) is an International community that develops open standards to ensure the growth of the web.

World Wide Web (WWW) also known as the Web is a system for assessing web pages and documents on the computer connected via the Internet.
It is part of the Internet.

The Internet also known as the Net is defined as the global information system of networks that allows computers to communicate.

A Network is a series of poins or nodes interconnected by communication paths.

JavaScript is basically a client-side interpreted scripting (or programming) language.
It is a major implementation of ECMAScript (European Computer Manufacturers Association Script).
It is based on three foundations: ECMAScript, Document Model Model, and Browser Object Model.

ECMAScript: is the programming language that provides the program structure, syntax, and code conventions for writing JavaScript.

Document Object Model (DOM): is the model that represents the objects that make up the contents and structure of a web document (HTML document).
It allows JavaScript to access and change the HTML elements (objects), the HTML attributes, the properties of the HTML elements, the methods used to access the HTML elements, and the events for the HTML elements in a web page.
It is a W3C (World Wide Consortium) standard object model.

Browser Object Model (BOM): is the model that represents the objects provided by the browser.
It allows JavaScript to access the features and behaviors of the browser.
The BOM is browser-dependent (depends on the browser). There is no standard model for the BOM.

Server-side Scripting is the scripting language that runs on the hosting company's web server (processing tier).

.NET is a platform consisting of tools, programming languages, and libraries for developing several types of applications.

ASP.NET is an open source web framework for developing fast and secure web applications and services within the .NET platform.

ASP.NET Core is the cross-platform ASP.NET framework for developing web apps, mobile apps, and Internet of Things (IoT) apps among others.

Razor is the markup language that enables C# code and VB code to be embedded directly in web pages.

Course Description and Student Learning Outcomes

Module 1: Introduction

Module 2: Razor Syntax in Web Pages

Module 3: Midterm Project (Web Forms or Web Pages)

Module 4: Database and Structured Query Language (SQL)

Modules 5 and 6: Models, Views, and Controllers (MVC)

Module 6:

Module 7: State Management

Module 8:

ASP.NET Final Exam and Final Project

SEO (Search Engine Optimization)

Although this is not required for this course, it is important this concept to you if you intend to be a professional web developer.
As at today: 08/14/2021, please:
Visit the Bing search engine and search for this: hypothesis testing calculator
Did you notice that one of my websites: (https://hypothesis-testing.appspot.com/calculators.html) appeared in the first page?
That implies a good seo (search engine optimization). It implies that the website has been optimized by Bing search engine.
Bing search engine sucessfully indexed it and has ijcreased its visibility to users who search for it by listing it in the first page of the search results.

Notice that the search was: hypothesis testing calculator rather than hypothesis testing calculator appspot
If you search for hypothesis testing calculator appspot and it appears in the first page, it implies that it is successfully indexed by Bing search engine. This is not SEO.
But if you search for hypothesis testing calculator or calculator for hypothesis testing and you find it listed in the first page, this is SEO.

The process of improving a website in order to increase its visibility by search engines when users search for terms related to that website is known as Search Engine Optimation.

Student: Mr. C
I did the same search in Google and did not even find it in the first three pages.
Why?
Teacher: Well, recommend it to Google and promote it on social media sites. 😊
Student: If I search for hypothesis testing calculator appspot, I see the website in the first page.
Teacher: That is not SEO. It just means the website has been indexed by Google.
For a good SEO, it has to appear at most in the first three pages...first page or second page or third page.
Would you like to see my website that has a good SEO with Google?
Student: Sure.
Teacher: Search for geometry transformation calculator
Student: There you go: https://geometry-transformations.appspot.com/
Interesting...
I was thinking at first it may have something to do with your website being a subdomain rather than your own domain name.
But, it appears it is not.
Teacher: It is not, though actual domain names generally have a higher probability of being listed.
However, it is not really. There are several factors that affect SEO.
Let us discuss those factors.
Student: I get some emails from companies that guarantee good SEO listing for a fee.
What are your thoughts?
Teacher: Let us discuss that during the Office Hours/Live Sessions.
But let me say this: (I guess Google should pay me for saying it lol 😊)
One of the Google's services is Google Ads previously known as Google AdWords.
Keep in mind that it is not free.
We can discuss more during the Office Hours/Live Sessions.
Let us discuss the best practices for any website to have a good SEO.
However, please note that these are the best practices.
There are no guarantees that the website will appear in the first three pages (results).
The only guaranty will be to contact the search engines (several companies) and ask them to list it in the first three results.


NOTE: If you used a CMS (Content Management System) to develop your website such as Weebly, Webnode, WordPress, Blogger, Wix, Joomla, Drupal, etc., there is probably a feature that you can use that will submit your website to search engines such as Bing and Google.
Look for that feature.
If the feature is not there, then follow these steps.

For a good search engine optimized website:

(1.) Ensure best practices.
(a.) Review your website using the W3C (World Wide Web Consortium) Markup Validation Service
(https://validator.w3.org/)
Check for warnings and errors using the validator and fix them.
Warnings are not necessarily bad. However, errors should be fixed.

(b.) Check the CSS and fix any issue.
(https://jigsaw.w3.org/css-validator/)

(c.) Check for broken links and fix any issue.
(https://validator.w3.org/checklink)

(2.) Create a sitemap
Sitemap (https://developers.google.com/search/docs/advanced/sitemaps/overview)
A sitemap is a file that contains information about the website including the pages, videos, and images, and the relationships between them.
It also provides valuable information such as when a page was last updated and any alternate language versions of the page.
Search engines like Google and Bing among others, read this file to crawl websites efficiently.
There are several ways to create a sitemap:
(a.) If you are using a CMS, use the sitemap generated by the CMS. Most CMS generate sitemaps.

(b.) If you are not using a CMS (writing your code from scratch), automatically generate a sitemap: (https://www.xml-sitemaps.com/) Once you have created the sitemap, upload it on your website and publish your website. Verify that you have successfully submitted your sitemap by visiting the page: your-website-URL/sitemap.xml as applicable.

(3.) Create a robots.txt file
Robots.txt file (https://developers.google.com/search/docs/advanced/robots/intro)
A robots.txt file tells search engine crawlers which URLs (Uniform Resource Locators) the crawler can access on your site.
It is used mainly to avoid overloading your site with requests.

(4.) Create a Gmail address or use your existing Gmail address.
Register your website on Google Analytics
(https://analytics.google.com)
Some code will be generated.
Copy the code generated and place it in the <head></head> section of your website.
Publish your website after placing the code.

(5.) Submit your website URL and the website sitemap to Google Search Console
(https://search.google.com/search-console/about)
You will receive at least one message from Google in your Gmail.
One of the messages will provide information including links for you to review and improve the search presence of your website.
Review the messages and follow the steps.

(6.) Bing is also a valuable search engine.
Hence, it is important to register your website on Microsoft Bing.
Create a hotmail or an outlook account or use your existing hotmail or outlook account.
Add your website and verify it on Bing Webmaster Tools
(https://www.bing.com/webmasters/help/add-and-verify-site-12184f8b)
Submit your sitemap to Bing Webmaster Tools as well.
Use the Site Scan and other applicable tools as well.

(7.) Promote your website on social media.
When "actual real" users (not bots) visit your website and spend some time on it and recommend it on Google, Facebook, Yelp, YouTube, Instagram, Twitter, and other social media forums; it helps with search engine optimization.

(8.) Backlinks: Let other websites link to your website.
When several valuable websites link to your website, it displays some degree of confidence in the content of your website. Hence, it helps with search engine optimization.

Student Evaluation of Faculty

Dear Students,
Greetings to you.
As you evaluate me and my teaching style on the Blackboard course, I ask that you consider these questions in addition to the survey questions.
Thank you for giving me the opportunity to teach the course.
It was nice working with you.
I wish you the best in your academic profession.
Thank you!

Samuel Dominic Chukwuemeka (SamDom For Peace) B.Eng., A.A.T, M.Ed., M.S
Working together for success

Grading Method: Grading Method
Classroom/Learning Environment: Blackboard course management system.
Course Assessments: Discussion Board (DB) assignments, Midterm Project, Final Project and the Final Exam
Direct forms of communication: live office hours/tutoring sessions, emails, comments to your DB posts and responses and phone calls.
Indirect forms of communication: course announcements, websites (notes, videos, etc).

Course Contents
Please review the Course Description and Student Learning Outcomes
It is the first link in your course.
Those are the basic topics that KSU require that I teach.

(1.) Did I cover those topics: teaching and/or providing resources for those topics?

(2.) Did I cover other necessary topics that is relevant for you to succeed in your profession?

(3.) Did the assessments demonstrate the application of the topics?

(4.) Did the contents and assessments demonstrate important skills such as critical thinking, use of technology, creativity, and organization among others?

Teaching and Learning
(5.) Did you acquire any knowledge from me?

(6.) Did you acquire sufficient knowledge, or more than sufficient knowledge from me?

(7.) Did you acquire any knowledge from any of your colleagues because of how the course was set up?

(8.) Did you acquire sufficient knowledge, or more than sufficient knowledge from any of your colleagues because of the way the course was set up?

(9.) Did I provide multiple ways of completing each assessment?
In other words, were you given several options of completing each assessment?

(10.) Did I provide effective feedback for any of your assessments?

(11.) Did you acquire any knowledge based on that feedback?

(12.) Did the feedback help you improve in any way?

(13.) Did you have enough support to ensure the successful completion of the course?
Were your questions answered?
Did you have enough resources/learning aids?

(14.) Did I provide a safe and conducive environment for learning?

(15.) Was the Grading Method fair?

Pacing Guide
(16.) Were you given enough time to learn the contents?

(17.) Were you given enough time to complete the assessments?
Consider the fact that you were given two due dates for your Midterm Project, Final Project, and Final Exam; and that there was no penalty for late work after the first due date.

Professionalism
(18.) In all our communication (both direct and indirect), did I act professionally?

(19.) In all our communication (both direct and indirect), did I use a respectful tone?

(20.) What do you like or dislike about our communication?

Personality
(21.) Based on your experience with me (taking the course with me and communicating with me among others), how would you describe my person?
Do I give a lot of work?
Do I give a lot of explanations?
Do I have a lot of expectations for my students?
Do I really want you to learn?
Do I really want you to succeed?
Do I ask a lot of questions?
Do I answer questions with questions sometimes?
In those times, please note that it is a teaching technique. It is never meant to disrespect you. I do not disrespect my students. I respect them. It is a technique to guide you to review directions/concepts, and explain what you do not understand.
Would you take another course with me? Why or why not?
Did your views/perception about me affect you in completing this course successfully or unsuccessfully?