Careers in Computer Science

Careers in Computer Science are quite rewarding and can be quite lucrative. Please explore your options and obtain a good foundation. A past article I wrote on Choosing a Career might be of interest to you. Find a career where you are enthused to come to work each day. Time passes quickly, so explore careers and try out different opportunities. Apply for internships, there are several opportunities through the high school. If you find one you might enjoy, then start searching out good colleges that have the reputation to help further your career. One such opportunity was posted on the Front Range Community College Website. There are other opportunities available. Search for them. This article was posted for students earning a Bachelors degree and wanting further education. It is just one example of what is available locally.

Bridge Program – Colorado School of Mines

 Posted Mar 30, 2021 8:27 AM

It’s never been a better time to take your bachelor’s degree and pursue a graduate degree at Colorado School of Mines in computer science! CS@Mines M.S. graduates have outstanding career opportunities, with an average starting salary of $98,730.

 CS@Mines has launched a new Bridge program designed for students without a CS undergraduate degree to prepare for and complete a CS M.S. in just four semesters of full-time enrollment. Limited scholarships are also available. Women and students from underrepresented groups are especially encouraged to apply.

 Attend our upcoming virtual information session to learn more about CS@Mines Bridge, or visit our website for more details: https://cs.mines.edu/csbridge/

 Tuesday, April 6, 4-5PM Mountain Time

Register Here

Zoom access details will be emailed to registrants prior to the event.

Tracy Camp, Ph.D.
ACM Fellow; IEEE Fellow 
Department Head and Professor of Computer Science 
Colorado School of Mines
303/384-2184
email: tcamp@mines.edu
Homepage: http://www.mines.edu/~tcamp/
CS Department: http://cs.mines.edu

Posted in Uncategorized | Leave a comment

Keep It Stupid Simple

I teach Computer Science at the college level for high school students. Teaching can be a challenge, but it is very rewarding. What got me to thinking about “Keeping It Simple” was helping students with C++ and Java homework. I recently assigned a challenging problem in each class. Both languages use dividing code into subsections called classes to allow related code to be put together into single modules. Those modules are then put together to create a program that a user can run. What I have found in each class is that too often students try to over-think the problem. They sometimes produce a good but very complex solution. Complex solutions are hard to maintain both for the original programmer and anyone else who takes over the code. The most elegant code is the opposite, it is as simple and as straight forward as possible. One common phrase used where I have worked is “Keep it Simple, Stupid!” I prefer to rearrange that to “Keep it Stupid Simple!” In companies, it is important to ship a good, usable product as quickly as possible. Look at what the product (or for students, assignment) is supposed to do and then do that well. “Bells and Whistles” can be added later, but do the best simple design first. Customers really appreciate products that can solve their needs and have that quickly. Keeping it simple does not mean compromising your standards and rushing the product, but making the best product possible.

An example that shows both the advantages of keeping it simple and rushing the product to market is illustrated by the competition between McDonald-Douglas, with its DC-10 and Lockheed with its L-1011. In the 1970s, they competed in the market for planes larger than Boeing 707s and DC-8s and smaller than Boeing 747s. MD focused on keeping the design simple and safe enough. Lockheed was producing military aircraft and so was more concerned with making the best possible design as safe as possible. MD was able to come out with their plane first and even airlines, like Delta who wanted to buy L-1011s, bought DC-10s as a stopgap. Overall, they both had good safety records and the first one to market received the lions share of orders.

The C++ students have already taken one semester of programming the language and so have the basics mastered. The purpose of their exercise was to work in a group using GitHub as the repository for their code. They were assigned to work in groups of two to three and divide up the code accordingly. The actual assignment was to build a generic Account class with most of the storage of information and routines to do the main functions of an account. They then were assigned to create a checking account, savings account, CD account, and mortgage account. In Java and C++, an Account class can have what are called subclasses which can use the variables and functions from the Account class and only add or modify what is needed to make the Account class perform the functionality for each of these specific account types. Keeping it simple means knowing who is doing what and tracking each person’s progress as well as writing simple code that does the job well. Some examples of added complexity to a problem are:

  1. Not following through on what was promised and causing one person to do the majority of the work.
  2. Reprogramming the code from the Account class in each of the subclasses.
  3. Using complex algorithms when more direct methods could be used.

