Blog

10 Programming Teamwork Skills You Should Adopt

Background from Canva, Edited in Canva to add text

Computer programming can often be a stressful career with the deadlines and the continuous problems to solve. It’s all part of the routine of working in a team in a fast-paced environment with different personalities and characteristics involved. No two people are the same, and sometimes the differences can make the workplace difficult to maneuver.

One of the biggest challenges about learning how to work in that environment is understanding how to work on a team. Like any other skill, it must be developed and honed during years of experience.

After over 26 years of working on teams as a developer, these are my 10 best practices for being a team player:

1. Help people when you can. Be forthcoming with information. Share your knowledge. You are part of a team. If you discover something, such as a solution to an issue or a new tool that will make life easier, pass it on to the others. They’ll appreciate it and may return the favor some day.

2. Don’t take things personally. Don’t overreact to criticism. As a programmer, others on your team are there to review your work. They may point out issues or mistakes that you didn’t think of. Don’t be defensive, take it constructively.

3. Read and try to understand all your emails. Even if it’s a broadcast to all employees, it’s important that you assess what the impact is to you specifically. Ask questions if you don’t understand something.

4. Respond to requests in a timely way. If someone asks you to carry out a task, calculate the priority against your other requirements and complete the work accordingly. Provide statuses as you go along, and let others know if the work will be delayed.

5. Communicate with team members. Work with other people on the team, not against them. Make sure the lines of contact are open. Don’t assume you can or should do everything yourself.

6. Learn about your teammates. Spend some time to get to know people on a personal level. Don’t be pushy but find openings to ask about their hobbies and/or families. You may find some true friends for life.

7. Assume every day will be a good one. Be friendly. Go to work every day with a positive attitude. Smile and say hello to people. It will be contagious.

8. Learn as much as you can each day. There are many tools and practices to be understood in a programming job. Make it a point to ask questions and be curious about the things that are happening around you.

9. Don’t treat others badly. Learn to laugh a bit at yourself and with your other team members, never at them. Don’t be a gossip or a bully.

10. When you need a break, take it. If you work with people constantly for days at a time, it can be a strain. If you have the opportunity, and it doesn’t affect your work, give some distance.

 

All these items have one thing in common — they reflect a positive, constructive attitude. If just one person on the team is an optimist, it can change the whole outlook of the group. Try it and see what great things your team can accomplish as a result.

 

4 Coder struggles in Transitioning from COBOL to Java Programming

Background from Canva, Edited in Canva to add text

Being an older programmer in the Information Technology field, I can definitely relate to dealing with the introduction of new technology. During my over 25-year career, there were times when I had to decide whether the time and energy that I would have to invest in learning new technology was worth it. This is basically what I went through when I switched from my warm and fuzzy job in Mainframe/COBOL programming to a job in–something new for me—Personal Computer (PC)/Java programming.

If You Can’t Beat Them, Join Them

COBOL (Common Business-Oriented Language) is an over 60-year-old programming language. The programs are typically compiled and run on a Mainframe computer, which has the ability to process large amounts of data. An example of an Integrated Development Environment (IDE) for Mainframe/COBOL development is the Interactive System Productivity Facility (ISPF). The code repository for Mainframe programming, that I’m familiar with, is Endevor. From my experience over the last 25 years, there have been few significant changes in COBOL development and the associated tools.

By contrast, Java, initiated in 1991, is a much newer programming language. The code is built and run on a Personal Computer. Eclipse is a typical IDE for Java coding, and the code repository is GIT. In this type of environment, the tools and code could change multiple times in a short period of time, something a mature workforce may not be prepared for.

Some Issues for Older Workers

Keeping Up

As more and more tech savvy Generation X and Millennial people enter the workforce, it’s harder and harder for Baby Boomers to keep pace with these younger generations. In an Information Technology (IT) environment, it’s particularly difficult since students starting out on a development team have recently learned the latest technology.  This was one of the biggest challenges I found when I switched from COBOL to Java coding.

Learning Curve

Moreover, relearning basically another computer language was an underestimated part of this job switch. It’s sometimes a misconception that if you know programming in one language, you know programming in every computer language. From my perspective, that’s not a reasonable assumption, any more than it’s logical to assume that someone that knows the English language will automatically know the French language. In the end, I did learn how to code in Java and work in the development environment, but it wasn’t easy.

Environmental Stability

It wasn’t just learning the new code syntax; it was also a matter of understanding all the associated tools to build and run Java programs. The IDE, debugger, and code repository are all different tools for Mainframe and Java coding. Also, having been in use for a lot longer, the Mainframe development products are naturally more stable when a new version is introduced.  Ultimately, it’s much easier to code in a stable environment, which I learned very quickly.

Comfort Zone

Finally, the transition was also harder, because I missed programming in COBOL. In the beginning, I was so anxious to try out Java programming with all its bells and whistles and graphical development environment. It was an example of “be careful what you wish for”. The more I worked with Java, the more attractive COBOL became. It was like missing an old friend.

