CSIT 1100 Final Blog Post

Wow, what a semester!  I don’t even know where to begin.  I suppose at the beginning.  I would like to take a moment though and discuss how I approached this class.  Having had some experience in computing and being fairly computer literate, I expected that we would cover some subject matter that I had at least a low level understanding of.  Knowing that in advance, I wanted to approach this class as though I knew nothing about computers to let Dr. Brown walk me through his Intro class his way.  For the most part, I believe I was successful in that attempt.  We get out of our education what we put into it and if you come to a class with a mindset that you already know everything, chances are good that you won’t get much out of the course.  It was the great teacher Socrates who said, “I know that I am ignorant, but knowledge of my ignorance makes me wise.”  No matter what we think we know, we can always learn from others.  Everyone we meet has something to teach us.  Dr. Brown had a great deal to teach us.

The first couple of weeks were the usual, expected background of the subject matter and getting to know each other.  Week one was the first week I was introduced to Raymond Kurzweil, who piqued my interest.  The whole idea of a technological singularity intrigued me, as did Moore’s law.  Dr. Brown has offered to loan me Kurzweil’s book and as soon as I can free up some reading time, I will take him up on his offer.  This is one of the subjects we discussed that spurred some of my own “out of the box” thoughts as well.  I considered the possibility that if we could be approaching a technological singularity based on the increased production of technological components in smaller and smaller forms, could we not also be approaching a financial singularity as well?  Banks and corporations are getting larger every day, buying each other, taking control of more and more markets at exponential rates.  Wouldn’t it be logical to assume that if we already have banks and corporations that are considered too big to fail, that at some point, it would be possible that one giant corporation would or at least could control every financial and consumer product?  Just a thought that was spurred on by our study of Kurzweil.

Prior to this class, I had had some limited exposure to the binary number system.  I knew how to build a computer, learned how to program in Basic years ago, but honestly had no idea exactly how a computer processed information until week 2 and then later on with the assembly language simulator.  Learning how to translate binary, hexadecimal, etc. was a necessary building block for understanding the way computers “think.”  The Assembly Language Simulator was an invaluable visual tool for learning how computers process the information provided to them in the form of software.  With it, I gained a greater understanding of how the cpu and ram functions.

During week 3, I had fun.  I have built or helped to build several computers in my life.  Completing the project for this week allowed me to do a couple of things.  One, I got caught up on the latest and greatest commercially available computer hardware.  Two, I have the plans readymade for my new pc that I will build in the fall when funds are available to complete such a project.

Getting the opportunity to look at HTML and SQL, even at a low level, gave me the opportunity to get a better idea of how the web as well as databases works.  Though I had previously used the web and databases, I had very little understanding of the programming involved in creating either.  Getting the opportunity to create our own webpages from just a short HTML tutorial removed some of the mystery of the web for me.  I had created webpages before, but always with a prepackaged editor.  I had always considered HTML to be too intricate and complicated to bother with learning.  I found that I was wrong, and with just a bit of practice, one can become proficient with HTML fairly easily.

In creating my Scratch project, I was re-introduced to the archetypal operations of computer languages.  I had fun creating my animation and enjoyed seeing the smiles of those who watched it.  Week 8 generated some interest in programming for me.  I hadn’t had any interest in actually programming since I was in perhaps middle school.

Unfortunately, the topics which held the most interest for me were those of the last few weeks of class.  These were the topics relating to the future of computing and technology as a whole.  This is also when I had to be absent quite a bit from both classes and labs.

In week 9, we discussed computer security.  There was a time when I thought that I would pursue a career in network security.  At that time, I was looking into a program at Fountainhead Institute of Technology.  When I first came to PSCC, I was surprised to find out that this was not a course of study offered by the college.  I was surprised primarily because it is a topic that will never go away.  There will always be a need for network security and therefore there will always be a need for network security professionals.  I don’t quite understand why PSCC would not create a program for that field.  During this week we went into some detail on the history of computer security, hacking, and famous (or infamous) hackers.  We also discussed the federal government’s response to computer security “crimes.”  I notice the hypocrisy in a citizen hacking a network and getting years of prison time, but when the government does the same thing, violating the privacy and trust of its citizens, it is ok in the name of “national security.”  I am also left with the impression that any perceived security is a false sense of security and there is no such thing as privacy.

