CSWB130

Journal

FINAL PROJECT VALIDATION

click here

Journal 16, Wednesday, December 08 2010:

Designing a website, especially a website that involves the user's information in any way, is a huge responsibility. People who visit your page are trusting you with their information, information that could be used against them in any number of ways; from stealing their money, to invading their privacy or even property. Your visitors are relying on you to keep their information safe.

For instance, any personal information submitted to your website should be carefully stored and guarded against hackers or other ill-intentioned users. If you have an e-commerce website it is especially important to keep the user's credit-card information a secret, and not let the information by accessed by any other parties than should be. A simpler concern, but still very important for the reputation of your website is to keep visitor's email address hidden from anywhere spammers could find it. It would be very annoying for a user to sign up for your newsletter but to only get loads of spam in the end.

Journal 15, Saturday, November 27 2010:

Writing for global audiences is full of problematic assumptions. Anything that has to do directly with your own location or culture, (such as slang, location, time, or money references) may be confusing, misleading, or even offensive to viewers outside your native country or immediate area. Another reason to avoid slang is that many people are using Google Translate and any words not in their dictionary will not go through.

This is especially true for e-commerce websites. Mostly important is to tell the viewer very clearly where your products will ship to. And if you do ship overseas, things like zip codes, states or providences don't apply. You coding must be able to handle all these accommodations. And you will want to include payment options that work for international audiences.

Journal 14, Sunday, November 21 2010:

Accessibility is a big deal on the web. If your page is not accessible to viewers, why even have a website? The purpose of your website is to deliver content to your visitors, whatever their needs may be. Conforming to accessibility standards helps this be easier for those accessing your website by non-conventional methods.

To make my website more accessible; I could add an alt tag to all my images, I could make sure all links have text (very helpful for myself even as I browse the web sometimes with images off), I could make sure forms are accessible by keyboards and not mouse-only, I can describe any audio or video content I place on my webpage, and I could create more stylesheets to help alternate kinds of devices view my webpage.

Journal 13, Sunday, November 21 2010:

Meta tags are elements used to define webpages for other programs or computers, but meta tags are not usually not meant to be viewed by visitors to your website.

“Keywords”, at one point, was the only way for search engines to know the content of your website, but now it has fallen strongly out of favor and has been dropped by Google.

“Description” is used by Google and all major search engines to tell their users about your webpage.

“Language” is used to tell the search engines what human language your webpage is in. (Which coding language it would be in could be defined by the “Content-Type” element )

“Robot” communicates to the search engine robots and is usually used to tell them if they should index your page, or not. However this method is not as effective as some others.

“Author” can be used to define the author of a document or webpage

Added "description" tag and "keywords" tag (just in case) to the head of my index.html document

Journal 12, Sunday, November 14 2010:

Of the major Web Development Software packages, the main disadvantage is that they are all costly. If you're going into web design and out like something to supplement your hand coding, trying one or two free open source options might be a good idea.

Adobe Dreamweaver is a popular program. It's the most complete and powerful of the 3 main Web Development Software titles. It can code many languages, including CSS, XHTML, and Javascript. And it can also code server-side scripting languages such as ColdFusion and PHP. Some people have remarked that it is complicated to learn, however.

GoLive, also owned by Adobe, is an HTML Development Software that also has capabilities in coding and designing for small devices, such as PDAs or cell phones. GoLive is simple to use and makes use of a drag-and-drop type work environment.

Microsoft's FrontPage is a a popular but slightly infamous web development program. It's been known to insert code that the user did not specify. FrontPage has no validator, so you will have no idea if you're page meets the standards or if it's cross-browser compliant. Although, it is said to be easy to use by people familiar with Microsoft Office.

Journal 11, Sunday, November 7 2010:

SGML stands for Standard Generalized Markup Language. It is a language that uses syntax called “markup”. SGML is a metalanguage, is describes other languages such as HTML or XML which are derivatives of the language.

XML is a subset of SGML, designed mostly for use on the internet. It stands for EXtensible Markup Language. Although, it is often not described as a language, but as a set or rules or a method to encode documents to store and and transport data. XML is not meant to display data, but to structure data for use by other programs.

HTML is also derivative of SGML. It has very similar syntax to SGML, but does not comfort to it's rules. HTML uses it's SGML-based markup tags to display data on webpages.

DHTML means Dynamic HTML. DHTML is not a specific language, but rather a method of coding webpages. It is used to describe webpages written with in combination of HTML, CSS and client-side scripting codes. The purpose of DHTML is to create dynamic and interactive webpages.

Journal 10, Monday, November 1 2010:

It is important to know a server-side scripting language. Unless you're designing personal webpages for small businesses, your clients are probably going to want something that will involve server-side scripting at one point.