Like Steve Jobs suggested…Eventually a decision has to be made as to whether or not the new technology is worth the investment. After quite a few years of Java programming, I decided that my issues with it, as mentioned above, outweighed my reasons for continuing, so I went back to Mainframe/COBOL programming. No loss for me, because I had both jobs available to me, I just preferred my stable, comfort zone. In the end, I’m glad I tried it, and it’s part of my history.

 

Have you ever taken a job that you thought would be perfect for you but realized that it wasn’t? How did you handle the situation? Did you stay with it, or look for something else?

 

 

 

COBOL–Working With It

Image from Canva, Edited in Canva to add text

The Common Business Oriented Language (COBOL) computer programming language is over 60 years old. Some consider it to be outdated, and those that program in it have been jokingly called dinosaurs. However, COBOL is still widely in use in banks, insurance companies, governments, and other financial institutions to efficiently and securely process large amounts of data through computer programs run on Mainframes. There are basically 2 different forms of COBOL program processing: Batch and Online.

Batch Processing

Batch COBOL programs are scheduled through Job Control Language (JCL) jobs to be run at a specific time, in a certain order. For example, data may be batched in files and processed overnight to update a DB2 database. JCL jobs are set to specify who has access to run the program as well as time parameters. The input data file names are also included in the JCL job, along with the COBOL program name and an output location.

Online Processing

There are CICS (Customer Information Control System) programs that are online COBOL programs containing CICS commands. They are run in real-time for screen display and data capture. For instance, while programs run in the background, screens are displayed to a user to allow data entry. The data captured is processed and saved, possibly to a DB2 database.

Coding Environment

The COBOL coding environment is typically an interactive TSO (Time Sharing Option) session on a Mainframe computer. If you would like more details, IBM has a What is TSO section on their website. Most users work with TSO through its menu-driven interface, Interactive System Productivity Facility (ISPF). What is ISPF is also available through the IBM website.

In summary, COBOL programs are compiled and run in a Mainframe TSO environment, using an ISPF interface. These programs can be set to run on a schedule in a JCL job, using batch processing; or through an online environment, using CICS.

What other COBOL-related items would you like to see explained in more detail?

 

Mary K. Hawes: The First to Identify the Need for COBOL

Background from Canva, Edited in Canva to add text

“A ship in port is safe, but that is not what ships are built for” is a version of this famous quote attributed to Grace Hopper, often referred to as the Mother of COBOL (Common Business Oriented Language). Even though she played a significant part in the history of computers for her many technical accomplishments, particularly for her role in the development of the COBOL Language, there were other women who were involved in COBOL’s history as well.

For example, Mary K Hawes is another key figure, who reportedly recognized the need for a Common Business Language in Accounting and initiated the process to develop the COBOL language. She is an often-forgotten woman in COBOL history who is overshadowed by the later significant contributions of Grace Hopper.

How the Idea Started

In March 1959, Mary Hawes was working as a senior product planning analyst for the Electro Data Division of Burroughs Corporation, a manufacturer of business equipment. According to information recorded in Proposing COBOL, the National Museum of American History, at that time, she called for “computer users and manufacturers to create a new computer language—one that could run on different brands of computers and perform accounting tasks such as payroll calculations, inventory control, and records of credits and debits.”

How it Developed

Per Jean Sammet’s book, History of Programming Languages (1981), Mary Hawes definitely made the first request that brought about an initial meeting in April 1959. This first meeting resulted in seeking sponsorship from the U.S. Department of Defense (DOD). Charles Philips, an employee at the DOD, agreed to the plan to start meetings in the Pentagon. In May 1959, approximately 40 representatives of computer users and computer manufacturers met and formed the Short-Range Committee of the Conference on Data Systems Languages (CODASYL). Further, according to the History of Programming Languages, Mary Hawes allegedly chaired the data descriptions subcommittee in the Short-Range Committee.

How it Became COBOL

During the later part of 1959 (per Proposing COBOL, the National Museum of American History) planning groups met in New York and Boston to prepare specifications for the new programming language they named COBOL. They modeled the new language on earlier computer languages for business: Remington Rand UNIVAC’s FLOW-MATIC, already in use; and IBM’s Commercial Translator, not yet implemented. FLOW-MATIC originated with a group led by Grace Hopper, who advocated for computer programs that could be easily read and understood. Commands in FLOW-MATIC and COBOL were written to resemble ordinary English.

In Sept 1959, Charles Philips gave the following positive comment: “The Department of Defense was pleased to undertake this project; in fact, we were embarrassed that the idea for such a common language had not had its origin by that time in Defense since we would benefit so greatly from the success of such a project” (Sammett, 1981)

In conclusion, Mary K. Hawes can be credited with the origin of COBOL. Not a small accolade, considering the language has persisted for over 60 years and is still widely in use today.

 

Mary Hawes Co-Authored the Following Books:

  • Optimized code generation from extended-entry decision tables published in September 1971
  • Feature analysis of generalized database management systems: CODASYL Systems Committee published in May 1971
  • A survey of generalized database management systems published in May 1969.

 

