The full question ended with: “Why not access the variable directly?”
It depends on what you mean by “access the variable directly.” In Algol derived languages (like C, C#, C++, Pascal, Ada), the way to access a variable directly is through pointers. Java is a bit different. In Algol derived languages, you can pass a pointer to a variable in a call to a function or method. Then, whatever you do to that variable in the called function or method will alter the variable you passed by pointer in the calling code. In the Algol group of code, this is called “pass by reference” which means something totally different in Java.
FORTRAN started using pass by pointer, without actually stating what it was doing, in order to save space within the program. I learned this the hard way by passing the number “2” to a subroutine (same as a function or a method) and then changing the value of that variable in the subroutine. Since 2 in FORTRAN is stored as a pointer to the value “2” every time I would use “2” after that call, the actual value used was to what the subroutine set it.
One of the purposes of a pointer is to allow other routines to modify the value contained in the memory location(s) referenced by the pointer. As mentioned earlier, Java does not allow pointers. However, there are methods documented, for example in “How to do the equivalent of pass by reference for primitives in Java” to get around this rule for this one purpose.
In the “old” days of programming, before programmers were given a “sandbox” within to work, pointers could point to actual physical locations in memory instead of just locations relative to where your sandbox is located. With these pointers people could (and did) go in and modify the operating system on the fly. Something I do not recommend doing. This is one of the reasons Java was developed to not allow pointers.
After reading John Dougherty’s answer on Quora, I was tempted not to answer. But, that was only a fleeting thought.
It is hard to limit it to just one language. I was originally thinking of Ada. It was a structured language designed by committee. It came out when our team was working on SmallTalk at Tektronix. We were looking at various languages to put on our new workstation and Ada was one of the languages we studied. It was a good language but did not have an Object-Oriented component at that time. It has since added that feature, but it is a language I do not see too many people using any more. It was based on Pascal, a language that was used at Universities to teach students programming. It also is rarely used. But they all trace their ancestry back to Algol, another language designed by committee. It was a great language except for nobody being able to agree on the format for input and output commands. Algol’s high point was its use as the low level programming language for Burroughs computers. Burroughs systems were designed around Algol and when the Army asked Burroughs to write “low” level programs in assembler, they had to write an assembler interpreter in Algol. Good language, any structured language can trace its roots to Algol. This includes C, C++, Pascal, Ada, and Java. One of the best languages no one ever uses.
The language I would like to give honorable mention to is LISP. It was invented about the same time as FORTRAN and COBOL and was really popular in the Artificial Intelligence Community. It was the first language I learned after writing two major projects in FORTRAN. It is quite different than any other language using structures within parenthesis for both its programs and data. It made a comeback in the 80’s with Common Lisp and has had some derivatives that are reasonably popular. But of all the languages I have programmed, it remains the one I enjoyed the most.
When we are young, we too often think that life will go on forever. It will not. People age. We each have choices we are given once. Keeping our options open only means we are making a choice. And often, it is not the choice that would be best for each of us. I have been happiest when I have made a good choice and not just do what is expected. The best choices are often the most difficult. Scott James posted a video that covers some of the areas about which I am thinking at this time.
The key is to DO SOMETHING! It will either be a great decision or a learning experience. It is sometimes our worst decisions that drives our most profound learning. Unless we are trying to bring our astronauts safely home from a failed lunar lander expedition, failure is an option. Think of watching little tykes learn to walk. How many times do they fall? They usually only cry if someone is watching and they know they will get sympathy. Otherwise, they are up and trying to walk instantly. We should treat our failures the same way. Analyze them, find out what went wrong, and then correct that problem. Failure unanalyzed is a problem, as is not trying at all. I remember learning to ride a bike, My why for doing so was that I did not want training wheels put on my bicycle. I failed a whole bunch of times. I was glad I was wearing long pants. We should treat life a lot like learning to walk or learning to ride a bicycle. Just go out and do it, celebrate our successes and learn from our mistakes. None of us need to sit around and feel sorry for ourselves for not achieving some goal or making a mistake. It is all part of life, and the fun in life is going out and living it fully, helping others, and sharing life with the people we find important. We all need to love failure as a learning experience and celebrate all successes of our own and each of the people about whom we care. Get off of the electronic devices and be an important person in the lives of those around us. Celebrate LIFE!
This may be an unusual collection of people, but by the end of the article, I hope I have tied the four together. I have been thinking about the best path to the future for me. I love teaching and enjoy the interaction with the students and the wonderful people with whom I work. I plan to continue to contribute to the education of our youth for as long as God gives me the strength to do so. After my seventieth birthday, I have been thinking about what is important to me. After watching Steven Spielberg’s Lincoln, I have also been thinking of the importance of our Declaration of Independence and our Constitution, which provided for ways it could be changed to correct any injustices found therein. I believe that many of the founding fathers knew that slavery or indentured servitude of any human being was wrong, but that was the main area in which they struggled. The reason why I know that they did know what was right was in the phrase that all men are created equal. First, I will tell you a story that my mother told me when I WAS growing up. It was a story about a group of people in Chicago finding out about the problems one of my mom’s cousins in San Diego/Escondido area was having. They sent aid and comfort to him to help out where they could. Later it came out that the people who helped were descendants of slaves who were brought to Chicago by an ancestor of mom’s cousin. I was always told that the person being helped and many of the Chicago group all had the last name of Cole. Since I did meet the children of the man who was helped in Escondido, I believe that the stories were true. It was not until the internet that I was able to trace down whom I believe freed the slaves, but the internet records show an “S” at the end of this person’s name. So, I think it is the same person, but I am not 100 percent sure. The person who was friends with Thomas Jefferson and inherited the plantation was Edward Coles. It is an interesting story, and has influenced our family for many generations.
Following the story of the adoption of the thirteenth amendment to the Constitution to outlaw slavery, Steven Spielberg’s movie Lincoln deals primarily with the passing of this Amendment. It is interesting to see which party has been against slavery since its formation and most members I know in that party are for guaranteeing that all men (and women) have equal opportunity to succeed or fail. Again, the movie Lincoln is an excellent movie. The trailer is:
All men and women are created equal in the eyes of God, and we should treat others as precious children of God. Look for the positive qualities in others. Avoid untruths about others. Untruths serve no purpose except to tear the fabric of our country apart.
I recently saw a joyous video with Paul McCartney. I remember listening to the Beatles in High School. One of my best friends, Chuck Furbush, was a big Beatles fan. I remember when Sergeant Pepper’s Lonely Hearts Club Band came out, he was so excited to play it for me when I visited him at his uncle’s in Los Angeles. Lori Kristovich, who lived across the streetfrom me, also enjoyed listening to the Beatles. Ah the memories of high school. The video really shows the love Paul McCartney has for life and those around him. He is so kind to all those around him, that I am even more impressed with the person he has become even with all the fame he has achieved. May we all be so loving and caring towards others.
In some ways, it makes me feel old. In most ways, it makes me appreciate all the wonderful friends I have had and the people who have been so important to me. I know that there is no going back to the way it was in the past, that we must each build on our own experiences and the knowledge we have gained. I wish all my friends, past and present, all the love that God has in store for each of you. Enjoy reminiscing and enjoy living life to the fullest.
I honestly did not think that I would be quoting something from the MTV Awards in this post, but I think it is a good way to conclude this post. I think Chris states it like he sees it, some a bit too descriptive, but overall I think what he has to say is important. I especially like rules 6, 8, and 9, and the reaction the audience has towards all the rules.
May God bless each of us and help each of us to be our very best. Treat each other as a child of God (originally typed Gold, and that may be just as true)created with the right to equal opportunities. Encourage all to be our very best.
We are the author of our own lives. How will we live to our fullest? None of us knows what is going to happen in the future. We may plan and we may have a good idea especially if we work towards certain goals. But there are risks we all take just by living our own lives. We depend on trusting others to do what is expected and to not have someone else’s sneeze cause us so much pain and suffering. But when something does happen, it is the measure of our souls in how we deal with that setback. Amy Purdy is a great example of overcoming such an unexpected problem. I hope none of us have to go through such learning experiences to know how important living life to the fullest is.
Amy has an amazing story. Anyone who can go through so much and still keep a positive attitude is an inspiration to me. My son, Matthew is also amazing. He has had five open heart surgeries in his young life, but enjoys life more than anyone else I know. I am looking for ways to bottle that love for life and share it with myself and with others. A few things I have learned recently include:
Having a plan for each day. This includes an occasional plan to go off and do something totally unplanned. This is not a contradiction, because we all need to recharge our batteries,
Learn something new each day. If it is not recorded someplace where it can be easily seen, it is not learned.
Plan as if you will live forever, live as if today is your last day with the ones you love.
Always ask “What have I done for others today?” You might be amazed, looking back at a month, all that you have accomplished in service.
Live within your means. If your means do not match your actual needs, look for ways to legally increase you means.
Diana, Matthew, and I saw Amy Purdy do her presentation at a Convention a few years ago. We were impressed with her life story then. When Dora, a good friend, posted this video, it reminded my of what a dedicated person can do. Age is not a factor, mental attitude is. What do you want out of life and what are you going to do to obtain your dreams? As I grow, I will post what I learned each day here and add snippets of my dreams and plans here. I wish you all the best to live your dreams to your fullest.
18 June 2018 – My daily learning is to learn something new each day. My plans are to do well in my teaching position and complete my plans for the fall semester. Sometimes preparing for good services is just as important as the rendered service.
29 June 2018 – Procrastination is one of the biggest impediments to achieving anything worthwhile. As you can see, it is something I fight and is why there is such a gap in putting down what I have learned.
This has been an awesome year. I really enjoy teaching. It is such a blessing to watch students grow and understand new concepts. When given a chance, everyone wants to learn something new and to be the best person each of us can be and will become. My family wanted to see “The Greatest Showman” for awhile. So I decided to rent a copy last night. I always like watching some of the extra material and since I liked the songs in the movie, I watched the extra part on the songs. Keala Settle is the singer who sings “This is Me.” She had only sung in public as part of a church choir. They had to persuade her to sing this song, but once she decided to audition for singing this song, she succeeded spectacularly. I know that you can easily watch the clips from the movie, but I wanted to show you the first time that Keala was brave enough to get out from behind the podium. You can do for yourself, what Keala was about to do for herself.
The reason I chose this particular song is to show each of my students what each can achieve through being true to your internal compass and being the best person you can be. The theme for this year was grit. In some ways, I hate to see the semester end. I believe I have learned as much, if not more, than any of my students. I started the school year in August, being hired just in time to start teaching my classes. The first semester, I had two high school math classes, two high school computer science classes, and one middle school computer class. There was curriculum for the high school classes, but none for the middle school class. They did have a book of lessons for the middle school class, so the first semester I used it the best I could. The second semester, I decided to create my own class. I believe it went well and the students learned something interesting. This summer, I am working with the new middle school teacher to develop the curriculum for 6th, 7th, and 8th grade computer science classes. It will be nice having a full summer to do this development. It will also be nice to have someone with whom to work. I will enjoy teaching full time at the high school, but I will miss my middle school students. I will look forward to seeing them when then come to the high school. I will also be working with the new teaching during the school year to help where I can. I am looking forward to the new year.
This last paragraph is a note to all of my students: You have all been good students. I know, especially to the middle school students, it has been an interesting challenge to make the class interesting without making over challenging. You have all done a great job (as long as the homework is turned into Infinite Campus). As you continue on with your education or enter the labor force, I wish each of you all the success possible. The facts you have learned may be fleeting, but any techniques you have learned for gaining and retaining knowledge and skills will last a lifetime. Be true to yourself, follow your inner compass. When you are aligned with whom you truly are, you will succeed. There will be hardships along the way, that is part of life. I know for me, it is where I have learned the most. Develop your own “This is Me” attitude (and maybe even song). At the end of the “This is Me” video, notice how all the people (including the audience) were singing. Each person was confident in who s/he is, so that each person can work with others to build a better place for everyone. As you leave for the summer, decide who you want to be and strive to be that person. As you do, you will discover so many wonderful things about yourself and the environment in which you live. Also, remember those around you to help them grow to be the best person they can be. It is so much more fun to have good friends who are growing along with you. Have a great summer. May you each have your million dreams come true in your lifetime.
Angela Lee Duckworth was the person who came up with the term Grit after teaching seventh grade math. Her experience was that the students who could grasp the material were the ones who worked hard at understanding the material. IQ, family history, and many other factors did not have nearly as much effect as the passion of the student to understand the material and the perseverance to truly understand what was being taught. Angela Duckworth gave a TED talk that gives a background of how she developed her passion for understanding Grit. As is seen at the end of the following video, understanding Grit and how people develop Grit is only just beginning.
At Colorado Early Colleges in Fort Collins, Michael Brown gives presentations on Grit for this school year. It was when I heard an interview of Angela Duckworth that I developed a better understanding of what Grit meant. The segment of that presentation was her description of the basic training at the Naval Academy for first year cadets.The training for the first year at the Academy is tough. Those that are passionate about their own success (and helping others), and are willing to persevere through the many challenges, are the ones who are the most likely to achieve success at the Academy. The natural talent of a cadet is not as strong of indicator of success as the effort the cadet puts into achieving success. In fact, Angela came up with a formula for achievement:
Talent x Effort = Skill
Skill x Effort = Achievement
Notice that effort is used twice in the formulas where talent is only used once, and that is at the very beginning of the Achievement process. Our effort is twice as important as our native talents. There are four things we need to do every day to develop our Grit and they are:
Daily Improvement gets you where you want to be. How are you going to make yourself better today than you were yesterday?
Greater Purpose is a stronger internal driver for us that our desire for pleasure. When we understand WHY we need to learn a new topic or achieve a desired goal, we can achieve great things. The classic example is of a mother lifting a car off a trapped child when there is no way she could do that without knowing the greater good of saving her child. Another example is of a bricklayer who was building a church. Which is a higher purpose, just laying the bricks or building a lasting monument to God? Which would cause the bricklayer to do the best job possible.
Growth Mindset is essential to reaching the best possible outcome. I love to learn new material. This keeps me young at heart. No one on earth knows everything, even though there were proposals in 1900 to shut down the U>S. Patent Office because everything that will be invented has been invented. Think about all the discoveries since 1900, and compare that to your knowledge. Each of us has the knowledge relative to the people of 1900 America compared to the knowledge and skills we can learn. What is holding us back, how can we eliminate those obstacles and become capable of achieving great outcomes in our lives. My biggest obstacle is my own limitations I place on myself. What are yours? How do you plan to overcome those?
A good description of some of Angela Duckworth’s ideas is explained in the following video:
There was a study done a long time ago about who made the best baseball coaches. Surprisingly, at least at the time, was that the best coaches were the ones who did not have the super talent, they were the ones who had to persevere to achieve any success in professional baseball. They were the ones who had to learn how to become the best player they could be, then were able to share what they learned and how they learned it with other players. As a side note, the greatest learning occurs when you share what you have learned with others. Having to explain what needs to be done to achieve success reinforces what you have learned.
I am from Indiana. I love basketball. I know that is redundant, but it does show one of may passions. I tried out for my high school basketball team, but was not able to make it my freshman year. I worked hard the following year to improve my game. My sophomore year I was one of the last people to be cut. I had improved my game. I then started playing in a church league because I really enjoyed playing. When I taught high school on Guam, I went to play basketball every morning at the high school. The head basketball coach of the Warriors (one of the two teams the high school had) noticed me and asked if I would like to be an assistant coach and coach the JV team. I jumped at the opportunity. The second year I coached, we only lost one game and tied for the league championship. To this day, I know exactly what I needed to do to improve my coaching based on that one loss. We did not lose another game for the rest of the season. In fact there were no really close games after that one loss. But I probably learned more from that one game than any other game. Losses are just learning opportunities. They may hurt when they happen, but we must not give up because of one failure. I know I need to learn from failure and improve. There are enough mistakes to be made, there is no excuse to repeat any one mistake too many times. Learn and grow, never be afraid of pushing the boundaries of comfort in your life.
Grit can be developed. It is not easy, but it can be done. Start with one small idea of how you can improve yourself in one area. Then do it. Be better today than you were yesterday. Help someone else learn what you just learned. Understand the higher purpose in what you are doing today. Then learn and do. As someone I greatly admire once said: Do It! Do It Right! Do It Right Now!
Assignment for My Middle School Class
The assignments are:
Daily: On the top of your assignment, answer the question How am I better today with computers than I was yesterday?
Weekly: On the last day of class each week, answer the following four questions:
How have I improved my fascination with this subject this week?
What have I learned from my Daily Improvements?
What Greater Purpose does what I learned this week have in my life?
How have I grown this week, especially my Mindset?
I am is the most powerful phrase in the English language. What follows those words determine what thoughts we each have about ourselves. The words following can be derogatory, learning, hopeful, humble, egotistical, or some combination. The choice is ours. For those who are religious, the phrase I Am has special significance. Everything associated with that phrase should always be humble and uplifting and never derogatory. There is an old saying that Your thinking determines who you are. What is your most common sentence starting with I am? How does that sentence make you feel? I know I always have to be realistic. I have many areas in which I have the opportunity to grow. I might say I am learning something new. I am not yet a master of that, but I am working towards that goal. I am developing a plan to be where I want to be in a specified amount of time. We each must decide if we are as happy as we want to be where we are right now. If not, how can we obtain that state in a reasonable amount of time?
Use I Am carefully, You are becoming what you think you are. Use you internal power to be the person you want to be. We each are beings of far more potential than any of us will ever realize. We must be the person that we have the potential of being. Becoming the person we can be attracts the people with whom we want to share our lives. Do It! Do It Right! Do It Right Now!
I Am Changes with Your Stages of Life
How I am is completed will vary at different stages of life. Be comfortable with the stage at which you are located at this time in your life. To be our best, all stages need to be learning and growing stages. Stagnation leads to physical and spiritual death. In this life, none of us alive today will ever reach perfection. But to strive for perfection in areas of our lives is doable, so let us do that to become perfect in particular areas of our lives that are important to us. Remember that we are each a Child of God and God does not make junk. Romans 8:17 states And if children, then heirs; heirs of God, and joint-heirs with Christ; if so be that we suffer with Him, that we may be also glorified together. This is an amazing promise. It means that we must humbly respect ourselves and our potentials.
Not Yet Is Essential to Achieving your I Ams
I Am Not Yet leads to I Am, Have you ever wanted to do something and then set out to accomplish that task. It might be something that takes a day or something that takes a lifetime. It is good to have both goals. Often the one day to one week tasks lead to year-long accomplishments which lead to a lifetime of achievement. I am sure that we each can point to events in our life where we have said I am not yet and went to achieve that goal. It may be simple. I remember when my parents bought me a brand new bike and I had not ridden it. They offered to buy me training wheels. My reaction was I am not yet a bicycle rider and I do not want training wheels. Therefore, I borrowed a neighbor’s smaller bicycle and went down to the end of the street to practice riding all day. I fell down a lot. But by the end of the day I could ride a bicycle. I appreciate the power of I am not yet! Another time was coming from a FORTRAN on cards environment arriving at Indiana University for my Masters in Computer Science. On the first day of class (Monday), we were assigned 5 LISP programs to be turned in on Wednesday using a text editor on a computer and turned in using an electronic system. I did not even know how to save a file on the computer, let allone use a recursive language like LISP. My first thought was I am not yet a programmer of LISP programs on a terminal, but I will be by Wednesday. On Wednesday, I turned in the assignments and could say that I am a programmer of simple LISP programs on a terminal. As time progressed at IU, I eventually could say that I am a programmer of complex LISP programs. Notice that I never even mentioned terminals because after a few months that was just a given. We each have our I am not yetgoals that will lead to I am moments. May we each find joy in those moments and celebrate them both by ourselves and with good friends. As we celebrate our own triumphs, may we look to celebrate our friends’ triumphs also.
Life is full of opportunities. Sometimes those may be hidden in challenges, both minor and major. May we each recognize the opportunities that present themselves to us and achieve all of the I am moments that we desire. May each of our lives be filled with the joys that come from humble accomplishment.
I have been working with software development since I was a junior in high school. I have used at least twenty-five languages for various projects. I can take my coding skills from language to language (at least in groups of languages). What type of development would you like to do? The answer to that question will determine what practices you need to develop for your coding skills. Once you know that, then it is wise to choose a language that will help you develop those skills. Learning how to code goes hand-in-hand with learning a particular language. Unless you want to do legacy programming (FORTRAN, Assembler/Assembly, or COBOL), I would suggest learning structure programming/coding language like C, Algol, Ada, or Pascal. C seems to be the most common language in this group. These languages would be good for learning basic coding skills. For more advanced skills, I would recommend an Object Oriented language. The language with which I started was SmallTalk, which is not that commonly used anymore. Other languages include C++ for a compiled-to-a-specific-architecture language, Java for a language that compiles to run on a virtual machine, or Python if you want to learn an interpreted language. Java would be good for you to learn coding for mobile phones. If you are doing work on Microsoft platforms, then C# would be the language to use.
Almost a totally different mindset is needed if you plan to do string manipulation and searches. Some of the languages listed above would do well, but there are languages specifically designed for this. Two that I have used are Snobol and Prolog. Prolog (SWI-Prolog) is a much more modern language than Snobol (SNOBOL4 Resources), but both have their place.
As a side note, the language with which I had the most fun was LISP, it has since evolved into Common LISP (Welcome to Common-Lisp.net!). It is just as old of language as FORTRAN and COBOL. but totally different. In fact, it will warp your coding techniques and think in ways that you may never have thought before.
Bottom line, learning good coding techniques and learning a specific language go hand-in-hand. Some basic coding techniques are true no matter what language you are using and will serve you well in all languages. Other coding techniques have developed around a group of languages, like Object Oriented Programming. Good luck in whatever you choose to do.
Hewlett-Packard and Tektronix, two companies for whom I have worked, were once garage-shop companies. Most companies start up that way and grow bigger as they reach their goals. The founders of companies care about their companies and the employees, the people who take over leadership after them do not care nearly as much. Under the founders of HP and TEK, there were no lay-offs. In tough times, they found alternate solutions to keep people they hired employed. Howard, Bill, and Dave all felt that if you cared enough to help their company succeed that they would return the favor and care for you when times got tough. This speaks highly of the environment in smaller companies that are growing. The smaller companies with whom I am familiar, also have far less overhead in terms of paperwork and meetings and far more emphasis on getting the work done. If you are familiar with the Scrum Methodology (Scrum Methodology), the philosophy of a good smaller company fits more closely with rapid quality software development. I am not saying that larger companies cannot also develop quality software, it just requires more hurdle jumping. As a side-note, look up Skunk Works for an example of a big company doing just this.
Back to your original question, doing something you love is far more important than working for a large corporation. When choosing a company, choose wisely. Look for a company with either good financing or a great idea than you feel you can substantially contribute to it being successful.
Big companies do not provide the stability they once did (Hewlett Packard Enterprise Is Said to Plan About 5,000 Job Cuts). I was project-lead at Hewlett-Packard when I was asked to put together training for the product development to be shipped to India. A bit later I was a part of the HP Work Force Reduction and given six weeks to find work within the company. At the same time, the CEO put a seven week moratorium on internal hires.
The bottom line is to choose what you want to do, look for a good company who is doing that, and then hone your skills in that area and show the company how you can help them with their success. Good luck.