I had exposure to Python language prior to this class. Initially a math student, I was forced into taking computer science courses in first year and learned Python. It was actually very interesting going over the python language using the lessons.  Although I have already learned python language once, looking at it again in history class showed me that there is many different ways to use it.

Programming Historian site is a tutorial site which tries to teach people programming for more practical needs. The tutorial begins with simple string function such as creating “Hello World”.  The lessons quickly advance to something of more practical use of finding frequency of the words on the website.  The site was made to be very friendly to people who might not know any coding.  By going through the lesson, the tutorial shows the glimpse of potential that programming has. Python could be used create a program made specifically to fit the needs of the research and it could cut down significant amount of time. I was able to look at all the lessons provided on the site. Lessons were quite challenging to understand at first and looked intimidating. But once I look it line by line and understood what each line did, it was actually very easy to understand what was going on.

As always with the code, I found it very tedious and frustrating when it came to checking for errors. Since the code would not work properly if there was a single letter that is different, if the coding gets really long and complicated, it is very difficult to fix. The debugging sometimes cannot pinpoint the error as well and this could be a nightmare situation if the program written is hundreds of lines long. The frustration with the error lessens with more study on the python and its structure since eventually you will be able to figure out why it does not work and where it is causing problems.

I believe programming can be very useful for historians to learn. Although it is useful it is still very difficult to learn. One might wonder why not just hire someone who can program and get them to build you a program? Although this can be done, hiring programmer who do not have the knowledge on the field of research might not be able to deliver the same quality of worked that might have been done by who knew exactly what to build. Learning programming is like learning a second language. Although it could definitely prove to be useful, it is hard to master. However, by learning it, it opens up another door for person to communicate their idea to the world.