References:

  1. “Burrough’s Future in Electronics”. www.smecc.org. Retrieved 2016-11-08.
  2. “Proposing COBOL”. National Museum of American History. 2012-04-04. Retrieved 2020-07-25.
  3. Sammet, Jean (1981). History of Programming Languages. Academic Press. pp. 199–243

 

 

 

 

Where in the World is COBOL?

Original photo, Edited to add text

“Loving life is easy when you are abroad. Where no one knows you and you hold your life in your hands all alone, you are more master of yourself than at any other time” is a quote by Hannah Arendt, a famous political philosopher and Holocaust survivor. It is about the joy of moving to an unfamiliar country, out of your comfort zone.

In the process of demystifying COBOL, it’s good to recognize that the language is still in use in several different countries in the world.  COBOL is far from becoming obsolete, as was predicted 30, or even 40, years ago and can open up the possibility of travel for an experienced COBOL programmer.

Main Countries Using COBOL

In fact, Enlyft (2022) collected data on 28,906 companies that use COBOL. While they did find that the majority of these companies are in the United States and the United Kingdom, there is a COBOL presence in India, Canada, France, Brazil, Italy, Spain, Australia and Germany.

Finding a COBOL Job in Each Country

What if you’re a COBOL developer and you’re thinking about working in one of these countries, doing something that you’ve perhaps been doing for many years? I decided to do my own research on a potential answer to that question.  With a few simple LinkedIn (employment online service) searches for “COBOL Programmer” jobs in each country, I came up with the following results: 3,183 jobs in the United States; 188 jobs in the United Kingdom; 609 jobs in India; 241 jobs in Canada; 132 jobs in France; 582 jobs in Brazil; 23 jobs in Italy; 43 jobs in Spain; 68 jobs in Australia; and 100 jobs in Germany. There certainly seems to be no shortage of COBOL jobs available worldwide.

Getting a Job in a Foreign Country

To carry my research even further, Indeed (a worldwide employment website) has published an article, How to Get a Job in Another Country. It describes the following steps in the process: determine the type of job you want; decide what country you want to work in; find a job you’re interested in; apply for a visa or work permit; localize your resume and apply for the job. If you’re already a veteran COBOL programmer, it’s just a matter of picking your country of choice and following the process.

 

Amid all the talk of modernization and the negativity surrounding legacy COBOL systems, it’s easy to get stuck in a rut and feel like there is no future in a COBOL programming career. As you can see, with years of experience in COBOL, you could easily find available jobs in a foreign country where you may be interested in living and working. A move like that is not as out of reach as it may seem. If you have been leaning in that direction, I hope that this discussion has given you food for thought.

 

Is COBOL a Good Fit for Today’s Workforce? A Millennial Perspective

Image from Canva, Edited in Canva to add text

“Millennials want to find meaning in their work, and they want to make a difference. They want to be listened to. They want you to understand that they fuse life and work. They want to have a say about how they do their work. They want to be rewarded. They want to be recognized. They want a good relationship with their boss. They want to learn. But most of all, they want to succeed. They want to have fun!”

The above is a quote by Chip Espinoza, an expert on generational diversity, referring to the Millennial generation (that group of people born 1980 to 1996). This is a great summary of characteristics you want to see in a good work environment, but it’s very general and, at this high level, could describe the workplace wish list of any of the generations.

Survey results, collected by Great Place to Work, has provided a more detailed insight into what Millennials currently want in their workplace. Claire Hastwell, in the article Top 5 Things Millennials Want in the Workplace in 2021, gives a fantastic review of the Millennial perspective, using the survey findings.

I thought it would be interesting to discuss her 5 summary subjects from the viewpoint of a person who works on a software development team with Millennials of all ages. I’ve reused her subject headings below, but the discussion is strictly my own opinion and experience. I’ve worked with students entering the workforce as well as younger, more established workers, and these are my observations.

Fair Pay and Personal Meaning

In the conventional workforce, seniority, along with pay increases and more interesting job assignments, usually comes with age and experience. However, Millennials want to move into senior, high pay roles faster than was expected in a traditional workplace. Employers will have to address this need in Millennials or lose employees who won’t wait to accumulate experience before getting more money and more fulfilling work.

Inclusive Benefits that go Beyond Parenthood

Although they aren’t usually at the point where they appreciate the benefits of being part of a pension plan, the Millennials I’ve seen have welcomed vacation and sick leave benefits. Employers will definitely need to be creative in providing other benefits that appeal to this group, such as the “Pawternity”, pet leave, described in the article.

Gender Equity at all levels

Traditionally a male dominated field, programming is now representing both male and female workers equally. Women have shown that they excel in the technical field and are as good as, if not better than, their male counterparts. Employers will need to continue to ensure that women programmers are given equal opportunities, or they may lose valuable employees as a result.

Post-Pandemic Flexibility

As mentioned in the article, Millennials will prefer the Hybrid model of working post-pandemic, where there is a mix of remote and in-office work. My experience has been that Millennials are anxious to meet with team members but would prefer flexible work arrangements where they could still work remotely at least part of the time. Having already had that experience during the pandemic, Millennials will want to continue this way of working.