The last few weeks of the semester we looked at the topics of robotics, artificial intelligence, virtual reality and gaming, and the social implications of computing technology.  All of these topics are of interest to me.  Robotics, at one time, were only seen in science fiction movies, or in my lifetime, on assembly lines.  Now, we can build simple robots at home (or in CSIT lab) using children’s toys as building blocks.  Robotics is a sign of the future, a future that, in some respects, is already here.  I can envision a time when the presence of robots will be the norm rather than the exception.  Artificial Intelligence, to me, is a troubling subject regardless of Asimov’s Robot’s Rules of Order.  Again, in my opinion, the ability of a computer or robotic system to manipulate language is not necessarily indicative of intelligence.  Instead, when an artificial entity recognizes its own existence, and acts to preserve its own survival, that is when I believe artificial intelligence becomes a reality and therefore dangerous.  I say that on the premise that computers and machines act on logic.  If they were to become concerned with their own survival, the logical thing to do would be to eradicate the human race.  We are our own worst enemies, not to mention that of every other form of life on Earth.  Again, the logical thing for intelligent machines to do to protect their own survival would be to eradicate us.  Virtual Reality and gaming is another piece of science fiction becoming reality.  I still can’t wait until the day I can walk into my own holodeck and sail the H.M.S. Bounty across the South Pacific.  Of course, I’m not sure how I would feel about being “jacked in” Matrix style in order to learn Kung Fu rather than spending time in a Dojo, either.  My father already has several pieces of computerized equipment installed in his body keeping him alive.  How many more will be invented?  The possibility of nanotechnology being injected into our bodies to repair damaged cells and fight off cancer is both inspiring and a bit frightening.  We are seeing the use of robotic exoskeletons now for both military and civilian applications.  We are watching the merging of man and machine.  Are the science fiction writers really the prophets they are proving to be?  What other wonders does the future hold for us?  We are proving year by year, that if it can be thought, it can be done.  The future is here.  Are we ready for it?

I absolutely loved this class.  We touched on so many interesting topics and Dr. Brown presented us with access to so many different links and sources of information, there simply wasn’t time to go over it all, speaking from my own experience.  I have asked him to make both the text and the links available to us online after our access to the D2L system expires so that we may be able to have access for later, independent study.  Again, wow. What a semester.  I have tried, in vain, to put all of my thoughts on these subjects into this blog, but honestly, I believe it may take a lifetime to sort them all out.  Very rarely does one get an opportunity to take a “life-changing” class, but this one has given me so much material to think about that I won’t leave it behind after taking the final exam.  Thank you, Dr. Brown.

Virtual Reality

As a kid, I was one of the fortunate ones to have an Atari 2600.  I received it for Christmas from my folks one year along with a plethora of game cartridges to go with it.  I still remember playing it until I had calluses from the joystick and thumb button.   I also have fond memories of Space Invaders and Centipede “tournaments” with my Dad.  We would play together for hours.  My personal favorite was either Donkey Kong or Pitfall, but those games played with dad are now the most important to me.

Although I had two computers which I learned to program in Basic on: a Timex Sinclair, and then the major upgrade to the Commodore 64, I didn’t upgrade to any different game system  until I was about 18 or 19.  Then I got a Sega Genesis.  I played Sonic the Hedgehog until my fingers nearly fell off.  Looking back on it, the most aggravating thing about these early game systems was the inability to save games.  You always had to start all over.  It didn’t matter if it was dinner time or time for homework or what, when my parents told me to stop, that particular game was over until I fired it up and started all over again.

After my oldest son reached about 8 or 9, we got a Sony Playstation.  My favorite games on it were the remakes of the old space invaders, centipede, etc.  This time, I could save my games though!  Shortly after, we got an x-box, and I also began gaming on pc around the same time period.  Having been a long time table-top role-playing gamer, I naturally was drawn to the RPG’s designed for both x-box and pc.  With the x-box games, some of them became a family affair.  Gauntlet allowed 4 simultaneous players.  Even my not so technologically advanced wife at the time joined in.

