Introduction_to__Java_programming_Language.ppt
Friday, April 23, 2010
Photos, Slides, Videos
A Decent video on the Basics of Java Programming.
Introduction_to__Java_programming_Language.ppt
A great video for computer science teachers who want to explain what computer science is all about. Sort of long, but great.
A video that explains what a processor is and does.
A video that explains memory and disk drives.
An introduction to the Java programming language - slides
Introduction_to__Java_programming_Language.ppt
Games, Maps, Cartoons, and Archival Photos
Historical Computing Photos
An abacus - this was the original calculator. They are still used today in China and the middle east.
A Slide Rule - This was used to perform complex calculations quickly. It preceded the electronic calculator.
A drawing by Leonardo da Vinci of a gear-driven computing device - this was never built.
Jacquard's Loom - this was invented by Joseph Marie Jacquard in 1801 and used punch cards to program a pattern to weave. It is probably the very first example of machine computing for industrial purposes, and modern computers are still based upon the idea behind Jacquard's punch card system.
The Hollerith Desk - This was invented by the founder of IBM and was first used to automate the 1890 census. It saved the U.S. government more than 5 million dollars, and is the direct precursor to electronic general-purpose computers.
The Harvard Mark 1 - this was the first electro-mechanical computer. Though much more advanced in terms of speed and storage, modern computer architecture, conceptually speaking, is essentially unchanged.
The first computer bug - This was found in the Harvard Mark 1 by Grace Hopper, and represents the first computer glitch. The term "bug" originated from this. Yes, the first computer bug was literally a bug!
A Few Interesting Cartoons
Don't overdo it!
Welcome to the 21st Century.
Not a cartoon, but still kind of amusing.
Interactive Communication
Comments are enabled on all posts so that interactive communication is readily available.
Recommended Web Sites
Here some recommended websites:
W3Schools - this websites contains vast resources for learning lots and lots of different web-based programming schools. The Javascript section is particularly recommended, but this website is great for learning many web-based skills.
MSDN - if you are interested in programming applications that run on Microsoft Windows, then this is the place to go. It has pretty much everything you need to know about programming for Windows.
Eclipse.org - Eclipse is an industrial strength Java developer's tool. It is free, open-source, and through the use of plugins, can support many, many types of programming, including web-based programming in multiple programming languages. Highly recommended.
NetBeans.org - Netbeans is another high-quality Java developer's tool, and it can also use plugins, but it can only support Java. It is very easy to use, so if you develop in Java and don't like Eclipse, I would recommend this. It is also free.
Alice - Alice is "An Educational Software that teaches students computer programming in a 3D environment." Alice allows students to learn introductory programming concepts by having them create animations and play games. It's freely available, makes learning to program fun, and has good tutorials.
Java API Specification - this website contains all the documentation for the Java programming language. It is a reference for the entire Java language. It will not teach you to program, but if you ever program in Java, you will need to visit this site.
Computer Science Teacher's Association - this is the a comprehensive website for Computer Science teachers and it contains lots of useful material. Membership is recommended, but there are also free materials available.
Science Buddies - this is a good website for science teachers.
MOSS - MOSS is a free service for detecting software plagiarism. Unfortunately, software plagiarism is rampant in computer science classes. In college, I witnessed more than a few people get expelled for it. This service works by detecting similarities in submitted code, and it works well. Many universities use this service.
5 reading responses
Rationale
Computer science has many, many instructional books, but most of them revolve around a specific subject such as programming language or an operating system. Furthermore, most fiction books revolving around computer science have some aspect of them which is incorrect and therefore misleading. Therefore, in this reading response log, non-fiction books were chosen which where possible, are practical and/or interesting. Because students perform better and enjoy school more when they enjoy class, a variety of books were chosen, from history to home automation to appeal to the widest possible range or students. If students don’t like one of these books, perhaps they will enjoy another.
5 web site evaluations
Name of Site: Java Beginner Website Address: http://www.javabeginner.com/
Copyright Date/Last Update: © 2007-08 javabeginner.com. Even though the copyright date is 2008 instead of 2010, further research indicates that the site’s domain name will not expire until 2014. Author/organization credentials: The rights to the contents of this site are reserved and owned by Javabeginner.com. No part of the contents of this site may be copied, reproduced, transmitted, distributed, modified in any form or by any means - graphic, electronic, mechanical, photocopying, printing, recording, taping or stored in an information storage and retrieval system - without the written permission of javabeginner.com. The contents may not be displayed on other web sites other than this one. The preface on the site’s home page is addressed by Srini Appikatla, who has also authored the sites http://www.jdbc-tutorial.com/ and http://www.interview-questions-java.com/, both of which are extensive in their respective subject areas. Website design and ease of navigation: This site is extremely simple and intuitive to navigate. There is a left-hand menu that contains links to portions of learning about introductory Java programming, and the links are arranged so that the links are meant to be read in succession from top to bottom. Each link has very clear and concise title, making this site very easy to quit reading and come back to later. Furthermore, that is the extent of the complexity of the navigation: only one link needs to be clicked to get anywhere on the site. This is very useful because it reduces the frustration that many informational sites tend to generate. Essentially, it couldn’t get easier to navigate this site. However, there are some drawbacks. The design of the site is generally clean and simple, but there is obtrusive advertising throughout the site located within the learning material. This can be annoying, but it doesn’t make the site confusing.
Copyright Date/Last Update: © 2007-08 javabeginner.com. Even though the copyright date is 2008 instead of 2010, further research indicates that the site’s domain name will not expire until 2014. Author/organization credentials: The rights to the contents of this site are reserved and owned by Javabeginner.com. No part of the contents of this site may be copied, reproduced, transmitted, distributed, modified in any form or by any means - graphic, electronic, mechanical, photocopying, printing, recording, taping or stored in an information storage and retrieval system - without the written permission of javabeginner.com. The contents may not be displayed on other web sites other than this one. The preface on the site’s home page is addressed by Srini Appikatla, who has also authored the sites http://www.jdbc-tutorial.com/ and http://www.interview-questions-java.com/, both of which are extensive in their respective subject areas. Website design and ease of navigation: This site is extremely simple and intuitive to navigate. There is a left-hand menu that contains links to portions of learning about introductory Java programming, and the links are arranged so that the links are meant to be read in succession from top to bottom. Each link has very clear and concise title, making this site very easy to quit reading and come back to later. Furthermore, that is the extent of the complexity of the navigation: only one link needs to be clicked to get anywhere on the site. This is very useful because it reduces the frustration that many informational sites tend to generate. Essentially, it couldn’t get easier to navigate this site. However, there are some drawbacks. The design of the site is generally clean and simple, but there is obtrusive advertising throughout the site located within the learning material. This can be annoying, but it doesn’t make the site confusing.
Response and recommendation for use: This site makes excellent supplemental reading for students who want or need a little extra review, as it goes into some depth on most sections of the site. The site contains lots of well-commented code samples which are a boon to beginning programmers. Due to the fact that the site references language-agnostic programming concepts at times when a beginner may not be familiar with them, I would not recommend this site as a global Java learning resource for students. However, this site does contain a vast amount of learning material, more in fact than most programmers will ever use, and because of this fact, it is great for computer science teachers who may not know Java but want to teach it, for example, for an AP computer science class, and would like a wide array of Java material to choose from, or would just like to expand their existing Java knowledge.
Name of Site: Computer Science Unplugged
Website Address: http://www.csunplugged.org/
Copyright Date/Last Update: There is no copyright date on this site, but it is copyrighted under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License. Basically, this means that teachers are allowed to print out and photocopy any material on the site without permission, but they have to attribute it to the authors of the site. You can download a PDF version of the site authored by Tim Bell, Ian H. Witten and Mike Fellows, adapted for classroom use by Robyn Adams and Jane McKenzie, and illustrated by Matt Powell, which is © 2005 Computer Science Unplugged.
Author/Organization Credentials: The site is sponsored by Google, Inc., the University of Canterbury, and Carnegie Mellon University. Tim Bell, the instigator of the site, is Associate Professor and Deputy Head of Department at the University of Canterbury. Ian H. Witten, another author of the site, is a computer science professor at the University of Waikato in New Zealand. There is no information on Mike Fellows.
Website design and ease of navigation: The website design is somewhat dated, but its cleanliness and simplicity make the use of this site straightforward. A left-hand menu contains links to various kinds of material that the site had to offer, including activities, books, and resources for teachers. Many of the left-hand menu items contains a sub-menu which is not as obvious as it probably could be, and it is easy to miss for a new visitor to the site, potentially causing the visitor to miss out on valuable information. Furthermore, left-hand menu items are highlighted when a user is visiting the corresponding page, but the highlighting is extremely subtle unless the left-hand menu item contains a sub-menu. It can make it difficult for a user to remember where he or she is in the site. However, these are relatively small caveats and can be overlooked because of the great content on the site.
Response and recommendation for use: This website is a wonderful resource for computer science teachers. There is a free PDF available for download which contains lots of different lessons for learning about various topics on computer science. The book is targeted towards primary age children, and because of this fact, some teachers may want to modify some of the lessons to accommodate secondary students. However, computer science can be a difficult, complex, and therefore a confusing subject, and in my opinion, most of the lessons, though admittedly childish in nature, make it fun and interesting to learn computer science for any age. The site also contains numerous activities, also targeted at primary age children, but still applicable for any age. Most of the explanations of the material are very similar to those my professors in college gave us. Finally, this site contains extensive links to other sites in which more teaching resources can be found, albeit some of the links are dead. However, for any computer science teacher looking for lesson plans, this is the first site I would recommend, no matter the grade level.
Name of Site: Wikiversity School of Computer Science
Copyright Date/Last Update: The last update occurred March 2010 and the site is licensed under the Creative Commons Attribution/Share-Alike License.
Author/Organization Credentials: This is a Wikimedia project, which means it is managed by the Wikimedia foundation, which also manages Wikipedia. As with Wikipedia, there is no one author for this website, but rather, many authors contribute to many different portions of the site. Authors may or may not be qualified to write on the site, but material may be challenged at any time by anyone. Because material which is incorrect is likely to be challenged, incorrect material tends to disappear over time, but can still exist.
Website design and ease of navigation: The design of the site is simple, pleasing the eye, and organized. It is easy to scan the front page and find what you are looking for. If a user ends up on the wrong page, it is also easy to correct that due to the Browse feature, located in the left-hand menu. In addition, there is a search engine built right into the site which works adequately well. Therefore, the user has a lot of options to navigate the site and find what he or she is looking for, or simply wade through the site. One drawback of the site is the sheer number of links on the front page. They are easily visible and well-organized, but the amount of them can still force a user to spend time reading them all in search of the correct topic. In spite of this, the sheer amount of information on the site makes it difficult to organize, and it is unlikely that a much more efficient organizational scheme would be possible.
Response and recommendation for use: This site contains a vast amount of information, and it therefore makes a great resource for teachers who know what curriculum they need to teach but need a good starting point for planning lessons or organizing the curriculum. This site provides a multitude of lessons which teach several different programming languages. Java is among the most prominent, which is good for secondary teachers because the AP test tests Java. Many of the lessons contain extensive details which may not be directly related to the lesson but are very helpful, such as installing the required software to complete a lesson.This is definitely a plus because it allows teachers to communicate this information to students. However, in general, I would caution teachers to thoroughly check the material on this site before recommending it to students, as it is always possible that the information could be incorrect. Finally, this site is relatively new and therefore lacks material that would make it more complete. Because anyone can edit this site, teachers can create an account and put their own lesson plans on the site. This not only shares the lesson plan with other people to read and improve; it also provides a central location to keep lesson plans.
Name of Site: Faculty Resource Center
Copyright Date/Last Update: (c) Microsoft 2009
Author/Organization Credentials: This site is owned and operated by Microsoft, which is, as many people know, the world leader in operating systems sales. The license for using the site can be found here. Anyone may submit content to the site, making the quality of the material worth some scrutiny.
Website design and ease of navigation: This website, as with most Microsoft websites, is pleasing to the eye, has excellent usage of color, and is fairly straightforward to navigation. Users of msn.com, hotmail.com, or other Microsoft websites will find this site to be familiar. Navigation is possible through a search engine with advanced features such as search by keyword, grade level, computer science area, or type of technology. Users may also browse by computer science area, which causes every lesson uploaded in every subject area to be displayed. Many lessons are in languages other than English, and there are enough of them to make finding English lessons more time-consuming than expected. There is no way to filter by language, which can be frustrating on some subjects of the site which contain many non-English lessons.
Response and recommendation for use: This site centers around Microsoft technology, and as such, contains some material which may be inappropriate for simply impractical in a secondary school setting. For example, there are many lessons on Microsoft Expression, a proprietary tool for designing websites and Windows desktop software. Because it is largely a design tool and not so much a programming tool, this would not be appropriate for a computer science class. However, this is more than offset by the “programming fundamentals” section, which has more than 200 labs, books, projects, exams, quizzes, etc. covering secondary computer science. No matter the programming language, this site is an excellent place for teachers to find lesson plans. It is important to note that only content covering Microsoft programming languages/products may be uploaded to the site, so that is all there is available. However, Microsoft programming languages are very similar to in grammar and syntax to other common languages such as Java and C++, and it would therefore be easy for a teacher to modify a lesson to suit his or her needs if necessary. I would recommend this site for computer science teachers who want interesting and practical material to use for conveying computer science concepts to students, as there are quite a few lessons which revolve around creating a game of some kind. This would not be a good resource for computer science students, as they may not be able to choose lessons within their skill level.
Name of Site: Google Code University
Copyright Date / Last Update: ©2010 Google, Inc.
Author / Organization credentials: This site is owned and operated by Google, Inc., the world leader in search engine technology and a world leader in open-source, free-of-charge, high-quality software libraries. Anyone may submit content to the site, but in order to do so, the user must have taught a course at a university. The user must then go through an approval process conducted by Google, Inc. Any material present on the site is licensed under the Creative Commons license, so anyone may reuse and modify the material.
Website design and ease of navigation: Google Code University is very easy to navigate. In the Google tradition, it is a white page with black text and blue links. A left-hand menu contains links to all the content on the entire website, and the titles of the links have been carefully chosen to make them clear, concise, and produce the expected page when clicked upon. There are links to Google software libraries which may be used for teaching, a link to computer science curriculum resources, and last but not least, a custom Google search which searches university websites for the given search term. In summary, this site is pleasing to the eye and users will spend less time searching and more time using this site than most others.
Response and recommendation for use: Google Code University contains high-quality material reviewed by employees of an extremely reputable company, all free of charge. Because all the computer science lessons come from either Google or from a university, I would not recommend the courses on this site for students because some of the reading is difficult or requires previous programming knowledge, and the courses on the site require scrutiny and may require modification by the computer science teacher. However, the “web security” and “languages” courses and all other links in the left-hand side of the page list downright spectacular resources for students of all ages. Any non-course section of this site would provide excellent resources for extra credit material, and the Web Security courses, the Python language course, and the “Tools 101” section would be good recommendations for any student who is considering a career in web development. In summary, this site is best suited for teachers who want to provide some enrichment to their students’ academic focus, or especially for teachers who want to show their students that they are learning something practical.
Subscribe to:
Posts (Atom)