Safe Spaces Where They can be Involved

According to the survey results, Millennials want to work where they can bring fresh ideas and be heard. This might be a challenge in the COBOL programming role where the infrastructure and tools have been used in the same way for many years. They may enjoy a role in the modernization of COBOL in terms of rewriting old code or adding a more modern GUI front end to a COBOL backend. In any case, Millennials will not settle for “micromanagement or being put in a box”.

 

Will COBOL survive an entire workplace of Millennials? Since more senior members on a COBOL developer team are still Baby Boomers and Generation X, this question remains to be answered. Millennials want the opportunity to create and bring new ideas to their workplace. In the end, the traditional COBOL workplace may go through some changes that can’t even be conceived of yet. Stay tuned…

 

Remote Work: Better or Worse for a COBOL Programmer

Background from Canva, Edited in Canva to add text

There are a lot of quotes from famous and powerful people about the impact on mandatory work-from-home over the last 2 plus years. I’ve been reflecting on my own experience as someone in the trenches, working from home, and this article describes some ways that it improved life for me and some ways that it made it worse. This is no reflection on my employer and is strictly my own opinion, from the perspective of a COBOL Programmer.

10 Ways Things Are Better Working from Home:

  1.   There is no commute. Previously, there was a commute to get into the physical office. In the new work world, it’s just a matter of going to your computer and logging on.
  2.   Less distractions. There are less interruptions during the workday. Most of the time there are no people working around you to potentially have loud conversations
  3.   More flexibility of time. There is the option of working irregular hours, around your own schedule, contributing to a better work personal balance.
  4.   Less long meetings and time to get to them. There used to be travel time involved in getting to meetings, even if it was in the same building. With virtual meetings, that time wasted isn’t a factor anymore.
  5.   More time with family. With no commute time, it’s possible to spend more quality time with your family.
  6.   More comfortable work environment. Your workspace is in the comfort of your own home, where you can even regulate the temperature.
  7.   Easier access to other workers on chat. You don’t have to spend time tracking down coworkers. They will either be available on chat or not available. There’s no need to go to their desk to look for them.
  8.   Easier to have a pet. You don’t have to worry about leaving your pet alone at home all day. There are no costly pet daycare fees..
  9.   Easier to look after children. Instead of your children fitting into your work schedule, your work schedule can now fit into your children’s schedule.
  10.   Can work from another city. There are more options for remote work when you work from the virtual office. Depending on the job, you can live in one city and work in another easily.

10 Ways Things Are not Better Working from Home:

  1.   Less in person time for meetings. Meetings are more impersonal, with virtual meetings replacing boardroom meetings. There are often hundreds of people in one online meeting.
  2.   Less chance to socialize. No opportunity for hallway, bathroom, or water cooler impromptu mingling. Often short training sessions or work meetings could previously be accomplished easily that way, face to face.
  3.   Less chance to be visible. You can go off the radar when working from home. Your work may not be as recognized if you aren’t among others in the office.
  4.   More distractions. There could be more distractions at home. For example, children and pets may need your attention during the workday.
  5.   Less structured time. With the computer so close, you can log on any time, so you may end up working at odd hours or more hours because of the convenience.
  6.   Downtime from connection issues. There is more disruption of work due to technical issues with your work link. The Internet disconnects or your work connection may be lost at various times during the day.
  7.   Have to be constantly available for chat and calls. You are almost expected to be consistently available for unexpected meetings and work calls. There is an expectation to let the team know when you are leaving your desk.
  8.   Blurring of work and family time. Since it is more convenient to work at home. Work hours might extend into family time, confusing the line between work and family.
  9.   Harder to develop work relationships. It’s much harder to develop a work connection with people on your team, especially new people who you haven’t met before. Unless you’re constantly on video calls with them, the body language factor is eliminated when talking through emails.
  10.   Harder to learn from others. Training sessions used to occur in a classroom setting. Now, virtual instruction may have hundreds of people attending and interactive turned off. This makes asking questions more difficult, since the questions come up in chat only for the instructor. Impromptu training also has to be online.

As you can see, there are both pros and cons to remote work. Some of the pros may also be cons, depending on the situation of the worker. No scenario will be perfect in all cases. There will still be some bad and some good about working remotely, just as there was with working in the office.

 

If you’re currently working from home, what are some of the things you struggle with, and/or are thankful for, about your new arrangement?

 

Generations in COBOL Programming

Image from Canva, Edited in Canva to add text

“Each generation imagines itself to be more intelligent than the one that went before it, and wiser than the one that comes after it” is a famous quote by George Orwell.

Generations in the Overall Workplace

It’s probably safe to say that the general workplace of today encompasses people ages 18 to 70. This range includes 4 of the recognized generations: Baby Boomers, Generation X, Millennials and Generation Z. In the articles, Main Characteristics Per Generation  and  Hiring Tips for a Multigenerational Workforce: From Baby Boomers to Gen Z,  the work traits of each group are documented. Not surprisingly, there are distinct differences between the attitudes and behaviours of each generation.

Age of COBOL Programmers