I have tried on several occasions to get involved in some of the MMO’s developed for the pc.  While I enjoyed what I did play of them, I just never had the time to devote to playing and really developing my characters.  I actually had looked forward to and planned on playing Star Trek Online, but by the time it was released, I just knew I didn’t have the time to devote to it and would be wasting my money.  I have friends who play MMO’s regularly, as do my two older sons (16 and 13).  These games as well as the virtual worlds appeal to me as fun and entertaining, but my time is so limited, I haven’t tried them out yet.  Maybe soon.

We had an xbox360 for a short time, and loved every minute of it.  What I would love to see happen eventually, though, is the Star Trek Holodeck.  I can remember watching every episode of Next Generation and wishing that we had the holodeck technology (among other things).  How awesome would it be to walk into a program and live out your greatest fantasy, or play the part of your favorite hero, while being completely present in all faculties?  Who knows, as with much science fiction, perhaps this will come into existence as well someday?

I like the idea of being able to be whoever you want in these virtual worlds and interacting with people in that way.  I think in some ways, the development of one’s virtual character can be an extension of who we really are in “real life,” but are afraid to be ourselves for fear of judgment due to societal pressures.  I believe there would be a certain freedom associated with being involved in virtual worlds that we cannot possibly experience in real life because society’s consciousness hasn’t evolved to that level of acceptance yet.

Robotics

I am distressed that I was unable to complete my assignment in this section due to being unable to come to labs as required.  I found the Robotics subject matter interesting, particularly the robotic cars video we watched during class.

I am a hands-on tinkerer as well.  I have difficulty with many electronic hobbies because I have color vision deficiencies.  It isn’ t quite as important with robotics as it is with some projects.  I was present during the first week, the unveiling of the Lego Mindstorms.  I opened the box of parts like a kid on Christmas morning.  I spent the entire first lab building my team’s machine.  We worked on the programming and a little calibrating during the following lab.  Had I been able to be present during the next two, I am certain we would have gotten that little guy to follow his line.

As a final thought, I had always thought of robotics from a philosophical standpoint, but that goes more into a later subject:  artificial intelligence.  I’ll deal with that then.  The thought I have now is that robots are going to have a place in our future.  The question then becomes, how will we use them?  Already, we use remote controlled aircraft in combat situations.  Will they become completely autonomous someday?  Probably.  What about the infantry itself?  Will people stop dying because of robots who were built to die in their place?  What is the future of bionics?  How far would we go to enhance our own abilities with robotic ones?  So many questions.  It is said that a great man sees the events of his day and understands their significance, but an extraordinary man sees the events of the future and understands its significance.  Science Fiction is here.  Robots and technology are here to stay.  Whatever can be thought, can be done.  We humans are proving that every day.

//

//

Network Security: a Wormy Subject

I am sure we have all had at least some experience with malware of one type or another on our P.C’s.  Personally, I have had to wipe my hard drive at least twice due to malicious programs and my lack of protection.  Having been associated with “hackers” for years, I somewhat agree with their position that information should be free, however, I do take issue with those who deliberately design malware to destroy or disable individuals’ home computers.  I have a particular disdain for the companies who use it as marketing ploys and gimmicks, like the one disguised as Microsoft telling the computer owner he has a virus and he needs to click here to eliminate it.  Of course, clicking “there” sends you to a third-party site, infects your computer with malware and the only way (for most people) to get rid of it is to purchase their software or wipe their hard drive.  If hackers are spending time in jail for accessing information, these “businesses” should face at least as severe prosecution.  It is my understanding that if they receive any penalty, it is a small fine and a slap on the wrist.  It becomes more profitable for them to keep doing it.

Network security is an ongoing concern and will be for the foreseeable future.  We are living in the “information age” and as cloud-computing becomes more and more prevalent, security is an issue for anyone who wants to keep their personal information private.  Unfortunately, what most of us fail to realize, is that under the Patriot Act, not only do the hackers face more and stiffer penalties, the federal government now has access to all of our sacred private info, and can even listen in on wireless phone calls without consent or warrant.  I guess what I am trying to say is that no matter the methods we employ, our lives and our information is never truly secure.  It is a ruse.

