INFO202 - Intro to eBusiness Tech - Spring 2010

Semester End:

F I N A L Points: This is the last update, all has been graded, no more work is expected, and these will go to the Registrar mid-day Monday. If you see anything missing please let me know via email asap...

Exam Day: The morning section's exam time was Thursday the 6th at 1:00pm. The evening's is Tuesday the 11th at 7:00pm. Quiz #3 (10 points), a required Exit Exam (curved to 7-10 points), and an optional Course Survey (2 points) was given at the exam time. (Some students have mentioned that they have 'another exam' at the exam time for INFO202 and this is simply not possible -- if another instructor is giving an exam during the time scheduled for INFO202 please refer them to the Provost's office for resolution of this situation.)

The Exam is required for students who missed any quizzes and it is optional for others. If taken, it will add 30 points to the total points available for the course and the final grade will be the percent of points earned vs the total points available. If the result lowers your grade the lower grade will be posted for the course. The Exam's questions are a sampling from the sample questions for Quizzes #1 & #2. The instructor will have the grade sheet in class, score Quiz #3 on the spot, and you can decide whether to take The Exam or not.

Quiz #3 Topics

(4/20) Project #4 is to make two queries involving joined tables and other SQL features using the MySQL database at info202.info. Here is the accompanying lecture about DBMS and Transaction Processing. Check down the page in the Projects section for details about Project #4.

(4/27) Project #5: Visual Studio. Check down the page for details on Project #5's deliverables.

Points for projects will be collected during lab time in the classroom. Use open lab time or the tutors to get your questions answered and please show me good stuff!

Visual Studio is in your future as an ISY major! We use C#.NET in INFO350 and again in INFO471-Technology Support for EBusiness. These examples are in Visual Basic.NET. These are the main two Programming Languages that work in Visual Studio's IDE (Integrated Development Environment). Where JavaScript and PHP are both Open Source languages, Visual Studio is Proprietary.

The IDE makes it easy for application developers to see everything they need to work in today's DBMS-intensive environments. IDEs usually have a 'GUI way' to do development so that many routine & very tedious scripting tasks, like making a form for users to update the database, can be done by 'dragging' a database element and 'dropping' it on the form -- this 'makes the computer into a programmer' and frees up developers' time for other tasks the IDE can't do.

Visual Studio is not the _only_ IDE in use by professional programmers and analysts. Visual Studio competes well with several other IDEs:

(5/4)XML: Use the XML tutorial at w3schools.com to get an introduction to this very important Markup Language. From the '90s forward, XML is becoming involved in more and more standards. Even very mature EDI standards like ANSI X.12 and EDIFact, which have been used increasingly since the '70s without any XML, are adding 'XML Versions' of the same eCommerce documents. In 2010, XML only has about a quarter of the bandwidth in electronic business documents, but it's definitely the way to do it in the future. All modern programming languages include features that facilitate the coding of scripts to handle XML documents, some using a GUI interface and others in 'plain code'.

HTTPS for C2B & B2B Most C2B eCommerce is via HTTP and HTTPS protocols directing traffic between a Customer and some Business or organization, where the customer is using a web browser like FireFox, Chrome, or IE. Most B2B exchange is via the same HTTPS and HTTP protocols, but without a web browser involved -- these are in the form of 'Web Services' that are used to move EDI documents like Purchase Orders, various Acknowledgements & Manifests, Invoices, Insurance Documents, Bills of Lading, and even Banking Transactions _directly_ from one Business' computer to the computer at some other Business.

'Web Services' are growing in importance. 'SOA' is 'Service Oriented Architecture' and is a big change from the way computers worked in the past, where computers of different manufacturers were difficult to 'network' directly. Now, using open standards like HTTP and HTTPS with techniques like SOA and SOAP (Simple Object Access Protocol) any computer that can use The Internet is able to send a request via a web service directly to a customer's or supplier's system. From the '70s thru the mid-'90s VANs-Value Added Networks were used like 'electronic mailboxes'. These VANs facilitated the exchange of EDI documents, but added about a dollar to the cost of each transaction. Today, most EDI documents go 'machine to machine' over The Internet without additional cost of a VAN.