According to Zippia, an online platform that matches job seekers to career opportunities, in their website segment titled, COBOL Programmer Demographic Statistics in the US, the average age of a COBOL Programmer is 46 years old. That’s a wide potential age range for this group. If it’s a strict average, these programmers could range in age from 26 to 66. There will, of course, be those outliers that will be younger or older. As a result, COBOL Programmers fall into the 4 generations found in the workplace today.

Generations in a COBOL Development Team

Due to the differences observed between the generations of workers, there is a diversity in the way people on a development team approach their work. COBOL development teams specifically illustrate this variety, since they are comprised of a range of the 4 generations, senior to junior members.

Baby Boomers (born 1946-1965)

Firstly, Baby Boomers are the older colleagues of a COBOL team. At this writing, they are aged 58 to 76. These are the workers that are very experienced but ready to retire.  They live to work and are competitive, process-oriented, loyal to the job, enjoy working in the team, and are self-motivated. They want to know that they have made a difference after their years of hard work and devotion to their job.

Generation X (born 1965 to 1980)

This group are ages 42 to 57 and are part of the older team members but not quite as senior as the Baby Boomers. They may even be waiting for people in that group of COBOL Programmers to retire, so they can take over their role. They work to live, are independent, adapt to change (particularly changes in technology), value education and are eager to learn. This is the group who are focused on achieving results in an efficient way

Millennials (born 1981 to 1996)

These are the members of a COBOL Programming team that are 27 to 43 years old and are mid level, not senior but not junior either. This generation is interested in work-life balance, prefer detailed instructions and favor solutions involving technology. Millennials want to make an impact and share everything. They are achievement oriented.

Generation Z (born 1997 to 2020)

These are the newest generation of COBOL Programmers. They are 7 to 26 years old. Clearly, the work-related age range in this discussion would be those 18 to 26 who are working in a COBOL Programming team. This is the first generation to grow up with the Internet. They are open to technology and are accepting of others. Generation Z are very entrepreneurial, and self directed. They are fresh out of school and ready to bring their newly acquired knowledge to the workplace.

 

With all the COBOL Modernization and Digital Transformation projects going on today, once the Baby Boomers, and maybe even the Generation Xers, have retired, it will be interesting to see how the Millennials and Generation Z are able to convert COBOL into something more technologically advanced and progressive.

Which generational group do you fall into? Do the traits from the articles fit you? Maybe you overlap into two groups.

 

Building a Personal Brand as a COBOL Programmer

Original photo, Edited to add text.

What is a Brand?

We all have the potential to have an individual Brand. It is your personal qualities or characteristics that set you apart from others. It is something you are proud of that adds remarkable, measurable, distinguished, and distinctive value. Maybe you have longevity and/or expertise in a certain field of work. Maybe you are skilled in, and/or are passionate about, a hobby, such as cooking, gardening, or writing. As a specific topic-related example, if you were a COBOL Programmer and had a long career developing an expertise in CICS, as an Online Programmer, or JCL, as a Batch Programmer. That may, in fact, be your Brand. This blog, and the Demystifying COBOL Brand, has evolved from the fact that I have worked with COBOL and associated technologies for almost 30 years.

Define Your Brand

“You can’t build a reputation on what you are going to do” is a perceptive quote about Branding, by Henry Ford. Some successful examples of Personal Branding, based on character, are Martha Stewart, Oprah Winfrey, Richard Branson, and Elon Musk. Their Personal Brand is their personality and how they present themselves to the world.

Jacob Cass, in Building a Personal Brand, talks about 3 steps involved in creating a foundation, or online reputation:

      1. Define your Brand.
      2. Create your Website
      3. Utilize your Networks

The first stage, Define your Brand, encompasses four elements: Goals, Audience, Unique Selling Point (USP), and Visual Identity.

Goals and Audience

With reference to my Demystifying COBOL Brand, my main Goal was to discuss COBOL in a non-technical way from the perspective of a long-term COBOL Programmer. Technical references can be found easily online, but this Brand focuses on the less measurable items in COBOL Programming. My Audience was intended to include experienced COBOL Programmers, aspiring COBOL Programmers, or anyone with an interest in Programming.

What Is my Unique Selling Point (USP)?

Image from Canva, Edited in Canva to add text

In terms of my USP, several qualities, when combined, set me apart from others and give me a uniqueness. These characteristics are important factors in my online reputation. One of these abilities is the fact that I am analytical and can work through situations logically. Another trait I have is that I am persistent: when I want to do something, I will try to find a way to make it happen. A third feature that contributes to my USP is that I am a life-long learner. These 3 factors combined provide me with a Unique Selling Point.

What is my Visual Identity?

Of my unique characteristics, continuous learning is the one that makes me stand out the most and contributes to my Visual Identity. It has enabled me to be recognized during my career, as well as personally. I am very proud of the fact that one of my best traits is that I am constantly upgrading my skills and knowledge. As well as conventional learning, such as taking courses, I learn informally from those people and events around me. For example, as part of my day-to-day life, I study the behavior of the people in my organization. I like to reflect on the types of workers, how interactions happen, the impact of the new on the old, women in the workplace, just to name a few. I feel that these types of people-oriented observations have led me to develop my Demystifying COBOL Brand.

 