One fairly popular server-side scripting language is Java. Java is a powerful, full-fledged object-oriented programming language. It works cross-platform, meaning your programs can work on any web server that has Java installed. Although it is powerful, it is also very complex and can take a very long time to learn. Also, server plugins must be paid for if they are to be used to host a commercial website.

PHP is probably the most popular server-side scripting language out there. For most people's web needs, it is perfectly ideal. Many things that you will need are already there inside the language, however it is not easy to add anything new. It is slightly complicated, but not overly so. And it is entirely free, so you don't pay anything, but you also won't have any official support for PHP.

Cold Fusion is a tag based scripting language, and is very easy to learn if you're used to HTML tags. It has a built-in library of many commonly used tags and the ability for you to add new tags written in other programming languages. It is easy to use and simple to implement. But it is not free, it is very expensive to start up your own server.

I will certainly be looking into all three programming languages, but I am most interested in Java. If I can learn it, I will be able to handle whatever my clients throw at me in the best way possible. I won't be restricted as much by the abilities of the language, since the language is so large and powerful.

Another reason I like Java and PHP is that they are open-source languages. This means that you can look into their source code because it doesn't belong to the copyright holders, it's open. Open-source software is also freely redistributed (which means that you can download it free).

Journal 9, Monday, November 1 2010:

RSS is a technology that quickly and easily displays new content to users. It's an XML program, and must be read by RSS feed readers. RSS stands for Really Simple Syndication or Rich Site Summary. RSS feed readers can be separate programs you download, connected to your browser, or even installed in your cellphones or other mobile devices.

RSS feeds are great for informing your readers that you have an update; it's nearly instant, and they don't have to check your website regularly to see if there is one or not. RSS feeds are especially helpful for blogs, news sites, or content that is updated or added to regularly.

I will add RSS feeds to my website whenever I have major updates or new interesting content. It also might be profitable to start of type of blog that would have information visitors to my site would want to see. That way, people would subscribe to my RSS feed for the information, but not forget about my website and the services I offer.

Journal 8, Sunday, October 24 2010:

Javascript is a wonderful little scripting language that many people absolutely hate. There are many, many advantages to Javascript. It's very flexible. It can do anything from animating your webpage to creating user login programs. It's a client-side script, so it interacts with the user's browser more directly. Javascript is a language that uses loops, functions, and other programming functions to manipulate variables that can be strings, numbers, boolean values, or objects.

Many people think they dislike Javascript because it slows down their browsing when they come across a page with too much of it, or alert bars that keep them from doing something, but most people dislike Javascript because it can be used maliciously against the user. This is a real disadvantage, and it is for web designers as well because now many people have their Javascript turned off. Another disadvantage is that it behaves unreliably between browsers.

Journal 7, Sunday, October 17 2010:

It's important to be considerate to the user's needs when they visit your webpage. If they ever want to print your webpage, a dark background will use up all their ink! Many other aspects of webpages won't print well either.

There are a few things that are important to consider when deciding how best to format your website for print. One consideration is that anyone who prints the page must use real ink and real paper, dark pages will not do well. They will not want large images or banners to print, unless of course they want to actually print the image, but if they wanted to do that they could save it to their desktop and print it out themselves. Another consideration is that the user thinks they are printing the page exactly as they see it. When they see their paper, however, they'll be surprised to learn that it printed out differently. On this issue, I believe it is better to assume they don't want to print your banners.

For the print version of my website, I would take away all colored aspects entirely. I would take off the banner, these colored boxes the text is in, and my background image. The page would be totally white except for the two columns of black text and slightly lighter headers and links. This design is simple and even attractive, and made me wonder if I should have gone simplistic with my website in the first place.

Journal 6, Monday, October 11 2010:

Element positioning is essential for designers who are picky about the appearance of their website.

The static position is the default, it is the easiest to use and hard to mess up (because elements with a static position are not effected by top, bottom, left, and right properties), but static positioning might not always meet your needs as a designer. Normal text, divs without positioning would be examples of this kind of behavior.

Relative positioning is moving an element relative to it's static or normal position. Quite handy because you can place elements EXACTLY where you want them, but very annoying for the user if you don't test on all browsers. Haven't we all seen terrible positioning on messed up websites? Relative positioning can be used well in banners, image placement and heading placement.

Absolute positioning is handy if you REALLY want something to be in a certain position. An element with absolute positioning is not effected by the other elements around it, so it's good for main images, navigation, and headers. But, absolute positioning can also be very tricky to make appear correctly in different browsers.

My “main content box” is an example of static positioning (the lighter colored box that this text is in). There are no positioning attributes, I let it flow the way it wants to.

Both my banner and my sidebar are examples of absolute positioning. I absolutely don't want them to move from their locations.

My h1 through h6 tags are positioned relatively slightly to the right, to add emphasis.

Journal 5, Saturday, October 02 2010:

In CSS, a selector is an expression that matches to a specific element in the HTML document that links to it. You can change the appearance of the element in your HTML document every time it comes up if you use selectors in your linked CSS document to do so. Classes are used to further define specific elements you want to modify. By added a class definition to your CSS document, every element that calls that class name will have the appearance you specified. Identifiers are used very similarly to classes.

Document hierarchy is the effect by which “decedent” elements inherit attributes from their “ancestors” and “child” elements inherit attributes from their “parent” elements. This style inheritance works in such a way that a property given to one of the “parent” or “ancestor” elements will also appear in the decedent elements unless the decedent element has other properties specifically given to it. Pseudo-classes are special identifiers that are understood by the browser, and the browser figures out the class that apply to the elements effected. Pseudo-classes are usually dynamic in nature.

Journal 4, Friday, September 24 2010:

Server-side scripts have some disadvantages, they are usually more complicated than client-side scripts, and they are not always compatible with your the server host you are using. But your code is hidden, you can access files on your server, and most importantly server-side are browser independent and you don't have to worry about they acting strangle on different browsers. One might call a server-side script when you submit data in a form or when you login to a website.

Client-side scripts are not as secure as server-side scripts, and everyone can see your coding. Client-side scripts seem to work best when they are simpler since they have to be loaded with the page. They not as versatile as server-side, and you must hide from older browsers, by adding “comments” to your code so that the browser with ignore it. Client-side scripts are also restrictive in that you cannot access local files. The main advantage of client-side scripts is that each web browser executes the code out on the web page by itself instead of having the server do it. This eases the burden on the server.

I used a client-side JavaScript script on my website to disable right-click. It is located on a separate page, (javascript.js) and the pages loads the script automatically through this code:

<script type="text/javascript" src="javascript.js"></script> This is much more convenient for me that adding a script to each page. Now, if I wanted to, I could add many scripts that could affect my entire website.

Journal 3, Wednesday, September 15 2010:

The multimedia capabilities of today are really very different from early Internet text-based capabilities and of course very different from the printed page. The ability to be interactive is so far beyond it is incredible. Things like the ability to play sound, videos, animations, or other interactive content makes the web of today very different.

Multimedia is exciting, but it can be overwhelming both to viewers and to browsers. A viewer is overwhelmed when he can't find the information he wants, and when a browser is overwhelmed it results in slow loading speeds or even crashes. Multimedia, although fun, should be use wisely and should be informative and closely aligned with the topic of the website.

Although having sound, such as background music, on your website may very well enhance the viewer's experience; it also might not. And although pleasant, it isn't very informative, and most people don't visit websites to hear the background music. Although, a small audio player that the user can control might enhance the website very much if the audio is relevant to the content of the page. For example, Wikipedia has very helpful audio players that pronounce words for you. I would definitely employ user-controlled audio players if I had audio relevant to my content. Video can also be very useful and enhance a website. A video presentation of web designs I have done could enhance the experience of the viewer and be very informative. Of course, the viewer should have the option to turn it off and on; videos and animations that force themselves to play automatically can result in slow loading speeds and annoyance for the viewer.

Journal 2, Wednesday, September 01 2010:

Even though you can't forget that it's important to make sure your website is as attractive and as little annoying as possible, the worst web designs seems to flow from a lack of thinking of the user or what the user would want when he visits your website. The worst thing you can do is hide your content or make it difficult for users to get to what they want. Why would you want to make it difficult for users to fulfill their purpose in visiting your website? It seems to me that this will chase users off your site even faster than ugly colors or graphics. A visitor might stick around for the sake of information even if the site is ugly, but he'll surely leave if he can't find what he wants.

For the sake of finding the most effective methods to communicate, I will spend time thinking about and defining what exactly users will be looking for when they visit my website. I'll be writing down my experience with other websites and how easily I was able to find their important information. For the sake of the aesthetics of the site, I will spend thought and effort making sure that my site is easy on the eyes and that my setup is as user friendly as possible (for example; make sure images load well, they get to the content they want fast, not bog them down with useless information or noisy design elements, keeping my colors for making my font unreadable, etc).

Journal 1, Friday, August 27 2010:

A website is part of a system that must work. Web development must be informed by all parts of the systems they are designing for, or else the website created will not fit within that system. The question must be asked, "What purpose does this project serve in the system?" And it is essential to answer that as thoroughly as possible. Clearly define the all important question "what IS IT?", and then the rest of the process is trying to meet that goal as completely as possible. Before you enter into any kind of code work or application, you have to know what you're making. What tasks must be accomplished? What attributes does it need? Although other parts of the design process are obviously essential, the backbone of the whole process is discovering what is needed in the first place.

When designing my final project (which will hopefully end up eventually being my real portfolio) I will be putting a lot of research into other designers and my reactions to their site. Since this project's purpose is to primarily attract other people to my services, I will be thinking about what attracts me and what information I would need to know as a potential client. I will also be researching which skills and which types of programming are most in demand and will try and match my portfolio to the best of my abilities.