So, for the hackers who are working to make information free and available, I may have mixed feelings because I like my privacy, but at the same time I realize that nothing is truly private.

“Scratch”

Scratch is a programming environment which enables students to practice programming without necessarily learning a specific language.  It exposes us to the archetypal operations that all computer languages have in common:  sequence, conditionals, repetition, and functions.

My first impression of Scratch was to chuckle at the little cat that I could make do all kinds of things.  I could make “him” walk across the page, turn around, walk upside down, make sounds, and even talk using thought bubbles.

While playing around with the environment to learn how to use it, I designed a short animation using nothing more than line drawings to make a face which changed expressions for a few seconds before changing finally into a “cyberpunk” style character making a gesture to the viewer.  I am still working on my final project in the environment, but after looking at some of the demonstration programs, I am looking forward to turning in the final product.

I found this tool useful, informative, and fun, as I have most of the activities in this class so far.

HTML (cont.) and SQL

As for HTML, I wish that I had taken more time to play around with it.  I can see how if one spent a little time and practice working in HTML, he could become very adept at manipulating  and designing webpages.  Once again, I let my procrastination get in the way of doing just that.  I did manage to get a page uploaded to the server, and it displays the way I designed it. I take that as a success.

There were other design elements I wanted to implement, but thought it best to get something up there before the deadline.  I then “lost” the file!  After about 10 minutes of searching, I finally found it, downloaded and installed filezilla, and after several attempts, finally got logged into the server.  File transfer went beautifully.  Taking this process from start to finish has given me a new perspective on web design and implementation.  I could consider focusing more on HTML in the future.

As for Databases and SQL, I had known of databases, and basically what they were for.  I had heard the term SQL tossed about.  (My friends are all geeks too, they are just a bit more focused than I).  I came away from this week with an understanding of how databases work and affect our lives, what SQL is and how it is used to manipulate databases, and gained another thought or two to consider surrounding information and the 4th ammendment.

There was one area that Dr. Brown mentioned this week.  That was the position of Database Administrator, or DBA.  This course of study suggests further investigation.

HTML

Until this week, I had always considered website design using HTML programming as complicated, something that was simply too complicated to do by hand.  I had designed web pages in the past, but I always used an editor that allowed me to simply move design elements around and it would do the coding for me.  Now, after some simple explanation, I realize that HTML coding is not that complicated nor time-consuming.

In addition, learning to code a web page from scratch using only a simple word processor and HTML tags has given me a better understanding of exactly what is technically taking place when I am viewing a website.  I have been helping an old friend troubleshoot her own website over the past few months, and while I had a basic understanding of website design and page naming, this experience will further help me with this project.  She had been using Adobe’s Fireworks and Dreamweaver Suites, which does all the HTML coding for you.  While these are nice packages to use, having the knowledge and ability to code it from scratch and by hand puts me a step ahead.

The process of actually coding a page for this class was fairly simple, after Dr. Brown’s overview of HTML tags and their use.  The only issue I had was remembering to use the “end” tags, for example </FONT>.  Otherwise, this assignment was fairly simple and straightforward.

Software and Assembly Language Simulator

Using the Assembly Language Simulator which Dr. Brown created gave me a better understanding of exactly how programs are executed within a processor and memory (albeit small.)  The simulator was a useful visual aid, and allowed for trial and error without too much frustration.  The most difficult part for me was remembering to think like a computer, that is to say that they do exactly what they are told in the order they are told to do it in.  Otherwise, having programmed in Basic many years ago, it wasn’t that difficult to understand the assembly language and instruction set for this simulator.  The only issue I had at any time during the assignment was putting things in the proper sequence.

How to Build a Computer

I wanted to approach this assignment as though I was building my next computer.  Also, I looked at it as if money (or lack of it) wasn’t an issue.  Some parts I chose simply because they seemed to be the best available at the current time.  Some, I chose because I have either had exposure to them in the past, or have been wanting them for some time.  In any event, the act of having to look up each individual component of “my computer” has helped me to brush up on what the current industry standards are.  Of course, I am going to have to do further research to ensure that each of these components do what I am expecting them to, and that I haven’t overburdened any one system.  Further, I want to ensure that they all work together as efficiently and harmoniously as possible, without having to upgrade again in 6 months.