Going forward, as the world continues to get smaller and smaller, personal branding will become even more important than it is right now. How unique you are may eventually become your value. Do you agree? Disagree? Why?

COBOL Blogging

Original photo, Edited by the Author to add text

Several readers have sent me comments asking me how to blog. I’m sure there are as many ways to blog as there are bloggers, but I do have a specific method that I follow and wanted to share that here. It’s not really anything unexpected.

Platform

First of all, the host I chose for my demystifyingCOBOL domain is SiteGround, which provides WordPress as my site manager. I maintain my blog through the WordPress dashboard. It’s not free: I pay a yearly fee to keep and manage my domain. I wouldn’t say it’s cheap either, but it is secure, and the WordPress interface is very user friendly and efficient. It beats web page development from the early 1990’s, when you had to add all your HTML tags yourself, and it sometimes took an hour to load your changes back up to the server. You can really see the difference when you “lived the dream”. With WordPress, I just basically add my post content and hit “publish”.

Ideas

I get my inspirations for each blog post from a variety of sources. Sometimes it’s something that I remember from my many years experience as a COBOL Programmer, or it might be something new to me that I came across in my related readings. For example, I enjoy reading about COBOL history, as well as modern innovations such as Digital Transformation. I’m also intrigued by women in technology and would love to write more in that area.

Template

In terms of format, I try to keep the length to around 500 words. Also, as a rule, I include the following in each of my blogs:

  1. An appropriate title that is descriptive of the topic discussed. The title should try to catch the reader’s attention with key words.
  2. At least 3 paragraphs of text. Add headings to break up the blocks of writing.
  3. Links to supporting articles or facts presented as hyperlinks. Don’t add the whole link in the text. Put a shorter description instead.
  4. Multimedia such as images or videos, if appropriate.

The Ending

The last sentence or two in a blog may be the most important, because it’s what the reader is left with and should be strong. It should call the reader to action, to somehow ask them to relate the blog content to their own experience.

The following are some examples of types of endings, specifically applicable to this COBOL blog, but they can be used in other contexts as well.

  1. Ask a question such as “what would you do differently if you were an aspiring COBOL blogger?”
  2. Suggest a challenge like the following: “try to come up with your own COBOL related blog topic and see where it takes you.”
  3. Ask the reader to help by sharing this blog post in a COBOL related forum that they belong to.
  4. Offer help with any COBOL-related questions that the audience may have or ask what content they would like to see in future blogs.

 

The most important thing about blogging is to pick a topic that you enjoy writing about. The rest should fall together naturally.

 

The Venting of a COBOL Programmer Baby Boomer Tailgater

Background from Canva, Edited in Canva to add text

Like the last child in a very large family, I was born at the tail end of the Baby Boomer generation–1964. As a result, I always seem to be at the end of the receiving line for everything in my life. I’ve had to compete with a large number of others and work very hard for everything I’ve ever gotten. Looking back, it reminds me of the ‘more please’ scenario in Oliver Twist: you work very hard for what little you get, but you still have to work to get more.

Entering University and the Job Market

By the time I finished high school, for example, Universities, Colleges, and the job market, in general, were full to the maximum. There were mass lineups to register for University (it was a multi-day event), and there were rooms full of people writing tests for government jobs. I had to work hard to start out on the bottom. When I did start out at the bottom, it was tough to get a raise and move to another level. In the job market, I competed for higher-level jobs that I couldn’t get because I didn’t have the highest education.

The Education Cycle

When I realized I needed more education to get to a better job (or even to keep my job), I went back to school. The problem was that I ended up in another field that was already saturated with the Baby Boomers that had come before me and advanced. It seemed to be a cycle: go to school, end up in a dead-end job, go back to school, etc. I did the only thing I could do…go back to school again. This time I was a little luckier. I picked a high-tech field at the beginning of the mass need for computer-trained workers—Y2K. The head of the line, at last, I got into a higher-paying job. Advancement was available. As the technology field took off, the problem was that the competition came from, not only the older Baby Boomers, but also the post Baby Boomer generation who were quicker and, of course, younger. As a result, I retreated from the Java jobs back into the COBOL/Mainframe jobs, where I knew the competition would be older, and I could potentially keep up.

Retirement?

As retirement looms, it’s still not looking good for those of us on the end of the line. By the time I retire, I don’t know if there’ll be funds left in the government pension for me. I may have to continue to work to pay for the pensions of the younger generation, and ironically, the older generation who took all the high-paying jobs. I can only hope that I don’t get sick and need one of the hospital beds being used by the other Baby Boomers who came before me. If I wait for everyone else to retire, I hope to finally come into my own in the job market—time will tell.

 

 

 

COBOL is Finally Trending

Background from Canva, Edited in Canva to add text

