What do computer programmers do? Computer programmers spend a lot of time at their desks. They must be doing something, but most people have no idea what that something is. International Programmers' Day is a great time to learn what programmers do on a day-to-day basis, and to celebrate everything they do when they create software that assists us with numerous activities.
The History of Programmers' Day
The history of Programmers' Day begins in Russia in 2002. There, two men, Valentin Balt and Michael Cherviakov, worked for a computer software company called Parallel Technologies. In 2002, these two men decided to gather signatures on a petition to the government of Russia, proposing that there be an official holiday to honor computer programmers and everything they do. Approximately 7 years later, on July 24, 2009, the Ministry of Mass Media and Communications of Russia agreed to announce an official Russian holiday to honor computer programmers. This body of the government drafted an executive order hailing the new holiday.
Finally, on September 11, 2009, the president of Russia, Dmitry Medvedev, signed the bill that made Programmers' Day happen. It took some time, but Balt and Cherviakov's idea finally became a reality. While Programmers' Day is not an official holiday in the US, it is none-the-less a day observed by programmers and non-programmers alike.
When Does Programmers' Day Take Place?
Programmers' Day is celebrated on the 256th day of each year, which is September 12th within a leap year and September 13th within a general year. This is significant for programmers, as Wikipedia explains:
"The number 256 (2 to the eighth power) was chosen because it is the number of distinct values that can be represented with an eight-bit byte, a value well-known to programmers. 256 is also the highest power of two that is less than 365, the number of days in a common year." In binary code, the day is read as 1111 1111.
If you are a programmer, you will notice that 1111 1111 is really 255 rather than 256. However, the code is correct because it is the 256th value. According to ProgrammerDay.info, "January 1st is 0000 0000 so if you celebrate Programmer Day on the 255th day you're guilty of an off by one error."
What Kind of Work Do Computer Programmers Do?
So what are we celebrating when we honor our programmers on International Programmers' Day? Well, we need to know what programmers do in order to celebrate everything they do. Sokanu.com tells us that "[a] computer programmer, or coder, is someone who writes computer software," and also that "[a] computer programmer figures out the process of designing, writing, testing, debugging/troubleshooting and maintaining the source code of computer programs. This source code is written in a programming language so the computer can 'understand' it. The code may be a modification of an existing source or something completely new." So let's take a closer looker at each of these jobs from the prospective of someone learning why we celebrate Programmers' Day.
There is some debate regarding whether or not the design element of the work of a programmer is an art or a science. In reality, as Sokanu.com reminds us, it is both. An effective programmer must be able to see the aesthetic value of a design in order to properly engineer the code for the design. Then he/she must make sure the design makes sense to the average software user.
Writing the code itself is the meat-and-potatoes of what the programmer does. Writing binary code can be challenging and grueling, so it takes a decent amount of stamina to look at and arrange those numbers all day long. But programmers' writing is what allows us to have all those phone apps and computer functions with which we interact daily.
When writing, a programmer must constantly go back and test what he/she has written. The design, of course, is not worth much unless the program functions correctly.
A programmer must know how to fix errors in a timely manner, often under the stress of tight deadlines, since many people wait for a new program to be debuted. People become impatient when things don't work properly, making the debugging/troubleshooting function a key part of what programmers do.
Maintaining the source code
Since elements change so rapidly in the world of computer programming, a programmer must keep his/her software up-to-the-minute. It is particularly important to keep software up to date within the competitive world of computers, where everyone is constantly racing to stay ahead of the game.
Ways You Can Celebrate Programmers' Day
So, we can see that there are many reasons to honor your favorite computer programmers on Programmers' Day. And what can we do to celebrate? ProgrammerDay.info has some suggestions:
- Speak in code (or pseudocode) all day. Okay, this might be tough if you are not a programmer. Come to think of it, this might be tough even if you are a programmer. Certainly, very few people would understand you.
- Decorate a tree with zeros and ones to make a binary tree. This could be fun. At least this is something the whole family can do together.
- Make Happy Programmer Day cards using ASCII Art. This takes a bit of knowledge about ASCII Art, but one could use a different application if necessary.
- Have a contest for the best binary pun/programming joke. This could be great for a bunch of programmers at a party. "A programmer walks into a bar…"
- Have a programmer-themed cocktail. Binary punch, anyone?
Thus, Programmers' Day is definitely a day to be celebrated. All over the world, we should show our appreciation for programmers this September.
Are you a computer programmer? Let us know in the comments how you'd like to be honored on this special day.