In the Java class are all students with very little to no programming experience. The students have been doing well with the assignments so far, so I decided to give them a more challenging assignment. They were to create a Mancala board. I presented an example of the code to the class and some followed it exactly. But there were some interesting variants. One was quite good where the user decided on a different format for presenting the board and that solution presented the information for the board well. There were others, though, that tried to make the problem more complex than it really is. I showed the students several one-dimensional arrays to solve the problem. Since the students are new, a few struggle to implement a solution and made the code more complex than was needed. One created a giant two-dimensional array to try to handle everything. After working with this person, s/he was able to reduce about 15-lines of code down to about three lines, which was much easier to understand and did the needed job.

Remember to “Keep it Stupid Simple” when doing something important. This is actually an old philosophy for many things beside programming. It was first attributed to a Franciscan monk, William of Ockham. Occam Razor states that the simplest explanation is usually the correct answer. “Keep it Stupid Simple” and you will do well.

Posted in C++, C++, Computers, GitHub, Java, Occam Razor, Programming, Simple | Leave a comment

Students, Strive to Be an Individual

I am into my fifth decade of teaching in various forms. The one constant in all of that time is that each student is an individual with unique needs and learning styles. It is impossible to meet all the needs of all the students all of the time, but it is possible to make slight adjustments to teaching style to accommodate the needs of each student. Each student has their own special needs and talents. Those who may seem slow in one area will have other areas in which they excel. The key to teaching, for me, is to find out what it takes to have each student get to that “aha” moment where specific concepts make sense. If I can do that with individual students, I feel I have achieved one of my main goals in each of my classes. Finding each student’s motivation is sometimes difficult. Helping a person to succeed starts with helping a person to want to succeed.

I have recently rediscovered Ralph Waldo Emerson quotes when I was thinking about writing this article. I am using two of them in this article as they match my thoughts.

Be Yourself and Achieve What is Important in Your Life!

There is an old saying. “Be yourself, everyone else is taken.” We each are born with talents, that may take some effort to discover, but they are there. Some talents are easier to spot than others. I am sure we each know some great athletes or musicians who shine early in life. However, unless those talents are developed, others can become better through hard work and lots of practice. In baseball and basketball, it is often said that the best coaches are the ones who worked hard honing their skills, without all of the natural gifts of others. They know what it takes to be great, where a person who has many natural gifts that hey do use may not know how to explain how to become excellent. We each need to decide what we love and see what it would take to achieve our goals. We may not succeed in reaching the level of success we would like, but we know we tried and are grateful for the opportunities. The effort may lead to finding something that we like even more. We must not compare ourselves to other people, but must put our effort into improving ourselves. John Wooden went with the philosophy that we must “Make Each Day Our Masterpiece.” He probably is the coach with the best winning percentage of any basketball coach. He taught his players to each strive to do their best. He did not design any offence or defense around an opponent, instead he got each person to go out and do his (her) best. If we each do this, we may surprise ourselves on the success we could have.

After improving ourselves, we need to go out and make the most difference we can. Rejoice in doing “good.” The RWE quote I choice for this is:

Happiness is often achieved through personal effort. It is not something we can expect someone else to give to us. It is important to surround ourselves with good people, but true happiness comes from our own efforts to do well in all that we do. Sometimes doing what is right is not always popular, but it is what brings internal happiness. Go out and make a difference.

Each person is an individual with individual talents and needs. We each need to develop our talents wisely and find ways to share those talents with others. As we serve each other, we will be presented with opportunities for great success and happiness. We must never sell ourselves short or compromise our standards. Sometimes growth is hard, but it is well worth it. Live well and prosper!

Posted in Attitude, Becoming, Do, Goals, Self-Worth, Uncategorized | 1 Comment

STEM/Computer Science Board Meeting 16 December 2020

This information is probably not as thorough as I would like. It is based off of notes I wrote on the back of a business card since I did not have any other writing material available. So, I hope I captured the major points. The purpose of the meeting was to hear from members of our community who work with technology and want the best education for our high school and middle school students.