The COBOL programming language became 60 years old in 2019, and the Mainframe environment turned 55. During that time, many technology trends have come and gone. Nevertheless, COBOL has managed to persist through the introduction of PCs (Personal Computers), the Internet, and the popularity of the Java programming language. These major trends seem to find a way to incorporate COBOL instead of eliminating it. The last couple of years, especially with the Global Pandemic, have not been any different in terms of technology trends that have impacted and even strengthened, COBOL. This article touches briefly on 5 of those trends.

  1. Modernization:

One such trend is the Modernization of Computer Systems. For example, there is currently a trend for industries to introduce newer technologies to work with and enhance their existing tools. According to a Micro Focus survey, 70% of companies would rather use this method than replace their old systems. In this trending approach, the COBOL code itself could be modernized, and/or modern interfacing technologies could be introduced.

  1. Digital Transformation

Similarly, an extension of Modernization is Digital Transformation, where organizations rethink their (old) legacy systems in order to overhaul processes, operations, and relationships with customers. In this procedure, the existing COBOL code is kept but modularized to be used with newer technologies like the Cloud.  As Bartollk (2020) mentions in his article,  COBOL forms the Basis for Digital Transformation, in Digital Transformation, the existing system is recognized as an essential foundational technology and is preserved.

  1. New Demand for COBOL Programmers

Since the Covid Pandemic, there has been a higher demand for COBOL programmers, because the old systems are the ones paying the associated benefits such as unemployment payments. According to an article by Murray (2020),  Sudden Demand for COBOL Programmers – They Need Help Too!, COBOL programmers are coming out of retirement to fulfill the need for people to maintain these Benefit systems. This requirement to process unemployment claims on often 40-year-old systems has created a spike in jobs for COBOL programmers.

  1. COBOL Course revival

Another recent trend involves the revival of COBOL courses. Most universities and colleges stopped teaching COBOL many years ago, but in response to the demand caused by the pandemic, two of COBOL’s big names, Micro Focus and IBM, have begun rolling out COBOL courses for both beginners and professionals.

  1. Artificial Intelligence

Artificial Intelligence (AI), in terms of COBOL code translation, is another trending topic in the field. For example, the automation involved in AI makes it possible to translate millions of lines of code quickly and generate test cases equally as fast. In this way, legacy code could be replaced with newer technology. In the case of COBOL, an option would be to replace the legacy COBOL code with Java code.

What’s Next?

It is remarkable to see that, after 60 years, COBOL is still such a relevant and newsworthy topic. After all the recent trends related to COBOL, we can only imagine what may be next.

What trends have you noticed lately in the programming world? Are there any that have affected you personally?

Listening for ‘COBOL’ in Social Media

Background from Canva, Edited by the Author

Part of providing content through Social Media is to ‘listen’ for information about your chosen niche in order to understand the conversations that you may want to become involved in. Since my focus is COBOL, I make it a point to listen daily for news and articles related to the COBOL programming language. If you have a strong interest in a topic and you are a regular Social Media user, your Social Media listening should evolve naturally as part of that interest. For example, I have instinctively incorporated listening for COBOL topics into my daily Social Media routines, not only to keep up with content others are providing, but because I am genuinely interested in the information shared.

Favorite Social Media Monitoring Tools
Google Alerts

One of my preferred Social Media listening tools is Google Alerts. I set up a daily alert to listen for COBOL content. The results–which generally include articles, courses, and job opportunities–are sent to my email. I can quickly scan through them to find the ones that interest me. I favor this tool because it is free, and it gives me a summary of the information that I am looking for.

A screenshot of an example of a Google Alert email
LinkedIn and Facebook Searches

Another of my favorite listening methods on Social Media is to search within the applications. For instance, if I search for COBOL within LinkedIn, I get lists of courses, groups, companies, posts, events, etc., all content within the LinkedIn realm that concentrates on COBOL. Similarly, a search for COBOL in Facebook provides related groups, posts, pages, etc. I perform these searches frequently enough to know what is new in these applications in terms of COBOL. I like to use these types of searches since I can perform them easily while I am reviewing my newsfeeds.

A screenshot of a search for COBOL within LinkedIn
A screenshot of a search for COBOL within Facebook
Sources of News and Updates
Facebook Newsfeed

One of the best sources that I have of news and updates on COBOL-related topics is a Facebook group called ‘COBOL Programmers’. It has about 18,000 members, and there are frequent, current posts. I have joined this group to get updates into my newsfeed which I review daily. There are articles as well as interesting discussions in this group. This source of information is useful to me since the members are mostly experts in the COBOL programming field.

A screenshot of a COBOL programmers group in Facebook
LinkedIn Newsfeed

Another great source of current COBOL information and discussions are the ‘Mainframe’ group and ‘COBOL Programmers’ group on LinkedIn. They have approximately 47,000 and 15,000 members, respectively. There are frequent, current article and discussion posts to these groups by industry professionals, which makes these groups valuable sources of information.

A screenshot of a COBOL programmers group in LinkedIn

 

As users of Social Media, we are all listening to our chosen topics. Did you also find that your Social Media ‘listening’ developed naturally, or did you consciously create a listening strategy?

 

Analyzing Diverse Target Audiences in COBOL Blogging

Original photo, Edited by the Author to add text