I will start with a list of the components I chose and give a brief explanation of why I chose those particular parts.

List of Parts and why I chose them:

Case:  IN WIN IW-F430.RL Red 0.8mm SECC/ Japanese Steel ATX Mid Tower Computer Case

http://www.newegg.com/Product/Product.aspx?Item=N82E16811108051

I chose this case in particular simply because it looked cool.  It is shiny and red and I liked it.  In actuality, when I build my new machine, I will most likely modify one of the cases I already have in storage…  building a computer can be a work of art.

Power Supply:  Thermaltake W0319RU 850W ATX 12V 2.2 SLI Ready CrossFire Certified 80 PLUS Certified Modular Active PFC Power Supply

http://www.newegg.com/Product/Product.aspx?Item=N82E16817153106

This power supply may very well be overkill, but I have an 850w supply now that has been going strong for several years.  I want to further investigate the “CrossFire Certified” claim and decipher exactly what that entails.  My motherboard makes that claim as well.  I am looking forward to finding out exactly what that means to me.

Motherboard (System Board):  ASUS M4A79XTD EVO AM3 AMD 790X ATX AMD Motherboard

http://www.newegg.com/Product/Product.aspx?Item=N82E16813131402

I chose this board for the obvious reason: it will accommodate my CPU chip.  In addition, it also makes a claim of crossfire compatibility, has 8 on-board USB ports, and maxes out at 16 GB of RAM.  Seemed like a board that I could hold on to for awhile.

CPU:  AMD Phenom II X4 965 Black Edition Deneb 3.4GHz 4 x 512KB L2 Cache 6MB L3 Cache Socket AM3 125W Quad-Core Processor

http://www.newegg.com/Product/Product.aspx?Item=N82E16819103727

This chip is simply the most powerful commercially available CPU chip currently available (that I know of) compared to Intel.  I have had good fortune with AMD thus far, and am rather biased.

RAM:  Patriot Extreme Performance Gaming Series 6GB (3 x 2GB) 240-Pin DDR3 SDRAM DDR3 1333 (PC3 10666) Desktop Memory Model PGS36G1333ELK

http://www.newegg.com/Product/Product.aspx?Item=N82E16820220398

I think for my purposes, 6GB of RAM will be plenty for now, if it isn’t already overkill.

Hard Disk:  SAMSUNG Spinpoint F3EG HD203WI 2TB 32MB Cache SATA 3.0Gb/s 3.5″ Internal Hard Drive

http://www.newegg.com/Product/Product.aspx?Item=N82E16822152202

If I can get 2 TB…  why not?  Also includes its own cache.  Western Digital was getting poor reviews, so I chose the Samsung.

Video Card(s):  Galaxy 24GGS8HX2PUX GeForce GT 240 1GB 128-bit DDR3 PCI Express 2.0 x16 HDCP Ready Video Card

http://www.newegg.com/Product/Product.aspx?Item=N82E16814162043

I believe, that if I am only using one Hi-Def monitor, this would be more than enough power to play any of today’s games.

Optical Drive:  HP Black 24X DVD+R 8X DVD+RW 12X DVD+R DL 24X DVD-R 12X DVD-RAM 16X DVD-ROM 48X CD-R 32X CD-RW 48X CD-ROM SATA 24X Multiformat DVD Burner LightScribe Support

http://www.newegg.com/Product/Product.aspx?Item=N82E16827140041

Fastest read/write speed I could find.  I also like the lightscribe technology when I can afford the disks for it.

USB:  8 On-board Ports on Motherboard.

Monitor(s):  SAMSUNG TOC T260HD Rose Black 25.5″ 5ms HDMI Widescreen HDTV Monitor 300 cd/m2 DC 10000:1(1000:1) Build in TV Tuner & Dolby Digital Surround Sound

http://www.newegg.com/Product/Product.aspx?Item=N82E16824001281

I chose this monitor because I am in the market for an HDTV as well as a monitor.  Was hoping it could serve dual purposes.

Keyboard:  Microsoft Natural Ergonomic Keyboard 4000

http://www.newegg.com/Product/Product.aspx?Item=N82E16823109148