The 'S' in HTTPS references another web protocol involved in eBusiness: SSL -- Secure Socket Layer. Certificate Authorities like VeriSign, Thawte, and GoDaddy issue 'SSL Certificates' for web servers that light up the little lock on your web browser indicating that secure technology is in use. These SSL Certificates cost from $50 to $350+ per year depending on the CA you choose. Paying a couple Thousand dollars a year turns the browser's address bar green! VeriSign and Thawte actually do public records searches and have agents who visit certificate applicants to make sure they are who they purport to be -- less expensive certificate authorities, 'self issued certificates' don't get this level of scrutiny. (Note that isy.vcu.edu issues it's own certificate, setting off warnings in your browser when you go to it.)

SSL also works for B2B Web Services, direct from one machine to another, where a browser isn't involved. This helps ensure that sensitive data like health records or credit card or bank account #s can't be seen or harvested by unscrupulous workers in network operation centers, who regularly snarf up unsecured data like email addresses and passwords. With SSL, data will not flow if everything regarding the SSL Certificates isn't lined up perfectly at both ends of the exchange and also at the CA's machine. And, when it flows it's encrypted.

Web Services are more and more likely to be in the form of XML documents as we get farther into the new millenium, but the majority of web services today are 'legacy styled web services' that use other formats. ANSI X12, for example, uses asterisks to separate fields in records and control characters like vbCrLf to separate records in an EDI document. Other exchange standards use a 'variable=value' format that is very easy to code in modern programming languages.

SMTP, Simple Mail Transport Protocol, is used to push out emails for much B2C contact, and occasionally it is involved in B2B where it's OK to use a somewhat unreliable and very insecure internet protocol to get a message to a person, or another computer. Often, an insecure email sent to a customer will contain links to secure websites to do business. A webstore provider like stores.yahoo.com, for example, services relatively safe transactions, like updating the Qty on Hand that displays at the store, via either insecure email or a web service secured with SSL. Some documents are transmitted via email or http using PGP-Pretty Good Privacy for encryption.

Class Demo of C2B, B2B, B2B, & B2C Exchange: Purchased a music CD at a Yahoo Store; Tracked the resulting Sales Document, in an XML-formatted Web Service, to the Merchant's warehouse where the goods will be picked and shipped; Tunnelled thru two firewalls to get to the warehouse system; Took on the sales order into the Merchant's order entry and fulfillment system; Hit the ACH with a Credit Card Authorizationto fulfill the order; Saw the ACH issue a DENY to the bogus CC# used at the store; And, saw the system generate Email to the customer asking for a good CC#...

Here is a 'swim lane diagram' with screen shots from the above exchanges: C2B2B2B2C.

Quiz #3 Sample Questions.


Projects:

Projects #1 & #2

(2/16 am & pm) Project #1 is a quick intro with minimum specs for five points. Project #2 has a rather complex set of specs and is for fifteen points. Dues dates will be posted at the top of the page.

Click the heading just above, or here for the projects' specs...

FAQ about issues working at info202.info and Projects #1 & 2.

CSS Demos at the lectern are available at info202.info/lectern/.  The files used are readable & copyable from /home/lectern/web. You're welcome to use any of these as the starting point for your project, or you're welcome to start from scratch, or use what you find at 'tutes' on-line at one of the links below -- if you find something you like better, please let me know.

Command Liners, use 'cd /home/lectern/web' at the command line, 'ls' to look about, and something like 'cp CSSDemo.html ~/web/' to copy the file to the web directory in your home directory. Then, Remember the 'command stacker' and the 'up arrow' and grab the CSS too. Then you can have at it with vi, or mc...

WinSCPers, use the GUI to go 'up' to the home directory, then into the server-side folder named 'lectern', then select and copy desired files to your desktop, then on the server-side navigate back to your web directory, select the files on the desktop side and copy them into your web folder. This is wasteful of bandwidth, but there's lots of it...

Avoid spaces in file names, directory names, and the names of images. If you don't you'll have to be doing extra tweaking of urls...

FAQ about issues working at info202.info and Projects #1 & 2.

Project #3 - JavaScript, Structure, & Object Orientation

JavaScript & Database Demo Pages: Here is a link to the pages discussed in class. You're welcome to use any of the rather dry JavaScript features there to get your JavaScript points, or google and find cool 'javascript effects', or 'javascript cursor effects', and 'javascript examples' to find others.

Here are some resources for JavaScript:

Project #4 - Database with MySQL & PHP:



(4/20) These next ten points are earned by working with the MySQL database server and server-side scripting with PHP:

Project #5 - Visual Studio's Visual Web Developer

Get Visual Studio Those going on into INFO350 get it installed on your machine! Get it free from the Microsoft Developers' Network's Academic Alliance. Those who might want to get Visual Studio 2010, please do, but keep in mind that some of the features will not line up exactly with the Text used for the class! If you're not going on into INFO350, you're welcome to download the 'Express' versions, which are much smaller downloads, from Microsoft, using the URL in the Video Tute below.

Assignment: Please get somewhere you can spend an hour or two with this Video Tute about the Visual Web Developer aspect of Visual Studio. Use it to make a web page to show me in lab, including at least two graphics, for 10 points.

Additional points, up to 10, may be earned on or before the Exam Day in 5-point increments by showing me one or two of these in the lab:


FAQ, Open Lab Saturdays, Tutor MWF Mornings:

Saturday Open Lab: Dave Coss, a PhD Candidate working as a teaching assistant for INFO/EBUS202 will be holding 'open lab' on Saturdays from 11:00am thru 2:00pm in the IS Department's computer lab, #4222, at the West end of the corridor, behind the network room, toward the Computer Science Dept. Bring your own computer and plug into the ethernet there, or use one of the machines in the lab. Dave is new to these assignments, but all your questions are likely to be answered in the lab with him.

Tutor Hours: John Vosper, one of the IS Dept's Network Techs recently recruited as the INFO202 Tutor, will be in #4222 Monday, Wednesday, and Friday from 10:00am thru Noon.

Please Note:

Some 'Web Design' References

A course like this is more an introduction to 'mechanics of web pages' than it is 'Web Design'. At VCU, it's only students who can present a portfolio that meets the legendary entrance requirements for the School of the Arts or Ad School that get access to courses in Web Design. Occasionally, twice in ten years, they've let a Business School student take the class...

But, lots of our School of Business students have good 'design sense', can gain useful insight from books and articles about web design such as these, and are competent for work as 'web designers'.

Please note: The web pages for this class: are in a state of flux, where I'm reeling and recovering from the recent obsolesence of Microsoft FrontPage which I foolishly used since about 1990... Pages are being re-worked into valid, strict XHTML as they are needed. Next, 'crumb trails' and navigation bars will be added sooner or later. It's best to navigate these pages from the links on _this_ page, since the 'navigation bars' on some of the inside pages are broken or go to the wrong place. Anything you see wrong following the links from this page, please assume you're the first to find it and get me an email about it...


Past Topics:

Quiz #1 Topics:

Quiz 2 Topics and Exercises

Project #2 JavaScript: Look down the page in the Projects sections for details about Project #2. It is due by midnite Tuesday April the 6th, for both morning and evening sections. As you plan and work on your Project #2 please keep your eye on the specs and other supporting material -- I'll be keeping my eye on them as I grade your work...

(2/23, out of sequence) The 'Anatomy' of a URL: This topic was missed in the lecture material, will be discussed in class soon. Meanwhile, Here is a good pdf about urls, courtesy of eCoach. Also, be able to describe or answer questions about the anatomies of: valid xhtml documents, style sheets, html tags, & style rules...

For those fearing these hands-on exercise or having a hard time finding the next steps, we've got the instructor, a tutor, and the best graduate assistant all wanting to help. There are almost zero 'step-by-step' instructions in this course, or any that follow in our technical core, and succesful students in our courses catch on quicker and quicker, even if the very first steps might be halting. If if you're not seeing what the next step, or the first, might be get help early while there's max time to get max points on the projects.

XHTML & CSS: Content & Style

(2/9 am & pm) The w3schools' tutorials on HTML, XHTML, and CSS at the left side of the page are required reading for this course, take the place of a text. They introduce most of what's important and very little of their fine introduction is repeated in the next links. Learn to use the w3schools' Reference section at the right side of the home page to look up syntax and rules.

If you find a better reference, website, or a utube tute that makes any of these topics click for you, please let me know what they are. My favorite's gotten way out of date, and w3schools sometimes isn't deep enough, and I'm collecting links...

(2/9 am & pm) Times, technologies, and economics have changed since The Internet came about and so have the 'basic mechanisms' for getting 'content' on The Internet. After having a IBM 3270 Terminal or Sperry/UniVac attached to nothing but one mainframe computer on my desk for the years from about 1974 thru 1981, it was really exciting in 1981 to get a (2ND) terminal, a VT220, which was attached to a UNIX machine, a Pyramid, that connected via CCU's networks to many other offices on-campus, and via The Internet to off-campus networks. We got email, newsgroups, and the dry & text-based stuff that was The Internet and to to watch it get really interesting.

(2/9 'Chalk-talked' this am & pm) Here is an essay about Getting to XHTML & CSS from plain, old HTML...

(2/9 Started this am & pm) Details about these web technologies: HTML, XML, XHTML, & CSS...

(2/9 am & pm) Demo'd at the lectern: Using browser's View -> Source to see the 'raw XHTML' behind the browser; Good & Bad Markup examples; Marking up for Semantics vs. Presentation; Using w3schools' XHTML & CSS validation service, links at the lower right of their home page.

(2/9) Assigned as required reading and hands-on exercises: Intros to HTML, XHTML, CSS at w3schools.com, upper left. Also, pointed out the Reference section at the upper right.

For those with Cell Phones equipped with a 'WAP Browser' the WAP is also very accessible and you're welcome to work with it for one or two of your website's pages.

(2/16 - 2/25) Hands-on a Linux Server

For those headed into the IS major, experience at the command line is an enabler for network & system administration, and for network security.

(2/16 am & pm) Project #1 is to make a web-page appear at your link at info202.info, as described below. Here is a page about Logging On to info202.info and working on Projects #1 & #2.

(2/16 am & pm) Demo logging in, changing password, server-side editors, and making a valid web page at info202.info. Samples with XHTML & CSS demo'd at the lectern in class are here. The files are located at /home/lectern/web and the permissions are set so you can copy them to your web directory...

For someone not headed into IS, after you log in and change your password, WinSCP's editor is probably all you'll need for the projects. It doesn't do 'syntax highlighting', so it is less than an ideal XHTML editor, but is OK for small, unambitious web projects. Other options for 'minimal HTML editors' on a PC or notebook computer are Seamonkey and Bluefish, both are free, download comes up at the top of a google search. If you've got some other XHTML editor in mind ask about it. Quiz questions will depend on familiarity with XHTML & CSS so please don't use a tool that hides the code from you!

Web Graphics

(3/4) Checking the file sizes of images is important to make sure your graphics meet the total size requirement of 80Kbytes or less for the images on your home page. Use the Detailed View, or right-click an image and look at its Properties, to _see_ the size in bytes.

(3/4 am, 3/9pm) Key points about Web Graphics: (View with IE, cross browser issues!) Pixels; Color Models (RGB, HSV, CMYK), color depth, specifying colors with Hexadecimals in RGB, web page resolution about 100 Pixels/Inch, camera resolutions way higher; Web image types: gif, jpg, png & tradeoffs among them; Other images types: bmp, tiff, the GIMP's scf and and other Native Formats for graphics software; Demo of jpeg compression/quality issues; &c; &c...

(3/4 am, 2/9 pm) A few more, finer points about prepping graphics for the web, picking appropriate format, avoiding dithering, cropping, compressing, trade-offs between file-size and quality, transparency applied to logotypes, demo'd using the wand to 'mask' portions of an image, &c...

(3/9) Demo in class showing techniques and terminology for prepping images for the web: getting them off a camera; making doggone sure where they are; prepping them for web use: cropping; scaling; compressing; adding alpha channel & using the wand & other techniques to select areas for transparency; trade-offs among gifs, jpegs, and pngs; &c.

Quiz #2: Was Thursday the 8th for the Morning section and Tuesday the 13th for the Evening. Here are Sample Questions.


Stuff Referred to In Class:

Open Lab Saturdays 11 thru 2:00 and Tuesdays 5:30 thru 7:00 in the Information Systems Dept's Lab, E4222. Mr Coss reports no takers for lab time the past two sessions and requests students wanting lab time to make a reservation at least a day in advance to his email, cossdl-AT-vcu.edu (replace the -AT- with @). If he's got no reservations he won't be in the lab.

Bonus Points for Survey:For two points added after your average has been calculated, please take the WebMonkey Survey for this Course and show me the last page.

Validating XHTML + JavaScript Here is a new link to a new page about Making XHTML with JavaScript Validate at w3schools.com's XHTML Validator. The _best_ way is to 'externalize' your JavaScripts and link to them from the document's head section, or within the XHTML.

Validate early & often! Don't wait until you've coded your whole web page to validate it! Get the 'skeleton' for the complete page together first, including the DOCTYPE, and with the html, head, and body properly nested. Make sure the skeleton validates, then add the content a piece at a time and validate as each piece goes in place.

That 'blue warning' about character set: Somehow this got left out of what's posted for the projects. The following 'meta tag' may be placed in the head section of your web page, before or after the title, to avoid getting the warning about 'character set' from the validator at w3schools.com.

<meta http-equiv="Content-type" content="text/html;charset=UTF-8" > 

There are other ways of getting the character set defined for the browser, and you're welcome to use any of them. At completion of Projects #1 and #2 there should be zero errors and zero warnings.

Debugging: If you're not seeing what you expect when you click on a link you can 'tail the log' and see what the web server. While working, you can keep another putty window open at the lower left corner of the screen that shows the 'tail of the log'. A student named John Smith could see errors as they are generated by keying this:

tail -f /var/log/httpd/error_log | grep jsmith

Use Ctrl-C to stop tailing the log...