In general, regardless of the online group you are trying to communicate with, you must be aware that your audience will be diverse in terms of gender, generational and cultural influences.  In the context of my interest in blogging about the mostly non-technical facets of COBOL programming, there are two main types of audiences. First, there are the seasoned, technical, fellow COBOL programmers, who can identify with the various discussions. These are the older generation, who may be looking for a good COBOL-related article from someone they can relate to. A second main audience would be a younger group with an interest in COBOL but not necessarily experienced or informed technically. They are a newer generation who may be starting out in their programming career and are looking for technical information. It is important to be conscious of the unique needs of each group when deciding on a communication style.

Audience #1—Experienced Fellow COBOL Developers

The first and probably the largest, audience in my COBOL-related online communications are COBOL programmers. The article, The Inevitable Return of COBOL, states that the average age of a COBOL programmer is fifty-five. Also, an Evans Data Corporation (2019) survey found that 27.5% of software developers in the world are women. Thus, the demographic of an online audience of COBOL programmers is probably men around age fifty-five. Based on this demographic, some psychographic information about this group is that they are conservative, upper-middle-class, and are followers. In terms of unique characteristics, according to the survey mentioned, one-fifth of men software developers have a personal interest in the technologies they are using. Consequently, one in five of my main COBOL audience have a personal interest in COBOL technologies. When communicating with this audience, the fact that this group is highly technical must be considered, since they will be more critical of any technical items discussed.

Audience #2—Younger, less experienced, Group with an Interest in COBOL

The second audience consists of the younger listeners, who have an interest in COBOL-related online communications. In the online environment, I am assuming that the demographic of this group would be well-educated people younger than fifty. Based on this demographic, some psychographic information about this group is that they are trendy, leaders, who may have an interest in technology in either a formal, professional way or informally. When communicating with this audience, I must remember that they may not have a full understanding of COBOL or technical terms in general, and there will be a need to explain things in more layman’s terms.

In conclusion, this has been a short analysis of two diverse target audiences of non-technical Cobol-related discussions. The first group includes COBOL programmers around fifty-five years old, while the second group is comprised of all listeners, younger than fifty, with an interest in COBOL.  This analysis has emphasized how, as a blogger, it is important to know your audience so that you can be relevant and inspire them to take action.

Which audience type do you fall into? Are the assumed psychographic attributes correct for your group? Can you identify another audience not included above?

 

 

A COBOL Programmer’s First Job–1996

Image from Cava, Edited in Canva to add text

Fresh out of my Programmer Diploma course in early 1996 and feeling great, with 2 COBOL courses, a “C” programming course, and a small intro to Visual Basic under my belt, I was ready for my first IT job. I was, of course, unaware that the first version of Java would be released in January 1996 and what that would eventually mean to the future programming world. I had COBOL in my focus and wanted that to be my first IT job.

The Job Search

A job hunt in 1996 was very different than it is today. If you were looking for a professional job in a large company, which a lot of programming jobs were back then, the first thing you did was to buy a Saturday newspaper and review the “Careers” section. This section featured those companies that had the most money to take out large ads to attract the best candidates. You would also go, in person, to the employment centers to see what jobs they had posted on their boards. This was a good way to get a contact name, address, and phone number. Word of mouth or Networking was also a popular route to find a job. If you knew someone that could refer you, that was one of the best ways to get your foot in the door. Even if you didn’t know someone, you could always do a cold call and ask to speak to someone in Human Resources. An uninvited solicitation wasn’t considered the best approach, but it was something to try when all else failed. Similar to today, you could register with an Agency to help you find a job in your field. However, unlike today, the agencies didn’t seek you out through Social Media, you had to register with them and follow up by phone. If you were lucky enough to get a contact name and address through one of the above methods, you still had to prepare a mailing package, which included a custom covering letter and your resume. You could then follow up by phone in a couple of weeks to see if it had been received. By today’s standards, a very time-consuming and uncertain process.

The First Job

I ended up sending out approximately 60 resumes and covering letters. Ironically, it was the first one that I sent out that gave me my first job offer. In school, I knew someone who had done their Coop work terms at Metlife. He suggested that I apply there and gave me a contact name and address. I ended up having an interview. I had my heart set on a programming job, but they were interested in my degree in business and offered me a “Business Consultant” job. I accepted immediately. The job was to act as a liaison between the business area and IT. Today, this would be a Business Analyst position. I was to query the data to find answers to business questions.  All in all, a very cool first IT job.

My first IT job description letter
My first IT job offer letter
Finally, a Programmer

After a year in the Business Consultant role, the company was looking for programmers. Someone in the area suggested me, and I transferred into a job as a Programmer. That was where my COBOL career officially started, but over the years I’ve often used the skills that I acquired in that first job in writing and interpreting SQL. It was fortunate for me that I was able to switch when I did since Metlife was bought out by another company a year later. A lot of people were laid off, but the programmers were kept on for data conversion to make sure that the data was compatible with the format of the new company. At the time, I was just happy to finally be a programmer.

 

Do you recall your first IT job? Was it a positive or negative experience?