Annotated Bib
Annotated Bib
Ben-Ari, Mordechai. Objects never?: well, hardly ever, Communications of the ACM, 01
September 2010, Vol.53(9), pp.32-35
This article goes over object oriented programming. This article talks about the advantages of
object oriented programming and how it is used in the real world. This article delves into how
nitpicky object oriented programming can be and how for new users it can be hard to code
sometimes because there are so many warnings and errors like “unfriendly environment.” The
article goes over how although learning to code with an object oriented language like java or
C++ is difficult, in the long run the person learning to code will be better off when they go to
learn their next language. By learning through object oriented programming the user will have
already met with some the most difficult issues they will face. This article is quite persuasive in
the sense that it focuses on one thing and the benefits on it. This article ignores other
programming types like component based programming but even though it does not touch on
that it does discuss disadvantages to object oriented programming. This article unlike the video
goes over multiple languages that use object oriented programming. My paper will be improved
because of the insight into object oriented programming and how hard it can be for beginners to
learn.
This article discusses how to teach beginners through the use of Java Applets and tutoring
system available over the internet. Data was collected and presented to show how an individual
progresses through various tasks in computing through this tutoring system. The data collected
from the study is presented to show the responses of a class of students to the use of the tutoring
system. He argues that by adopting this computer-based tutoring system as one component
including lectures and collaborative learning experiences the student is more likely to succeed.
His argument was persuasive because he backed up all his points with data. Just as he discussed
java and the outcomes of his teaching style he did miss some important aspects like a data set
that properly showed who was a true beginner vs someone with some basic knowledge on
coding. This article much like the top down vs bottom up article had a study that concluded with
a survey for the participants. I found this interesting because some of the responses did not
correlate to what I would typically expect from someone who is learning to code. This article
will help with my paper by giving me another source to look at a programming language.
Fitzle LLC. “Introduction to Programming with MATLAB.” Online video clip. YouTube, 31
March 2015. Web. 27 October 2018.
This video comes from vanderbilt university, it contains two professors describing why they
choose to teach the language that they do. The language that they are discussing is MATLAB
throughout the video they discuss why they chose that language instead of a more common
language like java or C++. They describe how it integrates computation, visualization, and
programming in an environment where everything is in a familiar mathematical notation. It is
typically used for application development, including Graphical User Interface building. Their
argument was persuasive in the sense that it got the audience thinking about why they should use
their program and the language that they chose. Some points on why they chose this language
were compelling because they showed how easy it it to use this language and also how easy it is
to learn it. One thing that this video does not touch on as much as I had hoped was the difference
between learning to code in MATLAB vs. learning to code another language. This video will
help me throughout this paper by giving me an argument for another language. Not only this but
it will give me a new insight on if programming should be taught on an easy to learn platform or
one of the most specific and difficult ones like java.
This book although older still covers topics that teachers of computer science face today. What I
found interesting was that even during the 1980’s when most of the big computing languages
still had not been invented yet, computer scientists have been looking for ways to teach the next
generation. This book looks into coding being taught in a typical school environment along with
issues the teachers will face when attempting to show students how to code. I found it interesting
how the primary language in the 80s was C# which LOGO came from, LOGO was a
programming language that was taught using turtles that outputted lines kind of like drawings. I
found this interesting because the UNCC Computing department uses java and we initially
learned to code using depictions of turtles that drew lines on the screen. This book will be useful
because the programming language C# allows LOGO to work so it is a C language meaning it
inherits much of its syntax from C++. C# is Microsoft’s version of Java, it was developed
because Microsoft failed to produce an implementation of Java that tied developers to Windows.
If it were not for finding this book I would not have had as much insight into how interconnected
each of the languages are. This book will help me because it gives a lot of information on the
beginning of many of the programming languages we use today.
Michael Lea, Postmedia Network. “Workshop Teaches Computer Coding Skills.” Kingston This
Week (Ontario, Canada), 2016, p. A4.
This newspaper goes over a non-profit teaching beginners how to code. This non-profit teaches
men and woman an introduction to JavaScript. They focus was on improving the digital literacy
of participants along with helping them with learning technical skills in a hands-on, social and
collaborative way. This newspaper article goes into how they teach the participants in the short
period of time they are there to learn. Not only do they discuss how they help the participants
how to code using JavaScript but they also show the hands-on, project-driven aspect of it. They
feel that by showing how one can have fun with programming it will encourage the participants
to seek out programming in the future. There is not really an argument in this newspaper article it
is more of an informative piece on what the non-profit is doing to help teach beginner coders.
The most compelling part about this piece is how much of a difference their program is making
for the participants. This article much like some of the others I have looked into is primarily
focused on one language and only one way to code. This newspaper article will help in my paper
by giving me another language to talk about and analyze when discussing which is best.
Saito, Daisuke, and Tsuneo Yamaura. “Applying the Top-down Approach to Beginners in
Programming Language Education.” Interactive Collaborative Learning (ICL), 2014
International Conference On, vol. 3, no. S4, 2014, pp. 311–318.
This article I found through Atkins library. This article delves into top down vs bottom up
programming and discusses their study on which method is best to teach beginners through. This
article explains the difficulty in teaching beginners how to code it properly explains all the
aspects that go into it especially how beginners must “fully understand the language grammar as
well as how to implement quality in the source code” to be a successful programmer. This article
is persuasive through their study with teaching beginners and shows the difference between the
quality of the code from the top-down and the bottom up approaches. By being able to see the
differences in the students code the reader know how each method teaches the student different
skills. Some of these skills are only picked up by the top down, one being how comments and
spacing should look like. Through the top down approach the student can visually see how the
code is supposed to work. The bottom up approach typically showed the student the proper
syntax of the language but missed the visual component. One thing that I wish this article went
into would be how implementing both approaches would impact the student. This article will be
helpful in my paper by giving me another view on what impacts how beginners learn to code.
Seibel, Peter. Coders at Work Reflections on the Craft of Programming. Apress, 2009.
This contains many interviews with many people in the field of computing. Each person
describes how they learned to code along with what language they first learned on. These
interviews not only go over how each person learned to code it also went over things like pair
programming and how they felt about working on a project with others. One of the interviewees
Fitzpatrick finds pair programming fun. He believes it is good for lots of things. He described
how sometimes you just need to think and want to be left alone and not have to worry about
working with someone else. But overall he argument is persuasive for peer programming.
Through these interviews my overall opinion on programming languages did not change much
but now I have a better insight into teaching yourself how to code without a teacher. I found
some of the tips that the interviewees had would be helpful for beginner programmers. As
informative as these interviews are there are some things that are missing like what they would
personally recommend for beginner coders. These interviews will be helpful for my paper by
giving me another perspective to write about, they will help me better understand what helps
beginning coders learnt to code.
Sweigart, Al. Hacking Secret Ciphers with Python ; Beginner's Guide to Cryptography and
Computer Programming with Python. [Al Sweigart], 2013.
This book describes why one should learn to code with Python. It is most popular implemented
as an object-oriented programming language called CPython and is written in C. The other
implementation is IronPython which is written in .NET, .NET is an component-oriented
programming language. Not only does this book discuss what Python is it also shows the reader
how to hack with it but that part I will not be using for this paper. This source is biased towards
Python, the writer believes that Python is the best language for beginners to learn programming
because it is simple and readable. Not only this but it is also a powerful programming language
used by professional software developers. With the writer being so focussed on Python he fails to
discuss other languages. This poses a question to whether or not he may be exaggerating the plus
sides of the language to get more people interested. This book changes my view on Python
because before reading this I had not heard anything about this language. By reading about how
Python can be both an object-oriented and component-oriented programming language it
changes how I view the two. This book will be helpful when discussing object-oriented
programming and component-oriented programming.
Vale, Tassio, and Crnkovic, Ivica de Almeida and Eduardo Santana, Silveira Neto and Paulo
Anselmo Da Mota and Cavalcanti, Yguaratã Cerqueira and Meira, Silvio Romero de Lemos.
Twenty-eight years of component-based software engineering, The Journal of Systems &
Software, January 2016, Vol.111, pp.128-148.
In this article it discussed component based programming. It discusses how component based
programming is used within software engineering. The article describes how object-oriented
programming focuses on the relationships between classes that are combined into one large
binary executable. Verses how component-oriented programming focuses on interchangeable
code modules that work independently and don’t require the programmer to be familiar with
their inner workings to use them. Some component-oriented programming languages are COM,
J2EE, CORBA, and .NET. These languages give the infrastructure to connect binary parts
seamlessly. Finally, the article describes how the main difference between the component-
oriented languages is the ease in which they allow the user to connect the binary components.
This article is successful in giving good information on both object-oriented programming along
with component-oriented programming. This along with the article I found on object-oriented
programming I will be able to analyze which one is better. Overall this article helps to better
understand the differences between the two along with giving me a better understanding on what
some compound-oriented programming languages are. This article will help me throughout my
paper by giving me an reference point when I am looking for whether object-oriented or
component-oriented programming is better.