In searching for a middle school or high school computer
science curriculum for your student here are some points to consider:
1.
Does it include a basic
history of computers? This should include:
•
The first computer
programmer – Ada Lovelace (pronounced “Loveless”), a woman, and the daughter of
Lord Byron, the poet
•
The first computer
designer, Charles Babbage and “Babbage's machine”
•
At least some brief history
of the development of computers through the years.
2.
Does it include computer
terminology?
•
What constitutes a
“computer?”
•
A definition of computer
components:
•
Hardware versus software
•
Hard copy versus soft copy
•
Personal computer versus
mainframe and mini-computers
•
Closed system versus Open
system computers
•
Filenames and file
extensions
•
Central Processing Unit
(CPU)
•
Graphic Processing Unit
(GPU), particularly important for children wanting to be game developers or
testers
•
Random Access Memory (RAM)
– a bonus would be to understand sequential access from a historical
perspective
•
Read Only Memory (or ROM)
•
BIOS (Basic Input / Output
System)
•
Hard disk and floppy disk
•
A brief discussion of SCSI,
IDE, SATA devices and the pros and cons of each
•
Attaching devices using:
USB, Firewire, PCMCIA, and PCI slots
•
Operating system – What
constitutes an operating system? Examples of modern operating systems such as
UNIX, Microsoft® Windows, Apple's iOS, LINUX, Android, and others.
•
Understanding office
productivity software:
•
What is a word processor?
Topics should include fonts, styles, margins, page layout, heading, footer,
header and body styles, margin justification (left, center, right, and
justified or newspaper-style margins), numbered outlines, bulleted text,
setting tab stops, inserting tables, using spell checker, thesaurus, and word
and character count functions.
•
What is a spreadsheet,
including terms for rows, columns, and cells? Topics should include functions
and formatting for dates, numbers, currency, and text. Ideally, the curriculum
will also include some best practices, including using an apostrophe character
(') in front of the numerals for a zip code to indicate that it is a text
number, not one on which mathematical calculations will be performed.
•
What is presentation
software?
•
What is publishing
software?
•
Drawing and photo editing
software examples should also be included. This should provide information
about the various types of images and the pros and cons of each, basic drawing
and picture editing terminology, and possibly some more advanced drawing and
editing examples and tools. Adobe Photoshop is a really excellent product for
creating some more advanced images and budding graphic designers. Learning to
create icons is helpful for the budding computer programmer. / web designer.
Animation creation and editing software is a great tool for anyone interested
in movie making or game development.
•
Ideally, the curriculum
would give examples of when it is best to use each type of product, along the
lines that one could use a screwdriver to beat a nail into a wall, but a hammer
is more efficient; however, if one needed to screw a screw into a board, a
screwdriver works much better than a hammer.
•
Communication protocol, for
example:
•
DON'T TYPE IN ALL CAPITALS
OR THE READER WILL THINK YOU ARE YELLING. I had a customer contact me who was
typing her résumé in all capitals. This is a very unprofessional way to create
a résumé. Additionally, some spell
checkers may not catch mistakes when typing in all capitals, hence the reason
the woman called.
•
While we are on the topic
of résumés, extra large fonts or extra
wide margins used to allow one to fill a page when one has little to no work
experience is unnecessary.
•
Don't use multiple
exclamation points!!!
•
Do use correct spelling and
punctuation, especially in professional communication.
•
Networking terminology:
•
At a very minimum, modern
terminology should be covered to include:
•
CAT-5 cable
•
MODEM, router, bridge,
brouter
•
Repeater
•
Hubs and switches
•
TCP/IP and IP address
•
Network Interface Card
(NIC)
•
Local Area Networks
•
Ethernet and WiFi
•
Transfer rates
•
Dial-up, DSL, Satellite
access
•
Internet, world wide web,
intranet
•
Servers and client
computers
•
Peer-to-peer networks
•
There are many other
networking terms that could be included, but these are the most important for
students at this stage
•
Internet access
•
Browser and examples of
browsers
•
Internet safety. This
should be a special topic to help your child learn how to protect himself or
herself on the Internet. This is a time that would be especially good to
reinforce house rules and go over the potential dangers of the Internet. Examples
include: Not using last names or creating a pseudonym, do give out phone
numbers or addresses, do not tell the name of the city you live in, the name of
the teams played on or where they play, the color or number of the jersey worn.
•
Viruses, adware, and
malware: What are they? What kind of damage can they do, and how do we protect
our computer and our information?
•
Web sites and types
including web page, web logs (aka “blogs”), stores, and search engines
•
Electronic mail (e-mail)
•
Web hosting
•
Hypertext markup language
(HTML)
•
Dynamic HTML (D-HTML)
•
Extensible markup language
(XML)
•
Style sheets (CSS)
•
The curriculum should
include examples of each and directions for creating these.
•
What you see is what you
get (WYSIWIG)
•
FIFO and LIFO (First in /
first out; last in / first out)
•
Graphic User Interface
(GUI)
•
Computer Programming
Note: Before beginning the
computer programming section, your child should have successfully completed the
math topic of converting between binary and decimal . If your math curriculum includes
converting between binary, decimal, and hexadecimal, that is a bonus.
•
Why do we call computer
glitches “bugs?”
•
What is “machine language?”
•
An understanding of
different types of programming languages and types. This should include the
difference between compiled and run-time, or interpreted, languages, the pros
and cons of each, and examples of each type of language, not necessarily
between the programming languages themselves. An example of a compiled language
is C++. Examples of interpreted languages include script languages such as
JavaScript and VBScript. An example of a programming language that is both a
compiled and interpreted includes Visual Basic as it compiles to an
intermediate language (IL), then converts the intermediate language to machine
language at run-time.
•
Object-oriented programming
•
Executables
•
Threads
•
Multi-tasking
•
Handles
•
For Microsoft® Windows
programming, one should also have an understanding of the registry and globally
unique identifiers (GUIDs).
Following are some options for computer science
resources:
Software development web sites to look at:
Compiled versus Interpreted Languages
http://www.vanguardsw.com/dphelp4/dph00296.htm
Visual Basic: Compiled or Interpreted?
http://stackoverflow.com/questions/6002955/visual-basic-net-compiled-or-interpreted
Access: Visual / Access Basic is Both a Compiler and an
Interprer
http://support.microsoft.com/kb/109382
Computer Tutorials, specifically Visual Basic tutorial
http://www.tutorialized.com/tutorials/Visual-Basic/Introduction-to-Visual-Basic/1
Visual Basic Tutor
http://www.vbtutor.net/index.php/vb2010-lesson-1-introduction/
XML Introduction
http://www.xmlfiles.com/xml/xml_intro.asp
No comments:
Post a Comment