Steve gave an overview of his Computer Fundamentals class, which he is developing and taught for the first time this semester. The course is designed to cover what computers are, what they do, how they are physically built and maintained, and what goes into making them useful. The last part includes descriptions of peripherals, operating systems, systems software, application software, and computer language. A short introduction to Python occurs during the last two weeks of the course. Many of his students would like a little longer section on computer programming. Steve then explained the two follow-on course sequences that the students could take. His sections include how to build and maintain computers, networks of computers, and security issues. My follow-up courses include an introduction to Microsoft Office and two two-semester sequences on computer programming. The two sequences are for Java and C++. The reaction of the board on the last two was interesting. They think that Python and Java are taught as introductory languages more, but C++ is more tightly coupled to the hardware and produces much faster executables. As a side note, CSU expects students to know Java, while CU and the School of Mines expect students to know C++. If we teach both, it gives students a chose that could be helpful depending on which school they would like to attend.

One phrase that was given that intrigues me is that “All Data Has Bias!” From what I could gather by some follow-up questions and remarks is that data is usually presented in some organized form. The organizer has internal biases and even though most try to be fair those biases do come through in the presentation of the data. The alternative is to do what data analytics had to do in the past and go through all the data (like the programmers of the Saturn V rocket computers analyzing the output of a data dump from a Saturn V flight. Eve a straight data dump has the prejudice of the person who gathered the data.

Some of the areas that they would like to make sure we cover in technical classes are:

  1. Independent Research
  2. Machine Learning
  3. Ethics and Artificial Intelligence
  4. Introduction to Data Science
  5. Weapons of Math Destruction
  6. GitHub
  7. Project Organization (like Scrum/Agile)
  8. Functional Programming as well as Object Oriented Programming (OOP)
  9. Desire to Learn and Innovate
  10. Tools like Slack, IDEs, – I would like to talk with them more on this subject.

One last thing I heard was someone mention the importance of students having a mentor to help guide them and answer questions in such a way that helps them to develop solutions on their own.

Additional Information

Here are some comments made on the meeting that might be helpful.

Diego Krapf

I received some very useful links from an undergraduate student that is working on a machine learning project. She said these were some of the best resources she used to learn about machine learning concepts. I was browsing through them and found that some are really useful and very enjoyable to watch.

  1. https://ai.google/education/ – Google Tutorials and guides
  2. https://www.coursera.org/learn/machine-learning – Stanford Machine Learning Course
  3. https://www.udacity.com/course/intro-to-machine-learning–ud120 – Udacity Machine Learning Course
  4. https://machinelearningmastery.com – Website with tutorials on machine learning projects
  5. https://youtu.be/GvYYFloV0aA – AI Crash Course
  6. “Hands-on Machine Learning with Scikit-Learn, Keras, & TensorFlow” by Aurélien Géron

Stephen Hurst

Computer Science Foundations and Office 365/2019 are probably the best way to introduce students to the field and it is why I’m leery about them, as they will soon begin to attract a lot of students, overwhelming us! I’m at 3 sections next semester and won’t be able to do that in the Fall.

I’m also concerned about our only being able to offer every-other-day certification classes. The students would learn so much more and be even more ready for the tests I could teach them every day and provide much more consistency. Note: I am also concerned about classes that are less than five days per week (or at least four) in programming. There is too much that students forget from class to class if we do not meet on a daily basis.

Data science intrigues me, and I will spend more time on it this upcoming semester as well as machine learning and a more formal approach to programming in Python. Website creation will decrease, as the students are able to achieve good website results with the free software already available to them. Unfortunately, if they want more in-depth WWW development, they’ll need to get it at college. I don’t think we have the staff or resources to add a 3rd Computer Science track.

It is important that students maintain interest in the sequence of courses. The hardware, networking, and security sequence requires the students to build on the previous course and maintain interest in the topics being covered. If students lose interest, it becomes difficult to justify teaching the more advanced courses. Note: The software language courses are only a two semester sequence and for the last few offerings have had good retention between the two classes.

Posted in Agile Methodology, C++, C++, Computers, GitHub, Java, Mentor, SCRUM, Software | Tagged , , , , , , , , | Leave a comment

Final Project Guidelines for Computer Programming Classes

Each of my Computer Science classes require a final project of complexity commensurate with what is learned in the class. The computer language used is the language studied during the semester. Currently, that is either Java or C++. This document is divided into the following areas. Deciding on a project and selecting team members should be performed simultaneously.

  1. Decide on Team Members
  2. Select a Project
  3. Create and/or Open a GitHub Account
  4. Create an Initial Design and Assign Sections
  5. Create Schedule
  6. Present Design and Schedule
  7. Create Stubs for All Modules in Project
  8. Daily Scrums
  9. Final Submittal of Code and Presentation

Decide on Team Members

With whom would you like to work? Choose one to two other members of your team wisely. Each person should contribute to the project. Decide on your team at the same time your are selecting your project (step 2). Send either a chat message on Teams or an e-mail to wayne.cook@coloradoearlycolleges.org.

Select a Project

What project would your team like to develop. Choose wisely. It should be related to what you have developed so far. Examples are Mancala in CSC160 C++ and Connect Four in CSC161 Java using JavaFX. Make it complex enough to make it interesting, but not so complex that it cannot be done within the time left in the semester.

Create and/or Open a GitHub Account

Repositories are vital to creating a large project. It allows code to be saved in an easily accessible location that saves the code as it is revised and allows the user to access any revision that might be needed for any purpose. The preferred Revision Control System is GitHub. Please go to this location and either login or create an account and then login. Be sure your name is unique and easy to remember. GitHub is connected to all Development Environments like Visual Studio for C++ and IntelliJ Idea for Java. GitHub uses Git on your local system as the interface. Be sure to download Git to your system.

Integrate GitHub with Microsoft Visual Studio 2019

Here is how to integrate GitHub into Microsoft Visual Studio.

Create an Initial Design and Assign Sections

There are several formats for design. The main attribute is that it has enough information to be helpful. One method I would recommend is Object Oriented Design Using UML (Universal Modeling Language). An example is Rubber Ducky Corporation. Know what you want to do and then start deciding what that is. If you are using Classes, use UML Diagrams to describe their interfaces. An example of a UML follows. It has a Person Class with two classes that inherit from the person class, a Customer Class and a Personnel Class. Just for your information, the symbols are as follows:

  • # – Protected item, accessible by Class and all Subclasses.
  • – Private item, accessible within the Class only
  • + – Public item, accessible by everyone
UML Diagrams Example for Person, Customer, and Personnel
UML Diagram for Class Person and Subclasses Customer and Personnel

The above diagram was created from Microsoft Word. There are several tools that are available that are better than Word. A list of twenty-eight is at BEST 28 UML Tools in 2020. A single one which one of my students recommended is app.diagrams.net. This last one looks interesting. It allows saving the files to one of your online repositories like Google Drive or Microsoft One Drive. This makes life easier but it also requires you to log into your storage device through their interface. When you have added the Git/GitHub integration, you can start creating the needed classes. The first example is for C++ and Visual Studio.

Create Schedule

On the bottom of the Rubber Ducky Corporation page is a list of tasks to be done from most to least important. Go ahead and fill it out and decide how long it would take to do each task. Build a schedule based on your analysis.

Present Design and Schedule

Put together your design and put into slide form. On 30 November 2020, please make your presentations.

Create Stubs for All Modules in Project

Set up your GitHub account within your team. Decide which modules you will be writing in each daily scrum. Decide on the order in which your team will write these modules. The modules that are scheduled last, write interfaces that accept expected arguments and return something appropriate. The logic does not need to be written yet. But a stub needs to be written so that the modules that are being written can call the unwritten module and get something reasonable in return. The best way to show how this is completed is by example.

C++

To use a class method, both the header including the needed Prototype and the file containing the code must be written. Here is the header file:

#pragma once
/* BoardSample.h
 * Wayne Cook
 * 17 November 2020
 * Purpose:
 *		Create a sample class to show how to create a stub in developing one method to use
 *		in your code development.
 */

#ifndef __BOARDSAMPLE__
#define __BOARDSAMPLE__
#include <random>
using namespace std;

// Set up the class in which the method will reside.
class BoardSample
{
public:
	BoardSample();
	~BoardSample();
	/* playerMove(int &)
         * Input - pointer to the player variable which indicates whose turn it is
         * Output - returns in the player variable whose turn is next
         *		1 - player 1
         *		2 - player 2
         *		0 - side empty
         */
	void playerMove(int&);
private:

};

#endif

then the code must be written. In this case I use a random number generator to create the player value of 0, 1, or 2:

/* BoardSample.cpp
 * Wayne Cook
 * 17 November 2020
 * Purpose:
 *		Create a sample class to show how to create a stub in developing one method to use
 *		in your code development.
 */

#include "BoardSample.h"

// Default constructor and destructor
BoardSample::BoardSample()
{
}

BoardSample::~BoardSample()
{
}

 /* playerMove(int &player)
  * Input - pointer to the player variable which indicates whose turn it is
  * Output - returns in the player variable whose turn is next
  *		1 - player 1
  *		2 - player 2
  *		0 - side empty
  */
void BoardSample::playerMove(int &player) {
	/* Set player equal to 0, 1, or 2 for simulating the results of a completed method
	 * after code completion. A random number divided by 3 gives the desired results.
	 */
	player = rand() % 3;
}

Java

Java is a bit simpler. It only takes one code file.

/* BoardSample.cpp
 * Wayne Cook
 * 17 November 2020
 * Purpose:
 *	Create a sample class to show how to create a stub in developing one method to 
 *	use
 in your code development.
 */

import java.util.Random;

public class BoardSample {

    Random random = new Random();

    /* playerMove(int player)
     * Input - pointer to the player variable which indicates whose turn it is
     * Output - returns in the player variable whose turn is next
     *		1 - player 1
     *		2 - player 2
     *		0 - side empty
     */
    int playerMove(int player) {
        int retVal = 0;
        /* Set player equal to 0, 1, or 2 for simulating the results of a completed 
         * method
 after code completion. A random number divided by 3 gives the
         * desired results.
         */
        retVal = random.nextInt(3);
    }
}

Daily Scrums

Scrums are usually done for two weeks sessions. They are based on the Agile Manifesto. In normal development cycles, a Scrum last two weeks. The name is based on how Rugby is played. Read the Scrum Manifesto to have a better idea of how to run your daily scrums. Each day submit a description of each task you have completed and what is scheduled to be done the following 24 hours.

Final Submittal of Code and Presentation

Be prepared for presentations on the 14th and 15th of December. Have your software ready to be submitted and demonstrated.

Posted in C++, Final Project, GitHub, Java, UML | Leave a comment

How Old is Boolean Logic?

Boolean logic was being used long before there were computers. We can go a little way back to when light bulbs were invented. There were no dimmer switches, so the light was either on or off.

George Boole (1815–1864) invented the mathematics for Boolean logic, but the actual concepts of Boolean logic are a part of civilization. I will give two examples of earlier logic, most theories have two inputs and one output (there can be more inputs but there should be only one output).

The first example is a farmer determining if the farm plans to sew a particular field, does the field need to be plowed?. The two inputs are: have I not started plowing the filed and have I finished plowing the field. If the answer to both questions are true, then the field is done and the farmer can go and sew the field or do something else. If the answer to either is false, then the field needs to be plowed.

Going back to hunter/gatherers, the same logic could be used to determine if someone needs to go hunting. The two inputs are that any member of the family is hungry and there is no food in storage. If the answer to both are true, then a hunt is needed. Otherwise other things, like weather, could be taken into account to determine if a hunt is advisable at this time.

We use Boolean logic in our daily lives, even if we do not realize it.

Posted in Boolean Algebra, Computers, Thinking | Tagged , , , , , , , | Leave a comment

Are There at Least Two Sides to Every Issue?

There is quite a bit of discussion on whether both sides of an issue should be presented, or should the people who control the discussion platform have the responsibility to publish only one side? This has been an argument going back as far as human history has been recorded. I am sure some people can recite Biblical or other early religious texts on the conflicts of two different sides. In the beginning, I will give examples in science and computer science.

One of the earliest discussions was on whether the earth was flat or round. The general belief was that the earth was flat, but some early Greeks, like Pythagoras, proposed that the earth was round. The majority of people said at that time that saying the world was round was nonsense. The earliest person to measure the circumference of the world was Eratosthenes of Cyrene, a Greek polymath, poet, astronomer, mathematician, librarian, and geographer. His measurement was very accurate. See “Who Was The First Person To Accurately Measure The Circumference Of The Earth?” for an excellent description of how Eratosthenes was able to calculate the circumference. Even after the circumference was calculated, the “experts” and “authorities” still insisted that the earth was flat. Anyone who disagreed was excommunicated or burned at the stake. a very effective way of eliminating any views that the people with authority did not like.

At the start of the 20th century there was quite an upheaval in physics. In 1900 most physicists believed that Newtonian Mechanics/Physics was the ultimate answer to answering all questions about motion. They likewise believed that the universe was filled with a substance called ether. that was needed for the transmission of light Since the people who believed in these theories were in charge of the Physics Journals of the time, they thought that any article that went against these theories should not be published. Think where we would be now if we did not know that the universe was a vast vacuum and without the Theory of Relativity by Albert Einstein being published. Albert Einstein eventually modified his theory and there have been additional discoveries confirming and modifying aspects of the theory over time. There may eventually be an entirely new theory created that allows for “Warp speed” space ships. Currently Einstein’s Theories are the basis of all new developments. If we disallow alternate proposals or theories from even being considered, would that help or hinder the advancement of Physics (which will also affect the welfare of mankind)?

All fields, to progress, have to have competing ideas. Any field that does not have competing ideas will eventually die out. I have been working with Computer Science since I was in high school and seen many major changes. Computer languages have progressed from binary through assembler and then Formula Translation (FORTRAN) to Structured and Object Oriented Languages. Their progressive development has led to significant developments that have helped computers help mankind in many ways. A short history of Software Languages is available on this site. The biggest controversy I remember is deciding what is the best way to develop code. The biggest conflict was between Structured Design and Agile Programming. There were cultures built around each approach, but at least the Computer Journals were open to presenting all ideas. I believe the best solutions are created through discussions and the adaptation of the best ideas. One compromise, which leans more to the Agile side, is the Scrum Methodology.

Does anyone remember speech and debate classes in high school and college? The one thing I remember being assigned is to research both sides of any controversy, from abortion through nuclear power. Researching both sides helped me understand the pluses and minuses on each side. Understanding both sides helps me make a clearer choice on each subject. That choice usually resides at some point between the two extremes. This really helps me understand where and why friends have their positions. It does not mean I will always agree with my friends but it helps us have civil conversations and gives me a good opportunity to understand different points of view.

For the longest time journalism always presented both/multiple sides of any issue. Universities were based on the Socrates method of discussion and that method carried over to journalism. There are now articles about the evils of Bothsidesism and how if you present both sides of a discussion, it will never lead to anything good. The article is written in such a way as to make one side look virtuous and the other side being represented as to make it look ridiculous. Unbiased facts are not needed and not really wanted. Look at some recent events. J. K. Rolling made the observation that Women have Periods, but that was against the current concept that gender is fluid. Therefore it must be stopped. What about what recently happened at the New York Times. The New York Times used to make sure that both sides were covered in the editorial page. Controversial editorials were published with editorial comments, especially if the editor disagreed with the premise. As long as editorials were on the editorial page and not the news page, that was fine. The most recent article is Senator Tom Cotton: Send In the Troops. The editor disagreed with the content of the editorial, but decided to publish the article so that people would better understand what the other side thought. As a result, the New York Times senior editor resigns amid backlash over controversial op-ed. Leadership does change, it can be nice to make sure that all opinions published match our own thoughts, that they reinforce our own beliefs. What happens if the leadership changes and a different philosophy now rules a particular organization. Will we like shutting down opposing thought as much if the supported thought no longer matches what we “know is true?”

The latest battleground is the internet. No one should be allowed to yell fire in a crowded theater when there is not fire. But if there is a fire should someone be allowed to take control of the situation and make sure people exit the theater safely? Just because someone does not like the idea of someone else noticing a fire, that does not mean it should not be mentioned. Russia has a simple solution for the internet, ban internet access to the common citizen. China has another solution, they have worked with Google to filter what their citizens can see. They also have a “good citizen” score that gives or removes rights to each citizen. Do we really want something like that in the United States? The First Amendment of the Constitute deals with free expression. That God-given right is vital to the survival of our country. Having an open and honest conversation is key to keeping us well-informed and able to make decisions that are good for us and for those around us. Censorship did not work through book burning, it will not work now either.

Developing a good understanding of our own opinions and thoughts, what we truly believe is right, is like weightlifting. It takes resistance to develop. The other benefit is that we may learn something. One such article for me was Why You Should Stop Saying “I Don’t See Color”. This article helped me refine my thoughts so that I can be more sensitive relating to people different than I. We all need to be pushed some and not become too complacent. We all need to hear both sides of each story and develop our own philosophy. Paraphrasing something that was said at the West Point 2020 graduation: “to be understood we must first seek to understand.” We each are individuals with attributes that may affect who we are. It is our responsibility to learn and grow. Complacency and censorship leads to nothing good. It is odd that the people who strongly protested book burning and who are in favor of the right to choose in certain areas are the most restrictive to the expression of views that do not agree with their world view. Providing the platform for free and respectful discussions is the best way to grow. Listen to different views. Those who do not will condemn themselves to a stagnant life. Also be aware of the difference sides of any story, then choose wisely as to which one is the most correct. But do not condemn others for coming to a different conclusion. Ask questions to understand why they believe the way they do. In having them explain their thoughts, each of us may have much more influence on others.

Posted in Uncategorized | Tagged , , , , , , | Leave a comment

Using Teams to Hold Online Meetings

Since we will all be required to create online content and hold on-line meetings while CECFC is closed, I decided to research as much as I could on how to hold and record meetings. The Microsoft documentation is good, but it has a few different features than our version of Teams (i.e. a Meetings tab instead of a Calendar tab on the left side of the tool). An example of their tutorials is:

I had to do a little research to plan for my class. I decided to create my own YouTube Channel to share what I have learned. My first video is:

Brady Taylor asked me to create some training for Microsoft Word and Excel. I am learning how to do that online and would enjoy teaching students various aspects of technology, including how to create YouTube channels and share appropriate content on it. There are several things students should know before graduating from high school/community college. This includes basic Microsoft Office skills, basic maintenance for Microsoft Windows and Linux systems, fundamentals of setting up a website, general programming principals, graphic design, etc. It would be nice to have an introductory course that these topics could be presented and then encourage our students to go more in-depth in the areas that they enjoy.

Having two teams at the same meeting

I have looked through the Microsoft Documentation and I could not find anything about having a meeting with two teams. I did find a work-around for that. It consists of adding the other class’ members as members of the first class and them including them on the calendar event. Remind students that they have to accept each meeting to be notified of the meeting. Following is how I combined two classes. If anyone has a better way, please let me know and I will redo the video.

Making a recording Available to Multiple Classes

This is a simple task. Go to the video you want to copy and do the following:

  1. Click on the triple periods to the right of the video
  2. Select “Link”
  3. A dialog box will appear, then click the Copy button
  4. Go to the class where you want the video shared
  5. In a box where you can enter text, right-click and select “Paste”
  6. Wait for the video to fully download, then send the message to your students.
  7. Your students should now be able to follow the link to Microsoft Streams and watch the video in their browser

One word of warning, the videos are stored in Microsoft Streams and are easy to delete. leaving a link in Teams with no accompanying video.

Posted in Microsoft, Teams, Uncategorized | Tagged , , | Leave a comment

Who Is the Customer?

This is a question that has been asked in business since there were any businesses. It is obvious that the people who pay the way and the financial shareholders have to be happy to have the business do well. But are they the most important to keep a business going strong? Let us take a look at a couple of organizations. The first one is in the airline industry. Have you ever flown? How do you feel about each airline? In college and when I worked for Hewlett Packard, I usually flew on United or Continental (because that is with whom HP had contracts). In Guam, I enjoyed Pan Am and Continental Air Micronesia. On personal business, I almost always took Frontier Airlines. Unfortunately, they have changed with regard to service to customers and the happiness of employees. I now take Southwest, whenever possible. The reason is because of their service. There are some aspects of the “cattle” loading I do not like, but the people are all great. Could that come from the ideals of the Southwest CEO? There is a fascinating article in Forbes entitled Employee-First Approach is Key to Customer Service Success Herb Kelleher, of Southwest Airlines, stated: “Years ago, business gurus used to apply the business school conundrum to me: ‘Who comes first? Your shareholders, your employees, or your customers?’ I said, ‘Well, that’s easy,’ but my response was heresy at that time. I said employees come first and if employees are treated right, they treat the outside world right, the outside world uses the company’s product again, and that makes the shareholders happy. That really is the way that it works, and it’s not a conundrum at all.”

I remember several conversations I had with Rulon Stacey, who was CEO at Poudre Valley Hospital, about how he turned around Poudre Valley Hospital. It seemed that the previous CEOs turned over quickly until Dr. Stacey brought in a new Philosophy. It is best to put it in his own words.

One of Dr. Stacey’s inspirations was the philosophy of Malcolm Baldrige. He researched the Malcolm Baldrige National Quality Award and submitted the application for 2008. Poudre Valley Hospital won the award that year. Rulon would be the first to admit that it was a team effort to win the award, work by all members of the hospital at all levels. The Malcolm Baldrige Award is a very prestigious award that is awarded to health care organizations, educational institutions, and businesses. It is something that all should strive to attain.

As was shown by Southwest Airlines and Poudre Valley Hospital, companies who treat their employees well thrive. Good employees will go out of their way to help customers, which in turn will help the entire organization.

Posted in Uncategorized | Tagged , , , , | 2 Comments

What are you Hearing that has not Been Said?

Inspiration comes in many forms. It is a gift that everyone alive can access. There are many names that inspiration has been given, including enlightenment, insight, personal revelation. Each word has slightly different meanings, but we will call it inspiration for this article.

Inspiration sometimes comes when we least expect it, but it often depends how we have prepared to receive it. From my experience, inspiration often comes to those who have “studied out” the problem to be solved, looked for possible solutions, and who live by consistent and basic principals. Beyond these basics, there are no formulas to receiving inspiration. The title explains how inspiration often happens. We may be thinking how to solve a problem or listening to others talk about some related topic. If we incorporate what we are hearing with our thoughts about what needs to be solved, we can surprise ourselves with elegant and unique solutions to our problems. This can apply to both academics and to our personal lives.

When we are learning a new subject, at first it can be very frustrating, but attempting to do something hard and listening to those who have done it before will give us insights that will often exceed the sum of the words said and the work we have currently done. We have all experienced “ah-hah” moments where “all of a sudden” something on which we have been working makes a lot more sense. All these inspirations are important to us, some are important to our community, and some are important to the entire world. Those inspiration that are important to the entire world usually come in layered inspiration, with the “break through” inspiration coming at a time that is right for people to understand how the results of the inspiration can be used for good. Unfortunately, there will always be some who use it to fight what is good. To continue to be inspired, we must always use the results of our inspiration for the best possible purpose. In recent history, inspirations led to such devices as the television, computers, flat screen televisions and displays, hand held devices, and eventually cell phones. Think about the order of the invention of these devices. Was the order important? Could cell phones be the compact instruments they are today, without the invention of the other items in this list? Inventions are often based on what has been already invented and asking “what if”, “what problem needs to be solved”. and “how can these inventions be combined and be used differently?” Thinking about what we are learning and living a principled life will give us insights that are important to us but are not always related to what we are hearing or what we think we are trying to solve. Thus the importance of the question: “What are we hearing that has not been said?”

Inspiration can be beneficial to personal safety as well as learning and personal growth. How many of us have been inspired to take a different way home or leave at a different time than we were planning to go? Then we learn later that something bad happened when we would have been at a particular location. I was visiting a friend in Los Angeles and was scheduled to take a particular Pan Am flight on 6 August 1974 back to Guam. Chuck and I wanted to talk a bit longer and play a game of tennis, so I changed my flight to TWA a bit later in the day. As we drove to the TWA terminal, we drove by the Pan Am terminal. Someone had put a bomb in the lockers which were in the terminal lobby and it went off about the time I would have been going through the airport. Three were killed and 36 were injured. I am glad I was inspired to have that game of tennis. As we recognize when and how inspiration comes, we will receive more inspiration.

Since I teach school, inspiration is vital to myself and my students. For me, to know what to teach when and how to better understand when students do not understand an important concept which will be needed later in the class. For the students, it is important to have insights about how to solve either assigned problems or personal projects. Often the insights are not what is being said but what is being heard. Believe it or not, they are not always the same. Sometimes it is just a thought that comes to a student that solves a problem. When I was a student, I can now look back and see when this happened to me. I also see it with some of my students, where someone is struggling on a new concept, one of the other students or I say something that might or might not be related to solving the problem, and the student will suddenly come up with a idea to solve the problem. When one student receives inspiration, I encourage them to share that with other students. Insights will build on each other and both students will come up with a solution that is far better than either one could develop on their own. This is true inspiration.

Know that each of us can receive inspiration when we need that inspiration. It may come all at once, or step-by-step. It often comes as a whisper or thought. We need to live in a way that will invite that inspiration into our lives. It will help us succeed in the things that are important in life.

Posted in Attitude, Becoming, Do, Inspiration | Tagged , , | Leave a comment