Have always said that if I were to “buy” another keyboard, it would be ergonomic, as I get numb fingers from typing.

Mouse/Trackball:  Logitech Gray Wired TrackMan Wheel Mouse

http://www.newegg.com/Product/Product.aspx?Item=N82E16826104156&cm_re=trackball_mouse-_-26-104-156-_-Product

Have always been partial to a trackball over a mouse.  Again with the numbness in the fingers.

Speakers/Audio Output: Logitech X-540 70 watts 5.1 Speakers

http://www.newegg.com/Product/Product.aspx?Item=N82E16836121006

I use my machine to play and record music…  I play music through my computer more than any other device, so it would make sense to me to have Dolby 5.1 speakers for it.

How to put it all together:  (Important:  Before handling any components, ground yourself by touching the power supply casing or metal parts of the computer case to release any built up static electricity.)

1.  Install the motherboard to the case using the appropriate screws or plastic connectors.  You will probably need to install the port cover  /template on the back of the case as well.  Make sure it fits properly and snug.

2.  Install the Power Supply to the case.  Screw it in place.

3.  Lift lever beside CPU socket.  Gently place CPU chip into socket with even pressure so as not to bend any pins.  The chip is keyed, so it only goes in one way.  Do not force it.  Once installed, close the lever to lock in place.

4.  Install RAM memory cards to RAM slots on motherboard.  Again, they only go in one way…  THESE ARE STATIC SENSITIVE!

5.  Plug in Power cables from Power Supply to the motherboard.

6.  Plug in ribbon cables to motherboard (one for Hard disk, one for optical drive, and any smaller cables which go to power button, lights, fans, key lock, etc.)

7.  Install Hard Disk to 3.5 inch cage on case.  Screw it in.  Plug in power and ribbon cables from motherboard.

8.  Install Optical drive to 5.25 inch cage slot on case.  Screw it in.  Plug in power and ribbon cables from motherboard.

9.  On this motherboard, USB and Wireless are already hardwired in, so no installation necessary.

10.  Plug in Video card to PCI slot on mother board.  Screw it down where the ports stick out the back of the case.

11.  Plug in Keyboard…  in this case to a USB slot.

12.  Plug in Trackball to USB slot or PS2 port, whichever you prefer.

13.  Set up Speakers and plug into onboard audio output jack.

14. Plug HDMI cable in from Monitor to video card HDMI Port.

15.  Attach and plug in to power, all external power cords to Monitor, Speakers, and PC Power Supply.

16.  Turn it on, load up windows, make sure it all works, troubleshoot as necessary, and close it up.

I hope I’m not leaving anything out.  It is much easier to just do it than to write it out, step by step.  This computer isn’t designed for any one particular purpose, though some may design theirs for one.  I use my machine for several different tasks, the least used is gaming, as I don’t have much free time.  However, I would like to have the option available to me (a machine capable of gaming) should I free up some time and choose to do so.  I have designed this to be simply the most powerful home pc I could without spending a fortune.  I also tried to make it so that it would last as long as possible before upgrades would become mandatory.  Once again, before I actually order parts and build a machine such as this, I will do more in depth research on all of the parts concerned.

//

Week Two: Information and Binary

This week, we covered how different forms of information are “translated” into numbers that a computer can understand.  This method uses number systems…  ultimately binary, or base 2.  Though I had a fundamental understanding of what binary is and how the computer uses it, the material in class gave me more in-depth knowledge.  It was good to get back to basics and have some practice evaluating and converting binary and decimal numbers.

From an anthropological standpoint, one of the things I found interesting, and had never really thought about before, was that we humans use base 10 as our number system because we have ten fingers.  As an aside, I remember now playing a computer game with some friends…  ohhh…  about 15 years ago,  where we had to solve puzzles to progress through the game.  One of the puzzles was based in trinary.

The only thing I had an issue with, as far as the quizzes or conversions are concerned, was converting binary to hexadecimal.  I got the answer correct, but wasn’t terribly sure about it prior to submitting the quiz because I was having trouble checking the answer.  I kept getting a different number.

Anyway, all in all a good week!  I’m really enjoying the “comic.”  Informative and fun.