<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5642561549780361543</id><updated>2012-02-16T14:50:44.520-08:00</updated><category term='Introduction'/><category term='Workshop'/><category term='Evelator pitch 1 and 2'/><category term='Exercises'/><title type='text'>Blog's Developer - B2B</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>25</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-4915915267323559833</id><published>2009-10-28T22:27:00.000-07:00</published><updated>2009-11-01T03:43:01.335-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 16: System Integration</title><content type='html'>Development and deployment the web application are necessary and important to create the website. Besides, marketing and promotion the website is so important step to make the website successfully. &lt;br /&gt;&lt;br /&gt;Business process analysis:&lt;br /&gt;&lt;br /&gt;Organizations can use several systems to promote all services of the website and guide users to control almost the function on the website.&lt;br /&gt;&lt;br /&gt;Enterprise resource planning (ERP):&lt;br /&gt;&lt;br /&gt;Enterprise Resource Planning (ERP) is a term usually used in conjunction with ERP software or an ERP system which is intended to manage all the information and functions of a business or company from shared data stores&lt;br /&gt;An ERP system typically has modular hardware and software units and "services" that communicate on a local area network. The modular design allows a business to add or reconfigure modules (perhaps from different vendors) while preserving data integrity in one shared database that may be centralized or distributed&lt;br /&gt;In the ERP system, which the supporting by application has some advantages and disadvantages such as forecasting the connection between software, design and integration is the advantages of ERP. On the other hand, customization of software is limited and business process is loss of competitive of advantage.&lt;br /&gt;&lt;br /&gt;Customer Relationship Management (CRM)&lt;br /&gt;&lt;br /&gt;Methods that companies use to interact with customers. The methods include employee training and special purpose CRM software. There is an emphasis on handling incoming customer phone calls and email, although the information collected by CRM software may also be used for promotion, and surveys such as those polling customer satisfaction.&lt;br /&gt;Initiatives often fail because implementation was limited to software installation, without providing the context, support and understanding for employees to learn. Tools for customer relationship management should be implemented "only after a well-devised strategy and operational plan are put in place".&lt;br /&gt;Other problems occur when failing to think of sales as the output of a process that itself needs to be studied and taken into account when planning automation.&lt;br /&gt;From the outside, customers interacting with a company perceive the business as a single entity, despite often interacting with a number of employees in different roles and departments. CRM is a combination of policies, processes, and strategies implemented by an organization to unify its customer interactions and provide a means to track customer information. It involves the use of technology in attracting new and profitable customers, while forming tighter bonds with existing ones.&lt;br /&gt;&lt;br /&gt;Workflow Management &lt;br /&gt;&lt;br /&gt;A workflow consists of a sequence of connected steps. It is a depiction of a sequence of operations, declared as work of a person, a group of persons, an organization of staff, or one or more simple or complex mechanisms. Workflow may be seen as any abstraction of real work, segregated in workshare, work split or other types of ordering. For control purposes, workflow may be a view on real work under a chosen aspect, thus serving as a virtual representation of actual work. The flow being described often refers to a document that is being transferred from one step to another.&lt;br /&gt;A workflow is a model to represent real work for further assessment, e.g., for describing a reliably repeatable sequence of operations. More abstractly, a workflow is a pattern of activity enabled by a systematic organization of resources, defined roles and mass, energy and information flows, into a work process that can be documented and learned. Workflows are designed to achieve processing intents of some sort, such as physical transformation, service provision, or information processing. Workflow concepts are closely related to other concepts used to describe organizational structure, such as silos, functions, teams, projects, policies and hierarchies. Workflows may be viewed as one primitive building block of organizations. The relationships among these concepts are described later in this entry.&lt;br /&gt;The term workflow is used in computer programming to capture and develop human-to-machine interaction. Workflow (management) software aims to provide end users with an easier way to orchestrate or describe complex processing of data in a visual form, much like flow chart but without the need to understand computers or programming.&lt;br /&gt;_____________________________________________________&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;Enterprise Resource Planning, retrieved 17/10/2009 from http://www.erpfans.com/erpfans/erpdefinition/erp001.html&lt;br /&gt;&lt;br /&gt;Customers Relationship Management, retrieved 17/10/2009 from http://searchcrm.techtarget.com/definition/CRM&lt;br /&gt;&lt;br /&gt;Workflow Management, retrieved 17/10/2009 from http://searchcrm.techtarget.com/definition/CRM&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-4915915267323559833?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/4915915267323559833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-16-system-integration.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4915915267323559833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4915915267323559833'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-16-system-integration.html' title='Exercise 16: System Integration'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-6336371320783801530</id><published>2009-10-28T02:51:00.000-07:00</published><updated>2009-11-01T03:36:59.243-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Evelator pitch 1 and 2'/><title type='text'>Evelator pitch 2</title><content type='html'>Dear everybody,&lt;br /&gt;&lt;br /&gt;In this subject, we have learnted about Ruby on Rails (RoR). This is a new web application development tool, that makes web application creation easily for developers. Rails framework has supported many tools to create and control connection database, and create the database tables is unnecessary on RoR. Ruby language is like the Perl syntax, this is easy to learn and develop.&lt;br /&gt;&lt;br /&gt;Through out many workshops and exercises, we have had more understands and work out how to use the RoR as well. In some cases, we just get the basic of RoR and just use the Ruby language unfluently. Further far for learning, with more extra exercises and workshops of RoR to make us clearly understand and build up the web application as well.&lt;br /&gt;&lt;br /&gt;This is the movie about some example to create the website and controller. By the step by step, we hope to show you more understanding about RoR.&lt;br /&gt;&lt;br /&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-b3e2836ef2c6acee" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v11.nonxt6.googlevideo.com/videoplayback?id%3Db3e2836ef2c6acee%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331659410%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7DFA2AAFA941EBBC733E67F9F4AA0E43A46F6E4F.70200E80341E35B1168380F31C89A96FF53B5C6C%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Db3e2836ef2c6acee%26offsetms%3D5000%26itag%3Dw160%26sigh%3DRuJhiFZaQAHimBQBafxK7YbOLkw&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v11.nonxt6.googlevideo.com/videoplayback?id%3Db3e2836ef2c6acee%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331659410%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7DFA2AAFA941EBBC733E67F9F4AA0E43A46F6E4F.70200E80341E35B1168380F31C89A96FF53B5C6C%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Db3e2836ef2c6acee%26offsetms%3D5000%26itag%3Dw160%26sigh%3DRuJhiFZaQAHimBQBafxK7YbOLkw&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-6336371320783801530?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/6336371320783801530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/evelator-pitch-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6336371320783801530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6336371320783801530'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/evelator-pitch-2.html' title='Evelator pitch 2'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-6253115856640973524</id><published>2009-10-27T19:08:00.000-07:00</published><updated>2009-11-01T03:42:14.619-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 15: M-ecommerce: innovation and Mobile devices</title><content type='html'>In this age of significant telecommunications competition, mobile network operators continuously seek new and innovative ways to create differentiation and increase profits. One of the best ways to do accomplish this is through the delivery of highly personalized services. One of the most powerful ways to personalize mobile services is based on location. We will discuss Location Based Services (LBS), but we will first discuss the basis of LBS - location technology&lt;br /&gt;&lt;br /&gt;One of the most obvious technologies behind LBS is positioning, with the most widely recognized system being the Global Positioning System (GPS). There are however, other means of positioning in addition to GPS. These other technologies are network based positioning and typically rely on various means of triangulation of the signal from cell sites serving a mobile phone. In addition, the serving cell site can be used as a fix for location of the user.&lt;br /&gt;&lt;br /&gt;Location Management Function&lt;br /&gt;&lt;br /&gt;There must be a location management function to process positioning and GIS data on behalf of LBS applications. The location management function acts as a gateway and mediator between positioning equipment and LBS infrastructure.&lt;br /&gt;&lt;br /&gt;Services&lt;br /&gt;&lt;br /&gt;Location based information: One of the best ways to personalize information services is to enable them to be location based. An example would be someone using their Wireless Application Protocol (WAP) based phone to search for a restaurant. The LBS application would interact with other location technology components to determine the user's location and provide a list of restaurants within a certain proximity to the mobile user.&lt;br /&gt;&lt;br /&gt;Location based billing: The ability to have preferential billing is provided by this type of application. Through location based billing, the user can establish personal zones such as a home zone or work zone. Through arrangements with the serving wireless carrier, the user could perhaps enjoy flat-rate calling while in the home area and special rates while in other defined zones. This type of application can be especially useful when use in conjunction with other mobile applications such as prepaid wireless.&lt;br /&gt;&lt;br /&gt;Describe the purpose of the Open Mobile Alliance Initiative&lt;br /&gt;&lt;br /&gt;The Open Mobile Alliance Ltd. has been established by the consolidation of the WAP Forum and the Open Mobile Architecture Initiative. The new Open Mobile Alliance is a group of companies and organizations, with a commitment to a shared set of principles, who have come together to drive the growth of the mobile industry. It intends to grow the market for the entire industry by removing barriers to interoperability and supporting a seamless and easy-to-use mobile experience for end users. &lt;br /&gt;&lt;br /&gt;The mission of the Open Mobile Alliance is to grow the market for the entire mobile industry by removing the barriers to global user adoption and by ensuring seamless application interoperability while allowing businesses to compete through innovation and differentiation.&lt;br /&gt;&lt;br /&gt;Main component of a Mobile Web service Framework:&lt;br /&gt;&lt;br /&gt;Web service is tools, which are public on internet and provide some services or special services such as checking user personalities or banking. In term of, web service give some functions to use through the web.&lt;br /&gt;&lt;br /&gt;The basic Web services platform is XML + HTTP.&lt;br /&gt;&lt;br /&gt;XML provides a language which can be used between different platforms and programming languages and still express complex messages and functions.&lt;br /&gt;&lt;br /&gt;The HTTP protocol is the most used Internet protocol.&lt;br /&gt;&lt;br /&gt;Web services platform elements:&lt;br /&gt;&lt;br /&gt;•SOAP (Simple Object Access Protocol)&lt;br /&gt;•UDDI (Universal Description, Discovery and Integration)&lt;br /&gt;•WSDL (Web Services Description Language)&lt;br /&gt;&lt;br /&gt;Web Services have Two Types of Uses&lt;br /&gt;&lt;br /&gt;Reusable application-components.&lt;br /&gt;&lt;br /&gt;There are things applications need very often. So why make these over and over again? &lt;br /&gt;&lt;br /&gt;Web services can offer application-components like: currency conversion, weather reports, or even language translation as services. &lt;br /&gt;&lt;br /&gt;Connect existing software.&lt;br /&gt;&lt;br /&gt;Web services can help to solve the interoperability problem by giving different applications a way to link their data. &lt;br /&gt;&lt;br /&gt;With Web services you can exchange data between different applications and different platforms.&lt;br /&gt;&lt;br /&gt;_____________________________________________&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;Web service Tutorial, W3C, retrieved 17/10/2009 from http://www.w3schools.com/webservices/&lt;br /&gt;&lt;br /&gt;Hyacinth S. Nwana, Cambridge University Press, 1996, Software angent overview, retrieved 17/10/2009 from http://agents.umbc.edu/introduction/ao/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-6253115856640973524?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/6253115856640973524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-15-m-ecommerce-innovation-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6253115856640973524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6253115856640973524'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-15-m-ecommerce-innovation-and.html' title='Exercise 15: M-ecommerce: innovation and Mobile devices'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-2213037340079865017</id><published>2009-10-25T18:00:00.000-07:00</published><updated>2009-11-01T03:43:44.453-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 14: Searching mechanisms, virtual worlds and cyberagents</title><content type='html'>&lt;div align="left"&gt;Spider:&lt;br /&gt;&lt;br /&gt;A program that automatically fetches Web pages. Spiders are used to feed pages to search engines. It's called a spider because it crawls over the Web. Another term for these programs is webcrawler.&lt;br /&gt;&lt;br /&gt;contain links to other pages, a spider can start almost anywhere. As soon as it sees a link to another page, it goes off and fetches it. Large search engines, like Alta Vista, have many spiders working in parallel.&lt;br /&gt;&lt;br /&gt;A lot of Content and Links displayed on a webpage may not actually be visible to the Search Engines, eg. Flash based content, content generated through javascript, content displayed as images etc.&lt;br /&gt;&lt;br /&gt;This tool Simulates a Search Engine by displaying the contents of a webpage exactly how a Search Engine would see it.&lt;br /&gt;&lt;br /&gt;It also displays the hyperlinks that will be followed (crawled) by a Search Engine when it visits the particular webpage.&lt;br /&gt;&lt;br /&gt;Software agents&lt;br /&gt;&lt;br /&gt;Simplifying the complexities of distributed computing and overcoming the limitations of current user interface approaches. The final section provides a chapter by chapter overview of the emainder of the book.the two definitions of an agent that have been attempted:agent as an ascription, and agent as a description.&lt;br /&gt;&lt;br /&gt;Agent ascription:&lt;br /&gt;&lt;br /&gt;As previously noted, one of the most striking things about recent research and development in software agents is how little commonality there is between different approaches. Yet there is something that we intuitively recognize as a “family resemblance” among them. Since this esemblance cannot have to do with similarity in the details of implementation, architecture, or theory, it must be to a great degree a function of the eye of the beholder. “Agent is that agent&lt;br /&gt;does”4 is a slogan that captures, albeit simplistically, the essence of the insight that agency cannot ultimately be characterized by listing a collection of attributes but rather consists fundamentally as an attribution on the part of some person&lt;br /&gt;&lt;br /&gt;Agent description:&lt;br /&gt;&lt;br /&gt;A more specific definition of “software agent” that many agent researchers might find acceptable is: a software entity which functions continuously and autonomously in a particular environment, often inhabited by other agents and processes. The requirement for continuity and autonomy derives from our desire that an agent be able to carry out activities in a flexible and intelligent manner that is responsive to changes in the environment without requiring constant human uidance or intervention. Ideally, an agent that functions continuously in an environment over a long period of time would be able to learn from its experience. In addition, we expect an agent that inhabits an environment with other agents and processes to be able to communicate and cooperate with them, and perhaps move from place to place in doing so.&lt;br /&gt;&lt;br /&gt;Identify various activities in e-commerce where software agents are currently in use.&lt;br /&gt;&lt;br /&gt;As internet and technology emerges, virtual environments become widely used as mediums for conducting many applications such as entertainment, gaming, and training. However, the use of hese environments as mediums for conducting virtual shopping is little and the relation of trust, an important factor to increase costumers’ purchases in the physical world, might be among the reasons for such little use. In the current study, we discuss the importance of the continuous resence of software agent in the absence of the underlying vendor to increase e-clients virtual transactions.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-2213037340079865017?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/2213037340079865017/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-14-searching-mechanisms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2213037340079865017'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2213037340079865017'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-14-searching-mechanisms.html' title='Exercise 14: Searching mechanisms, virtual worlds and cyberagents'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-2735830392898184587</id><published>2009-10-24T23:32:00.000-07:00</published><updated>2009-11-01T03:46:39.493-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 13: Shopping cart specifications</title><content type='html'>Develop the class diagram for the following shopping cart specifications: &lt;br /&gt;A shoppingCart object is associated with only one creditCard and customer and to items in itemToBuy object. Persistent customer information such as name, billing address, delivery address, e-mail address and credit rating is stored in the customer object. The credit card object is associated with a frequentShopper discount object, if the credit rating for the customer is good. The customer can make or cancel orders as well as add and delete items to the shopping cart product. The credit card object contains the secure method for checking that the charge is authentic.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_V-bFy5NIT20/SuptPdiqehI/AAAAAAAAADA/t2yq0a5eqZo/s1600-h/ex13.jpeg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 316px; height: 320px;" src="http://4.bp.blogspot.com/_V-bFy5NIT20/SuptPdiqehI/AAAAAAAAADA/t2yq0a5eqZo/s320/ex13.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5398247215752444434" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-2735830392898184587?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/2735830392898184587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-13-shopping-cart.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2735830392898184587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2735830392898184587'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-13-shopping-cart.html' title='Exercise 13: Shopping cart specifications'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_V-bFy5NIT20/SuptPdiqehI/AAAAAAAAADA/t2yq0a5eqZo/s72-c/ex13.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-8169697917047007892</id><published>2009-10-16T21:31:00.000-07:00</published><updated>2009-10-29T21:31:46.247-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 12: Modelling with UML or MVC?</title><content type='html'>Examine the Use Case in Figure 4 and explain the MVC architecture of the online bookstore (the model the view and controllers) needed to Lookup Books and Add to Shopping Cart.&lt;br /&gt;&lt;br /&gt;On working process...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-8169697917047007892?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/8169697917047007892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-12-modelling-with-uml-or-mvc.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/8169697917047007892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/8169697917047007892'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-12-modelling-with-uml-or-mvc.html' title='Exercise 12: Modelling with UML or MVC?'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-5532380729900476631</id><published>2009-10-16T21:29:00.000-07:00</published><updated>2009-10-29T21:30:50.961-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 11: TP monitors and transaction protocols</title><content type='html'>&lt;span style="font-weight:bold;"&gt;1. Give a description in your own words of the ACID properties of a transaction. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; ACID (Atomicity, Consistency, Isolation and Durability) in computer science is known as a set of properties which is a unique to make sure all database transactions have high quality. Each part of ACID is shown below:&lt;br /&gt; Atomicity: it has function to ensure that all transaction is done by following an “all or nothing” rule. This means if there is a transaction fail, this will affect entire transaction in the state.&lt;br /&gt; Consistency: this property has function to ensure transactions which were done in database have remained on a consistent view of the data (before and after they leave data even this transaction successful or not). &lt;br /&gt; Isolation: this property has function to ensure that other transaction operations can not view or access the data which is in processing state to maintain consistency in database transaction until the transactions are finished. &lt;br /&gt; Durability: this property has function to keep transaction continuing after notifying of a user success and leaving no transaction in undone state. In addition, durability will help to overrun failure system problem (for example the transactions can be written into transaction logs which can be used to restore state before system failure state). &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2. Describe a TP monitor environment. How can a TP monitor stop an operating system being overwhelmed? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; Teleprocessing monitor (Transaction processing monitor) is defined by Wikipedia is an control program that mange the data processing  between local and remote terminals to make sure all transactions are finished. In addition, it also has function to manage the data transferring between server and client when client send a request to the server (this will ensure the requesting is done so the transaction can continue on process. Besides, TP monitor ensure that all transactions are updated at the current state and it creates a high availability system by switching a failed transaction to another machine so there is no transaction lost or destroyed (the Customer Information Control System (CICS) for IBM mainframe computers is an example of TP monitor).&lt;br /&gt; TP monitor stop an operating system being overwhelmed creating a new class (load balancing) if there is many incoming clients requesting that over the number of process in a server class. Furthermore, load balancing helps distribute processing and communications activity across a computer system so there is no overwhelmed in single part. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Teleprocessing monitor. Retrieved 16 October 2009 from http://en.wikipedia.org/wiki/Teleprocessing_monitor&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-5532380729900476631?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/5532380729900476631/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-11-tp-monitors-and-transaction.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5532380729900476631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5532380729900476631'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-11-tp-monitors-and-transaction.html' title='Exercise 11: TP monitors and transaction protocols'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-2437117253356165183</id><published>2009-10-16T04:00:00.000-07:00</published><updated>2009-10-31T04:53:12.418-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 8</title><content type='html'>Despite the fact that we didn’t use the online tools for the workshop series and we didn’t have an online production server I found the workshop series to be a good introduction to the Ruby on Rails framework. I enjoyed the RailsSpace book we had to read in Workshop 6, Hartl, M &amp; Prochazka, A, (2008). RailsSpace. I believe the online tutorials were helpful and insightful as well.&lt;br /&gt;&lt;br /&gt;1.Strengths of Ruby on Rails workshop series:&lt;br /&gt;&lt;br /&gt;.The book RailsSpace, it’s strength lies in its ability to give insights into the framework and tie in the underlying paradigms whilst allowing you to apply it. In my opinion the best way to learn and retain anything is through cognitive exploration, in this case, developing a small application. Further, because it discussed and applied the topics associated with the Rails conventions as you moved through the book, you gained a stronger understanding of the framework itself. By creating an application you can visualise and commit to memory the theoretical concepts like the MVC design pattern. &lt;br /&gt;&lt;br /&gt;.The Ruby and Ruby on Rails tutorials and developing the OTBS application, introduced in Workshops 3, 4, 5 and 6 although small and trivial, as in the case of Workshop 4, at least presented a more applied learning approach. Without this approach I found myself struggling to understand concepts like symbols and block structures. &lt;br /&gt;&lt;br /&gt;.I did Workshop 6, I could see how each paradigm is applied to the Rails framework, one could see the MVC pattern in the structure of the directories, and the way controllers actions are used by the Views and how the Model directories apply the ORM ActiveRecord. As I learnt about the Layout’s and Partial Views I could see that how the convention of DRY was applied, and as you learn about how Ruby is fairly open language in terms of the way you can liberally employ it’s programming syntax, the Rails framework is quite strict in that it has its own conventions and standards for doing things that makes it easy to build around hence Convention over Configuration&lt;br /&gt;&lt;br /&gt;2.Weaknesses of Ruby on Rails workshop series:&lt;br /&gt;&lt;br /&gt;.In fact, the workshop series should have been moved to the first week of the course with RailsSpace introduced as the first Workshop along with some basic exercises on the Ruby programming syntax. In its current form the Workshops I believe are undermined by a lack of continuity as you progress one workshop to the next. Also the fact that in one Workshop, Workshop 6, we are expected to read and apply the whole text in a single sitting in order to gain a much deeper understanding of everything that has been stated in preceding Workshops. In my view it is too much to expect from full-time students or full-time workers studying part-time. I would like to see the book used, but its material presented over a longer period of time. &lt;br /&gt;&lt;br /&gt;.There should be more practical workshop exercises. Workshop 4 had several small exercises but none that really challenged and linked the Ruby language to the Rails framework. In the form of practical development topics that linked directly to the paradigms Rails uses. For example RailsSpace demonstrates Partials to explain DRY and compares multiple possibilities of the Ruby syntax to what the Rails conventions expects you to use. &lt;br /&gt;&lt;br /&gt;.The scope and specification of the OTBS application were not clearly defined. I wasn’t sure where the OTBS application was heading and what was required. The workshops seemed disjointed as well by not mentioning or providing a practical developmental continuous approach to building the OTBS application with each workshop. &lt;br /&gt;&lt;br /&gt;3.Aspects of Ruby on Rails workshop series:&lt;br /&gt;&lt;br /&gt;.Initially understanding elements of the Ruby syntax. I found concept symbols confusing, although again it wasn’t until after completing Workshop 6 that I developed a better understanding of them.&lt;br /&gt;&lt;br /&gt;.Workshop 6. It was without a doubt a massive effort to expect us to get through 500+ pages and apply the knowledge. I managed in four continuous days to get up to chapter 9 and then after that read other chapters I thought would help but it is not a realistic expectation in my opinion. &lt;br /&gt;&lt;br /&gt;4.Improvements could be made to the Ruby on Rails workshop series:&lt;br /&gt;&lt;br /&gt;.The text, RailsSpace, needs to begin in Workshop 1, and the relevant chapters marked to provide more direct guidance. Also the content needs to be spaced evenly over more than one Workshop.&lt;br /&gt;&lt;br /&gt;.The OTBS application should have a more clearly defined scope and set of requirements. That way we can test what we have completed and also discuss and compare notes. At the moment when I see the other blogs I’m not sure what the requirements are because everybody has their own interpretations. &lt;br /&gt;&lt;br /&gt;.More practical and better quality exercises that link directly to the Rails paradigms.&lt;br /&gt;&lt;br /&gt;5. Reflect on your experiences with the other Web framework used in this subject: Was it effective? How can it be improved? Should other Web frameworks be used as well or instead of Ruby on Rails?&lt;br /&gt;&lt;br /&gt;In fact, Ruby on Rails is the newest web application framework and having more effects and conveniences to use and develop the website. With many advantages and disadvantages to create the application on web, RoR which is less coding to build up the web page and the framework has many supports for user. I have already developed the web application on other frameworks such as .NET, Java and PHP. They have some strengths and weaknesses, but they give full control for developers and many support from third company to make the web application in the powerfull. &lt;br /&gt;&lt;br /&gt;6. Did the Developer’s or IT managers Team that you joined after workshop 4 have a preference towards using other tools to facilitate collaboration? Comment on the differences between these use of the sub-forum or Interact wiki tools from your experiences in this subject.&lt;br /&gt;&lt;br /&gt;.It was difficult to organise. I know I am in a different time zone than most of the other students. Again this shouldn’t be an excuse but I think it hasn’t helped the situation.&lt;br /&gt;&lt;br /&gt;.We started the workshops late in the course. More time may have given us something to talk about.&lt;br /&gt;&lt;br /&gt;.No clear direction for the OTBS application. Conversely you could argue that this should stimulate conversation, but it didn’t. I think this was because we didn’t really cover Rails in depth until Workshop 6 and by that time everyone is scurrying to complete and finish other higher priority tasks.&lt;br /&gt;&lt;br /&gt;7. Further comments to add?&lt;br /&gt;&lt;br /&gt;I have enjoyed the course and learning Ruby on Rails and the MVC design pattern. I think the next step would be to continue learning Rails and setup a production environment on Ubuntu so I cant test deployment correctly. From there develop small applications and build on my understanding of Rails.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-2437117253356165183?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/2437117253356165183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-8.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2437117253356165183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2437117253356165183'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-8.html' title='Workshop 8'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-7768795347319682620</id><published>2009-10-16T03:44:00.000-07:00</published><updated>2009-10-31T03:57:55.099-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 7</title><content type='html'>Nowadays, Ruby on Rails is a tool for making web application. Ruby is the object oriented programming language and it is easy to create web application and mapping of database tables to Ruby object. No messy SQL calls in most Ruby application. The most important is the automatic conversion of data into HTML or back, this function makes the Ruby being different with other web programming languages. Moreover, built-in support for automated testing of data models and web page, that Rails makes it easy to write testing suites and allowing to be confident that change the code will not to be break the application. Database is independent to create and alteration of database tables. Deployment is supported by many deploy tools.&lt;br /&gt;&lt;br /&gt;JumpBox&lt;br /&gt;&lt;br /&gt;The JumpBox for Ruby on Rails server as the deployment system for Rails application which developers decide it’s time to deploy their application. It allows developers to concentrate on their development rather than having to accommodate the potentially infinite number of configuration possibilities that one might otherwise encounter in attempting to distribute Rails applications to end user systems. As many conveniences, users can host their web applications on a Linux, Mac OS, or Window computer. The JumpBox for Ruby on Rails is a self-contained Ubuntu Linux environment that, upon startup, immediately hosts fully functioning Apache, Ruby, MySQL, and Ruby on Rails environments. With only a minimal amount of preparation, users can use their favorite deployment method to install and host their Rails application on the JumpBox.&lt;br /&gt;&lt;br /&gt;JumpBox admin interfaces screenshots&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/__ZuX-7uA-0o/SuwVYumQOoI/AAAAAAAAAUw/vlp8Q1F3vQI/s1600-h/admin-1.png"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 260px; DISPLAY: block; HEIGHT: 135px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5398713567879903874" border="0" alt="" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SuwVYumQOoI/AAAAAAAAAUw/vlp8Q1F3vQI/s320/admin-1.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuwVi93mGoI/AAAAAAAAAU4/dSxp36TwEn0/s1600-h/admin-2.png"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 251px; DISPLAY: block; HEIGHT: 246px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5398713743777864322" border="0" alt="" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuwVi93mGoI/AAAAAAAAAU4/dSxp36TwEn0/s320/admin-2.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuwVu8vodzI/AAAAAAAAAVA/WJuWWLOuO5o/s1600-h/admin-3.png"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 259px; DISPLAY: block; HEIGHT: 117px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5398713949634459442" border="0" alt="" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuwVu8vodzI/AAAAAAAAAVA/WJuWWLOuO5o/s320/admin-3.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;JRuby for J2EE using Glassfish and Warbler.&lt;br /&gt;&lt;br /&gt;I’m looking at this in conjunction with using Netbeans, as Netbeans allows you use JRuby natively.&lt;br /&gt;&lt;br /&gt;Capistrano&lt;br /&gt;&lt;br /&gt;Capistrano is described as a “tool for automating tasks on one or more remote servers. It executes commands in parallel on all targeted machines, and provides a mechanism for rolling back changes across multiple machines.” (Capistrano, n.d.)&lt;br /&gt;I’m not sure I need it at this stage worth a look at, later once I get a production site up and running.&lt;br /&gt;_________________________________________________________&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;1.JumpBox. (n.d.). JumpBox for Ruby on Rails Deployment. Retrieved 15th July 2009 from http://www.jumpbox.com/app/rubyonrails&lt;br /&gt;&lt;br /&gt;2.rubyonrails.org. (n.d.). Deploying Ruby on Rails is Easy. Retrieved 15th July 2009 from http://rubyonrails.org/deploy&lt;br /&gt;&lt;br /&gt;3.Capistrano (n.d.) Retrieved 15th July 2009 from http://www.capify.org/index.php/Capistrano&lt;br /&gt;&lt;br /&gt;4.Hartl, M &amp; Prochazka, A, (2008). RailsSpace: Building a Social Networking Website with Ruby on Rails. Addison-Wesley (pp 505-516): Addison-Wesley&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-7768795347319682620?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/7768795347319682620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7768795347319682620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7768795347319682620'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-7.html' title='Workshop 7'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/__ZuX-7uA-0o/SuwVYumQOoI/AAAAAAAAAUw/vlp8Q1F3vQI/s72-c/admin-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-669865258759256547</id><published>2009-10-15T22:44:00.000-07:00</published><updated>2009-10-31T04:54:35.708-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 6</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Developer's thread&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;OTBS develops for passengers booking online, with the auto-generated application controller. That creates for passenger site and user.&lt;br /&gt;&lt;br /&gt;The user_controller provides the user form for users can registry and control their information. There are index, edit, register, login and logout.Moreover, the passenger_controller provides some methods for modification the information of passenger such as index, show, new, update and delete.&lt;br /&gt;&lt;br /&gt;Here is the code for passenger controller:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;class PassengersController &lt; user =" User.find(session[:user_id])" passengers =" Passenger.find_all_by_user_id(session[:user_id])" xml =""&gt; @passengers }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end &lt;/span&gt;&lt;/p&gt;&lt;em&gt;&lt;/em&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# GET /passengers/1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# GET /passengers/1.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def show&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.find(params[:id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;if @passenger.user_id == User.find(session[:user_id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;respond_to do format&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html # show.html.erb&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { render :xml =&gt; @passenger }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# GET /passengers/new&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# GET /passengers/new.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def new&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@user = User.find(session[:user_id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.new&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;respond_to do format&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html # new.html.erb&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { render :xml =&gt; @passenger }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-style: italic;"&gt;# GET /passengers/1/edit&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def edit&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.find(params[:id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-style: italic;"&gt;# POST /passengers&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# POST /passengers.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def create&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.new(params[:passenger])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger.user_id = session[:user_id]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;respond_to do format&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;if @passenger.save&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;flash[:notice] = ‘Passenger was successfully created.’&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html { redirect_to(@passenger) }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { render :xml =&gt; @passenger, :status =&gt; :created, :location =&gt; @passenger }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html { render :action =&gt; “new” }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { render :xml =&gt; @passenger.errors, :status =&gt; :unprocessable_entity }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-style: italic;"&gt;# PUT /passengers/1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# PUT /passengers/1.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def update&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.find(params[:id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;respond_to do format&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;if @passenger.update_attributes(params[:passenger])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;flash[:notice] = ‘Passenger was successfully updated.’&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html { redirect_to(@passenger) }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { head :ok }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html { render :action =&gt; “edit” }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { render :xml =&gt; @passenger.errors, :status =&gt; :unprocessable_entity }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-style: italic;"&gt;# DELETE /passengers/1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;# DELETE /passengers/1.xml&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;def destroy&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger = Passenger.find(params[:id])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;@passenger.destroy&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;respond_to do format&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.html { redirect_to(passengers_url) }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;format.xml { head :ok }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;There is the passenger index method:&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;@passengers = Passenger.find_all_by_user_id(session[:user_id])&lt;/blockquote&gt;Which the user_id is a foreign key to look up the passenger information.&lt;br /&gt;&lt;br /&gt;User can get to this site for register or login.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/__ZuX-7uA-0o/SukspYrMdDI/AAAAAAAAAUo/rGbkIJy8c5c/s1600-h/otbs_home.jpg"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 191px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5397894717890130994" alt="" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SukspYrMdDI/AAAAAAAAAUo/rGbkIJy8c5c/s320/otbs_home.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;In the first time going to this site, user has to create the account to login as well. when users login successful absolutely and they can use the form for booking taxi as well.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuksZy-R5vI/AAAAAAAAAUg/YbjyAlxKM9c/s1600-h/otbs_register.jpg"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 306px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5397894450071594738" alt="" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuksZy-R5vI/AAAAAAAAAUg/YbjyAlxKM9c/s320/otbs_register.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuksK4dBDkI/AAAAAAAAAUY/8XZIUpfLKaQ/s1600-h/otbs_show_booking2.jpg"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 306px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5397894193844653634" alt="" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SuksK4dBDkI/AAAAAAAAAUY/8XZIUpfLKaQ/s320/otbs_show_booking2.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-669865258759256547?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/669865258759256547/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-6.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/669865258759256547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/669865258759256547'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-6.html' title='Workshop 6'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/__ZuX-7uA-0o/SukspYrMdDI/AAAAAAAAAUo/rGbkIJy8c5c/s72-c/otbs_home.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-8873130846084370205</id><published>2009-10-15T13:04:00.000-07:00</published><updated>2009-10-30T03:18:00.662-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 10: Concurrency and Threading demonstration in Python</title><content type='html'>&lt;span style="font-weight:bold;"&gt;1. Find definitions for eight terms and concepts used in threaded programming: &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Thread Synchronisation: this is process which will block a thread which is trying to access to resource that is being accessed by other thread. The blocking process will end until resource is free. This process helps to prevent deadlock when 2 thread access to the same resource at the same time.&lt;br /&gt;  &lt;br /&gt;2. Locks: is defined as a method which has function to block threads accessing to resource to avoid deadlock when there are many threads try to accessing to the same resource at the same time. &lt;br /&gt;&lt;br /&gt;3. Deadlock: is refer to specific condition when two processes or more are waiting in chain for accessing the resource. This happen often in multiprocessing where many processes have to share specific resources.&lt;br /&gt;&lt;br /&gt;4. Semaphores: it is a process that allows many processes can access to resource at the same time. In addition, it is integer that is changed after each process access to the resource.  &lt;br /&gt;&lt;br /&gt;5. Mutex (mutual exclusion): according to Wikipedia is an object which has function to help avoid two events not to occur at the same time (when two process access resource) by using critical sections.  &lt;br /&gt;&lt;br /&gt;6. Thread: a thread of execution results from a separation of a computer program into two running tasks. In addition, process contains thread or multithreads which and share a resource such as memory (but multiprocessors do not share a same resource). &lt;br /&gt;&lt;br /&gt;7. Event: Wikipedia mentions that event is something that is initiated outside the scope of a program which is handled by a piece of code inside the program. Furthermore, it is often used in user interface such as pressing a key on the keyboard. &lt;br /&gt;&lt;br /&gt;8. Waitable timer: according to MSDN mentions that object which has state is set to be signaled when the due time arrive, we call this is waitable timer object. In addition, there are two types of waitable timer that can be created: manual-reset timer, synchronization timer and either way of these two is periodic timer.  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;2. A simple demonstration of the threading module in Python (threaddemo.py) that uses both a lock and semaphore to control concurrency is by Ted Herman at the University of Iowa. The code and sample output below are worth a look. Report your findings. &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; What we finding are:&lt;br /&gt; Semaphore in this program has limit module running 3 tasks at the same time.&lt;br /&gt; These tasks will run continuously after each one done.&lt;br /&gt; The mutex script with “RLock” has function get an update the process on semaphore.&lt;br /&gt; Sema.release() will release the task to let another running continuously.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;MSDN (2009).  Waitable Timer Objects. Retrieved 15 October 2009 from http://msdn.microsoft.com/en-us/library/ms687012%28VS.85%29.aspx&lt;br /&gt;&lt;br /&gt;Threads and Locks(2005).  Retrieved 15 October 2009 from http://java.sun.com/docs/books/jls/third_edition/html/memory.html&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.).Deadlock. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Firewall&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Mutual exclusion. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Mutual_exclusion&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Thread. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Thread_%28computer_science%29&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Event. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Event_%28computing%29&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-8873130846084370205?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/8873130846084370205/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-10-concurrency-and-threading.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/8873130846084370205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/8873130846084370205'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-10-concurrency-and-threading.html' title='Exercise 10: Concurrency and Threading demonstration in Python'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-3771064650994044362</id><published>2009-10-15T13:01:00.000-07:00</published><updated>2009-10-30T03:17:13.086-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 9: Electronic payments and security I</title><content type='html'>&lt;span style="font-weight:bold;"&gt;1. Find out about SET and the use of RSA 128-bit encryption for e-commerce. &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt; - SET (Secured Electronic Transaction) is defined by Wikipedia which is a standard protocol for secured purpose for electronic payments and credit card transactions over insecure network in the internet. Furthermore, SET was not created to be a payment system rather than it is a security protocol that use cryptographic technology for authentication enabling users to employ the existing credit card payment infrastructure. However, SET has becoming less effect in heavy demanding security over the internet against frau because it needs to install client software, cost too much compare to SSL. &lt;br /&gt; - RSA 128-bit encryption is defined by Wikipedia is an algorithm for public-key cryptography which has 2 parts: public key and private key. Furthermore, it has becoming popular in use as a electronic commerce protocol due to it provides good security in internet transaction. The process of RSA is the message is sent over internet with public key and the receiver is only the one has private key which can open this message. Therefore, it is harmless when the message is captured by third party. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Secure Electronic Transaction. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Secure_Electronic_Transaction&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.).RSA. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/RSA&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;2. What can you find out about network and host-based intrusion detection systems? &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; - An Intrusion detection system (IDS) is defined by Wikipedia is that a software or hardware is designed for detection any incoming attacks which try to access to network or client. Furthermore, IDS can be applied to network, applications and host.&lt;br /&gt;&lt;br /&gt; Network intrusion detection system (NIDS) has function to monitor network traffic for any suspicious signals or messages which can contains Trojan, virus, etc come from outside network. &lt;br /&gt; Host-based intrusion detection system (HIDS) has function to monitor computer system to find which is going on the computer by analyzing application logs, file-system to prevent a computer can be affected by virus or Trojan. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Intrusion detection system. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Intrusion_detection_system&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;3. What is 'phishing'? &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; Phishing as defined by Webopedia is an action of a theft that sent an email to a user to get the sensitive information like password, credit card number by claiming to be an established legitimate enterprise asking for information update.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Webopedia (n.d.).Phishing .Retrieved 15 October 2009 from http://www.webopedia.com/TERM/P/phishing.html&lt;br /&gt;&lt;br /&gt;4.  What is SET and how does it compare to SSL as a platform for secure electronic transaction? Is SET in common use?&lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;br /&gt; - SET (Secured Electronic Transaction) is defined by Wikipedia which is a standard protocol for secured purpose for electronic payments and credit card transactions over insecure network in the internet. Furthermore, SET was not created to be a payment system rather than it is a security protocol that use cryptographic technology for authentication enabling users to employ the existing credit card payment infrastructure.&lt;br /&gt; - Secure sockets layer (SSL) is put in the server which has client payment information  &lt;br /&gt; - SSL has more advantages over SET like messages can not be modified and high cryptography making it unreadable, it only need to install on server not client like SET, etc.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5. What are cookies and how are they used to improve security? Can the use of cookies be a security risk? &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; According to one definition, Cookies are mall piece of information can be read back from web browser after be sent by a web server. Furthermore, they are used to remember to store password, links to interesting pages or online shopping carts. Cookies allow tracking website and which webs they visited. In addition, cookies using is a security risk due to sensitive information are store on web browser and these information always be sent to web server every time visiting. Therefore, this information is easily captured by third party.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What are cookies? (n.d.) Retrieved 15 October 2009 from http://www.cookiecentral.com/cm002.htm&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;6. What makes a firewall a good security investment? Accessing the Internet, find two or three firewall vendors. Do they provide hardware, software or both? &lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; A firewall is defined by a Wikipedia is a part of computer system which has function to block unauthorized access, incoming message or signals. Furthermore, firewall can be implemented in software or hardware for monitor traffic comes in and out computer. Firewall is important for security in computer system so it is a good security investment.  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.).Firewall. Retrieved 15 October 2009 from http://en.wikipedia.org/wiki/Firewall&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;7. Get the latest PGP information from http://en.wikipedia.org&lt;span style="font-style:italic;"&gt;&lt;/span&gt;&lt;/span&gt;/wiki/Pretty_Good_Privacy. The use of digital certificates and passports are just two examples of many tools for validating legitimate users and avoiding consequences such as identity theft. What others exist? &lt;br /&gt;&lt;br /&gt; The other tools for validating legitimate users and avoiding consequences such as identity theft are authentication for username/password, SSL certificate, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-3771064650994044362?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/3771064650994044362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-9-electronic-payments-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/3771064650994044362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/3771064650994044362'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-9-electronic-payments-and.html' title='Exercise 9: Electronic payments and security I'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-5737534322501777947</id><published>2009-10-14T12:25:00.000-07:00</published><updated>2009-10-29T06:17:11.941-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 5</title><content type='html'>&lt;strong&gt;Developer’s thread&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Build the web application on the Rails framework, which is the Ruby language. Using the Webrick ruby server deploys the website and creates controllers to do actions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuicZIxI5lI/AAAAAAAAAUI/c-rkOHkRXYo/s1600-h/1.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 240px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397736109067789906" border="0" alt="" src="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuicZIxI5lI/AAAAAAAAAUI/c-rkOHkRXYo/s320/1.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;We create the controller and try to connect the method action of the controller. Methods will do some scripts to run on server and starting website significantly. &lt;p&gt;&lt;a href="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuicB6kMV_I/AAAAAAAAAUA/Hb7MqEvw0l4/s1600-h/controller_breathe.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 167px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397735710118402034" border="0" alt="" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuicB6kMV_I/AAAAAAAAAUA/Hb7MqEvw0l4/s320/controller_breathe.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In the action the breathe method in the mammal controller require the template to run out the website remarkably. The necessary template, which is just a .rhtml file to control the information to show out.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuibyZ0jhtI/AAAAAAAAAT4/4n2PVhh0DNA/s1600-h/controller_breathe+2.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 196px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397735443630622418" border="0" alt="" src="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuibyZ0jhtI/AAAAAAAAAT4/4n2PVhh0DNA/s320/controller_breathe+2.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This is the example to show out the necessary information o the web page with the RoR. The breathe method is called directly on the mammal controller.&lt;br /&gt;Create the new application on the Rails to demonstrate the use of an active view to pass the data from an action to view.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/__ZuX-7uA-0o/Suibgl3FCiI/AAAAAAAAATw/vXkjKXL0hOA/s1600-h/controller_scenery_rubycode.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 217px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397735137624787490" border="0" alt="" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/Suibgl3FCiI/AAAAAAAAATw/vXkjKXL0hOA/s320/controller_scenery_rubycode.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;Now, we modify the rubycode action with the value of time in the scenery controller and get the data directly from the action to show on the web page.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuibLVtH0hI/AAAAAAAAATo/twrua0oXrTc/s1600-h/demo_rubycode_time_now.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 173px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397734772510806546" border="0" alt="" src="http://3.bp.blogspot.com/__ZuX-7uA-0o/SuibLVtH0hI/AAAAAAAAATo/twrua0oXrTc/s320/demo_rubycode_time_now.JPG" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This is example that illustrated the convenience of the RoR to design the web page, which is less coding on the web page. The controller gets the data on its methods to show out.&lt;br /&gt;&lt;br /&gt;The Rails’ controller can get the information from the web page to do or show on another web page of the site. This is very easy to get the information on web page, which just modify necessary variables and pass them on the method of controller.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuiemnLJ9NI/AAAAAAAAAUQ/mhdRgMdzGLM/s1600-h/cab_cabtype.JPG"&gt;&lt;img style="TEXT-ALIGN: center; MARGIN: 0px auto 10px; WIDTH: 320px; DISPLAY: block; HEIGHT: 194px; CURSOR: hand" id="BLOGGER_PHOTO_ID_5397738539591529682" border="0" alt="" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/SuiemnLJ9NI/AAAAAAAAAUQ/mhdRgMdzGLM/s320/cab_cabtype.JPG" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-5737534322501777947?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/5737534322501777947/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5737534322501777947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5737534322501777947'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/workshop-5.html' title='Workshop 5'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/__ZuX-7uA-0o/SuicZIxI5lI/AAAAAAAAAUI/c-rkOHkRXYo/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-4840915019629183879</id><published>2009-10-14T03:11:00.000-07:00</published><updated>2009-10-30T03:12:32.692-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 7: Application server platforms in e-commerce</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;1. Why is the perception getting stronger that integration will become a critical factor in coming days? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; The application which has stronger integration will be able to connect or link to each other. For example: Microsoft.net framework.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2.  What is the relationship of AJAX to JQuery (jquery.com) and the lightweight Web 2.0 javascript framework called MooTools (mootools.net) within the enterprise software architecture? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; Ajax is defined is a group of interrelated web development techniques which are used on the client side, this help web application can get data from server without reloading the existing page.&lt;br /&gt; According to Wikipedia said that JQuery is free software that works on interaction between JavaScript and HTML. Therefore, it allows adding AJAX to application by using JavaScript libraries. &lt;br /&gt; Wikipedia also mentions that MooTools which is open source software (by using AJAX and JavaScript as a framework) uses object-oriented programming JavaScript that helps web developer can write browser JavaScript more flexible and efficient. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Ajax (programming). Retrieved 14 October 2009 from http://en.wikipedia.org/wiki/Ajax_%28programming%29&lt;br /&gt;Wikipedia (n.d.). Jquery. Retrieved 14 October 2009 from http://en.wikipedia.org/wiki/JQuery&lt;br /&gt;Wikipedia (n.d.).Mootools. Retrieved 14 October 2009 from http://en.wikipedia.org/wiki/MooTools&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3.  What are the similarities between the object-oriented development using model-view-controller (MVC) in Ruby on Rails 2.0 and Action Script 2.0 (Flash animations)? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; Ruby on Rails 2.0 and Action Script 2.0 (Flash animations) are using data structures and method to design applications and both are object-oriented programming language.&lt;br /&gt; Ruby on rails 2.0 use model-view-controller (MVC) to provide scaffolding to construct the models and views for website.&lt;br /&gt; Action Script 2.0 as Moock (2004) mentions that it improves object-oriented programming by using syntax and methodology. Furthermore, Action Script 2.0 is also support tradition object-oriented features such as providing class keyword for creating class and extends.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Moock, C. (2004). Action script 2.0 overview. Retrieved 14 October 2009 from http://www.devarticles.com/c/a/Flash/ActionScript-2-0-Overview/&lt;br /&gt;&lt;br /&gt;Wikipedia. (n.d.). Ruby on rails. Retrieved 14 October 2009 from http://en.wikipedia.org/wiki/Ruby_on_Rails&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;4. What does it mean to develop RESTful practices into our web applications &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; RESTful is confirmed as the Representational state transfer (REST) constraints.&lt;br /&gt; According to Wikipedia, REST which is style of software architecture that consists of clients and servers used for distributed hypermedia systems such as the World Wide Web (WWW). Besides, Wikipedia also shows that “REST helps to identify existing problems to ensure that protocol extensions would not violate the core constraints that make the Web successful.” &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;References&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Wikipedia (n.d.). Representational State Transfer. Retrieved 14 October 2009 from http://en.wikipedia.org/wiki/Representational_State_Transfer&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-4840915019629183879?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/4840915019629183879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-7-application-server-platforms.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4840915019629183879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4840915019629183879'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/exercise-7-application-server-platforms.html' title='Exercise 7: Application server platforms in e-commerce'/><author><name>Victor</name><uri>http://www.blogger.com/profile/04402073289871387756</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-6568091563847054487</id><published>2009-10-12T21:02:00.000-07:00</published><updated>2009-11-01T03:49:36.072-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Evelator pitch 1 and 2'/><title type='text'>Evelator Pitch 1</title><content type='html'>&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-21683ef1ae3e4fd2" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v7.nonxt7.googlevideo.com/videoplayback?id%3D21683ef1ae3e4fd2%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331659410%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D42F55982EB6E033DC09A8D06F9350786629500AA.B308DB28D911E7EB44515400E4E02B507F3799E%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D21683ef1ae3e4fd2%26offsetms%3D5000%26itag%3Dw160%26sigh%3DvojyxB06oxMpoMqCmo87FwZgFZQ&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v7.nonxt7.googlevideo.com/videoplayback?id%3D21683ef1ae3e4fd2%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1331659410%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D42F55982EB6E033DC09A8D06F9350786629500AA.B308DB28D911E7EB44515400E4E02B507F3799E%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D21683ef1ae3e4fd2%26offsetms%3D5000%26itag%3Dw160%26sigh%3DvojyxB06oxMpoMqCmo87FwZgFZQ&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Hello everyone,&lt;br /&gt;&lt;br /&gt;We have completed all the exercises and workshops of Ruby on Rails. It is the strong web development tool with the command line to give more controlling on web framework significantly. The most excited is the design web with less coding on the web. Moreover, the powerful in the connection with many Databases such as SQL server, MySQL, and Oracle is simple and immediate . It support the JavaScript as well and the AJAX make the website creating is so beautiful.&lt;br /&gt;&lt;br /&gt;The convenience of the RoR, which do not need any web development tools to support such as Visual Studio for .NET and NetBean for Java. We can code the web page on the note book. Importantly, the web is simple to deploy on server with the Rails framework.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-6568091563847054487?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/6568091563847054487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/evelator-pitch-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6568091563847054487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6568091563847054487'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/10/evelator-pitch-1.html' title='Evelator Pitch 1'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-5152419226752943268</id><published>2009-09-10T10:18:00.000-07:00</published><updated>2009-10-31T04:57:14.529-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 5: XML – eXtensible Markup Language</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/__ZuX-7uA-0o/Sqk2G3FGF4I/AAAAAAAAAR4/TT8_fbe6CaU/s1600-h/car_xml.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/Sqk2G3FGF4I/AAAAAAAAAR4/TT8_fbe6CaU/s320/car_xml.JPG" alt="" id="BLOGGER_PHOTO_ID_5379890721363203970" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-5152419226752943268?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/5152419226752943268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-5-xml-extensible-markup-language.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5152419226752943268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/5152419226752943268'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-5-xml-extensible-markup-language.html' title='Exercise 5: XML – eXtensible Markup Language'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/__ZuX-7uA-0o/Sqk2G3FGF4I/AAAAAAAAAR4/TT8_fbe6CaU/s72-c/car_xml.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-4567907843342308894</id><published>2009-09-08T00:36:00.000-07:00</published><updated>2009-10-31T05:01:47.243-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 4: Web application server</title><content type='html'>Perl script&lt;br /&gt;&lt;br /&gt;Here is the basic perl program that we'll use to get started.&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;use strict;&lt;br /&gt;use LWP::Simple;&lt;br /&gt;print get('http://google.com');&lt;br /&gt;getprint('http://google.com');&lt;br /&gt;&lt;br /&gt;getprint store the document's contents in a file.However, LWP::Simple also provides a function called getstore, which stores the content of a URL in a given file.&lt;br /&gt;&lt;br /&gt;getstore('http://google.com', 'google.html');&lt;br /&gt;&lt;br /&gt;Sometimes, mirror function only makes sense to store a document if it's been updated.&lt;br /&gt;mirror('http://google.com', 'google.html');&lt;br /&gt;&lt;br /&gt;They return the HTTP response code, which in some cases is very useful. These can be checked against constants defined by the library. For example, below we check to see if everything went well:&lt;br /&gt;&lt;br /&gt;my $response_code = getprint('http://google.com');print "nOKn" if ($response_code == RC_OK);&lt;br /&gt;&lt;br /&gt;Python script&lt;br /&gt;&lt;br /&gt;def f(x, y=[]):&lt;br /&gt;y.append(x)&lt;br /&gt;return y&lt;br /&gt;print f(23) # prints: [23]&lt;br /&gt;prinf f(42) # prints: [23, 42]&lt;br /&gt;&lt;br /&gt;The second print statement prints [23, 42] because the first call to f altered the default value of y, originally an empty list [], by appending 23 to it. If you want y to be bound to a new empty list object each time f is called with a single argument, use the following style instead:&lt;br /&gt;&lt;br /&gt;def f(x, y=None):&lt;br /&gt;if y is None:&lt;br /&gt;y = [] y.append(x)&lt;br /&gt;return y&lt;br /&gt;print f(23) # prints: [23]&lt;br /&gt;prinf f(42) # prints: [42]&lt;br /&gt;&lt;br /&gt;Javascript&lt;br /&gt;&lt;br /&gt;SCRIPT language="JavaScript"&lt;br /&gt;&lt;br /&gt;function open1[]&lt;br /&gt;var open1 =window.open&lt;br /&gt;['http://www.domain.com','','scrollbars=yes,height=600,width=800,resizable=yes'];&lt;br /&gt;&lt;br /&gt;function open2&lt;br /&gt;var open2 =window.open['http://www.domain.com','','scrollbars=yes,height=600,width=800,resizable=yes'];&lt;br /&gt;&lt;br /&gt;function open3[]&lt;br /&gt;var open3 =window.open['http://www.domain.com','','scrollbars=yes,height=600,width=800,resizable=yes'];&lt;br /&gt;&lt;br /&gt;/SCRIPT&lt;br /&gt;&lt;br /&gt;(This script has been changed to appear on this blog)&lt;br /&gt;&lt;br /&gt;This script allows user can open multiwindow&lt;br /&gt;&lt;br /&gt;Javascript is the script runs in clients. The first step to check all client forms to correct before send to server.&lt;br /&gt;&lt;br /&gt;Reference:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.devshed.com/"&gt;http://www.devshed.com/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.pcw.co.uk/personal-computer-world/features/2246064/debug-javascript-code-free"&gt;http://www.pcw.co.uk/personal-computer-world/features/2246064/debug-javascript-code-free&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-4567907843342308894?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/4567907843342308894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-4-web-application-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4567907843342308894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/4567907843342308894'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-4-web-application-server.html' title='Exercise 4: Web application server'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-7788139489723620762</id><published>2009-09-07T19:48:00.000-07:00</published><updated>2009-10-31T05:07:55.930-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 3: Database server</title><content type='html'>Case A: Microsoft SQL server&lt;br /&gt;&lt;br /&gt;SQL server integration services&lt;br /&gt;&lt;br /&gt;Microsoft SQL server 2008 inherits from the base of Data Transformation Services of Microsoft SQL server 2000 and improves the performance, usability and manageability aspects of the tool. That contains the Business Intelligence Workbench and SQL server Workbench. Moreover, those services enable to extract data from the data warehourse. Analysis Services to give the better performance.&lt;br /&gt;&lt;br /&gt;Relational and XML data support&lt;br /&gt;&lt;br /&gt;SQL server 2008 supports both relational and XML data. The XML is available through the addition of the XML data types and allows XML fragments and document. It have many new data types such as VARCHAR(MAX), NVARCHAR(MAX), which allows to store up to 2GB of data such as text, ntext, and image data types.&lt;br /&gt;&lt;br /&gt;SQL computer manager&lt;br /&gt;&lt;br /&gt;This utility is accessible from the Programs menu and implemented as the Microsoft Management console snap in.&lt;br /&gt;&lt;br /&gt;SQL profiler&lt;br /&gt;&lt;br /&gt;The SQL profiler is enhanced with a few new features. This includes the MDX Analysis Services statements and monitoring the operation of the Data Transformation services. Grouping and recorded events by views on the basic of selected criteria. Special file types can be used to extract and store events for ease of troubleshooting.&lt;br /&gt;&lt;br /&gt;Database tuning advisor&lt;br /&gt;&lt;br /&gt;It integrated with SQL profiler and reduces the time to tuning. It analyzes workload and physical implementation of one or more databases.&lt;br /&gt;&lt;br /&gt;Command line utilities&lt;br /&gt;&lt;br /&gt;The SQLWB.EXE launches the SQL server Management studio from the command prompt.&lt;br /&gt;&lt;br /&gt;SQLCMD.EXE&lt;br /&gt;&lt;br /&gt;This is a new and improved version of the OSQL and ISQL programs. It helps connect to other SQL server versions and connect to server via Dedicated Administrative connections.&lt;br /&gt;&lt;br /&gt;Features of SQL server 2008&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 237px; height: 155px;" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/Sqkrf95jCvI/AAAAAAAAARw/n8ePJY7puG4/s200/image004.jpg" alt="" id="BLOGGER_PHOTO_ID_5379879058062641906" border="0" /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 248px; height: 256px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqkrZwFGVcI/AAAAAAAAARo/Owgd-9ynqJE/s200/image005.jpg" alt="" id="BLOGGER_PHOTO_ID_5379878951273780674" border="0" /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 268px; height: 190px;" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqkrVbHbleI/AAAAAAAAARg/LF7Ccyo8B1s/s200/image006.jpg" alt="" id="BLOGGER_PHOTO_ID_5379878876926940642" border="0" /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 262px; height: 188px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqkrQWfY1WI/AAAAAAAAARY/AV5kB1kHCbo/s200/image007.jpg" alt="" id="BLOGGER_PHOTO_ID_5379878789785900386" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032368942&amp;amp;EventCategory=5&amp;amp;culture=en-US&amp;amp;CountryCode=US&lt;br /&gt;&lt;br /&gt;http://www.sqlsoft.com/coursedescriptions/SQL-243.html?c=1662&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-7788139489723620762?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/7788139489723620762/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-3-database-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7788139489723620762'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7788139489723620762'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-3-database-server.html' title='Exercise 3: Database server'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/__ZuX-7uA-0o/Sqkrf95jCvI/AAAAAAAAARw/n8ePJY7puG4/s72-c/image004.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-190286003013384876</id><published>2009-09-07T09:19:00.000-07:00</published><updated>2009-10-31T05:00:46.792-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 2: Clients, Servers, and distributed paradigms</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Peer-to-Peer properties&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Peer-to-Peer (P2P) system is as a significant social and technical network, that shares CPU cycles and storage space. Two advantages make this system growth in the world: firstly, this is very cheap to use and the huge storage space in the large number of computing, and the second thing is the increase network connectivity .&lt;br /&gt;&lt;br /&gt;The first thing is difference between P2P and Client/Server architecture is the P2P network does not have Server, each entity in the P2P network is the client and server that can send and receive all requests. In the other hand, client/server architecture is difference, that is any works do at server. Server receives all requests of clients and sends results to client. Moreover, the biggest difference between P2P and client/server architecture that is the safe of data or information in the network. It is significantly to see the equal permission in the P2P architecture, while server does almost jobs and each client has a different permission to accept server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Java Versus .NET&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqiCq7n65KI/AAAAAAAAARI/PTL-0_9muuo/s1600-h/javacodecycle.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 168px; height: 285px;" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqiCq7n65KI/AAAAAAAAARI/PTL-0_9muuo/s200/javacodecycle.gif" alt="" id="BLOGGER_PHOTO_ID_5379693428965303458" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqiC5DtZtAI/AAAAAAAAARQ/T5DDUtc93Hw/s1600-h/netcodecycle.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 167px; height: 290px;" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqiC5DtZtAI/AAAAAAAAARQ/T5DDUtc93Hw/s200/netcodecycle.gif" alt="" id="BLOGGER_PHOTO_ID_5379693671653946370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Both Java and .NET is the new technology which is developed by Sun and Microsoft, and they are used by almost programming developers on the world. They have some positive and negative impacts.&lt;br /&gt;&lt;br /&gt;The first similar is the both of them are the development framework, which the Java is the JDK (Java Development Kit) framework and .NET framework. Like C++, they have supported the OOP (Object Oriented Programming). The secondly, both of them already use the Virtual Machine to compile and run the application.&lt;br /&gt;&lt;br /&gt;However, the most different is the cost, which the Java has more development tools to support such as eclipse and Netbean. Additionally, the .NET support more other languages, while java just support on java language. Java is 'write once run anywhere', while .net support many languages so they need to debug it all platforms.&lt;br /&gt;&lt;br /&gt;Java has support to open source platform, whereas .net is not.&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;strong&gt;David Dagon, &lt;/strong&gt;&lt;strong&gt;Julian B. Grizzard, and others,&lt;/strong&gt;&lt;span style="font-size:100%;"&gt; Peer-to-Peer Botnets: Overview and Case Study&lt;/span&gt;, http://www.usenix.org/event/hotbots07/tech/full_papers/grizzard/grizzard_html/#tbl:hist&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-190286003013384876?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/190286003013384876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-2-compare-and-contrast-java-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/190286003013384876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/190286003013384876'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-2-compare-and-contrast-java-and.html' title='Exercise 2: Clients, Servers, and distributed paradigms'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/__ZuX-7uA-0o/SqiCq7n65KI/AAAAAAAAARI/PTL-0_9muuo/s72-c/javacodecycle.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-7665612471602039753</id><published>2009-09-07T08:16:00.000-07:00</published><updated>2009-11-01T03:48:29.290-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 2: Google Apps, Cloud Computing</title><content type='html'>&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/T3hmVHpToYc&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/T3hmVHpToYc&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-7665612471602039753?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/7665612471602039753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-2-google-apps-cloud-computing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7665612471602039753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/7665612471602039753'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-2-google-apps-cloud-computing.html' title='Exercise 2: Google Apps, Cloud Computing'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-2879229493210110815</id><published>2009-09-07T02:54:00.000-07:00</published><updated>2009-10-31T05:07:12.467-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Exercise 1: E-commerce, distributed application and the Internet</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqUvmSLEhHI/AAAAAAAAAQ4/vyiduaxC5ZI/s1600-h/untitled.bmp"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 255px; height: 183px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqUvmSLEhHI/AAAAAAAAAQ4/vyiduaxC5ZI/s320/untitled.bmp" alt="" id="BLOGGER_PHOTO_ID_5378757664723731570" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Online communication is the web tool, that allows people can share their interests and discussion in the group or individuals. Online communication sites allow their members or visitors to communicate directly, easily, and conveniently. That is very important to e-commerce, which helps providers connection with their customers or discuss the other problem immediately and easier. Today, with many high technology to provide people connect together easily and be narrow the distance such as voice IP instead of phone and webcam allow people to communicate over internet faster with the good quality.&lt;br /&gt;&lt;br /&gt;Amazon is blazing a trail in the world of commerce where no merchant has gone before. it allows customers can sit at home or their office make the shopping without physical leaving out to the store. On the Amazon website, customers can choose items that they want to purchase and make the payment by credit card, and then those items will be post to customer's address that they want to receive. Amazon is the Business to Customers (B2C) standard of web and it is established on the website 2.0 foundation. Moreover, this is easy to use that makes user conveniently to shopping. The website is more intelligent that know the customer's want.&lt;br /&gt;&lt;br /&gt;Amazon.com used the high technology and technique to business, and support absolutely customer's need. there opens the new business function over internet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-2879229493210110815?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/2879229493210110815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-1-e-commerce-distributed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2879229493210110815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2879229493210110815'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/topic-1-e-commerce-distributed.html' title='Exercise 1: E-commerce, distributed application and the Internet'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/__ZuX-7uA-0o/SqUvmSLEhHI/AAAAAAAAAQ4/vyiduaxC5ZI/s72-c/untitled.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-3524101451679064614</id><published>2009-09-06T04:48:00.000-07:00</published><updated>2009-10-26T21:26:29.265-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 4:</title><content type='html'>In the JavaScript, almost syntaxes are like the syntax of Java, C# and are nearly like the C syntax. In some cases, this is very easy to use and many developers have used it. On the other hand, Ruby syntaxes are nearly like real language and likely Visual Basic of Microsoft. Moreover, in the ‘if’ statement of Ruby provides two ways to use, which one is like C syntax and another one is like the normal language. Sometime this makes developers confuse to use. For example,&lt;br /&gt;           if(x&gt;7&amp;amp;&amp;amp;x&lt;12) {...}&lt;br /&gt;and     if x.between(7,12) do ...&lt;br /&gt;&lt;br /&gt;both two syntax are correct in Ruby. Especially, JavaScript just runs at client and Ruby runs on server, the Ruby is the application server.&lt;br /&gt;&lt;br /&gt;The first similar between JavaScript and Ruby is the variable, there is no difference between variable types such as decimal, string or datetime. Secondly, they are Object Oriented Programming.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-3524101451679064614?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/3524101451679064614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-4.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/3524101451679064614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/3524101451679064614'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-4.html' title='Workshop 4:'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-6991763526494214618</id><published>2009-09-06T03:10:00.001-07:00</published><updated>2009-11-01T03:49:08.242-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><category scheme='http://www.blogger.com/atom/ns#' term='Exercises'/><title type='text'>Workshop 3</title><content type='html'>Create MySQL database with passenger's information of taxi driver. passenger_controller and the model to provide function to insert, edit, and delete data.&lt;br /&gt;&lt;br /&gt;rails -u mysql taxi : to create the mysql project, which the project's name is taxi&lt;br /&gt;Create controller, model, and run server.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/__ZuX-7uA-0o/SqsJcD6ge_I/AAAAAAAAASo/0LffhS1f0eA/s1600-h/star+server+ruby.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/__ZuX-7uA-0o/SqsJcD6ge_I/AAAAAAAAASo/0LffhS1f0eA/s320/star+server+ruby.PNG" alt="" id="BLOGGER_PHOTO_ID_5380404557515881458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqsI7uJYZjI/AAAAAAAAASg/Sa3WZG1XVak/s1600-h/create+model+ruby.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 162px;" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqsI7uJYZjI/AAAAAAAAASg/Sa3WZG1XVak/s320/create+model+ruby.PNG" alt="" id="BLOGGER_PHOTO_ID_5380404001916872242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqsIqAQXjCI/AAAAAAAAASY/TZTUL6irpgg/s1600-h/create+model_controller+ruby.PNG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/SqsIqAQXjCI/AAAAAAAAASY/TZTUL6irpgg/s320/create+model_controller+ruby.PNG" alt="" id="BLOGGER_PHOTO_ID_5380403697540369442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;List of passengers and their information.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqsIVjD4Q3I/AAAAAAAAASQ/64gBtnPljGc/s1600-h/listing.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 102px;" src="http://4.bp.blogspot.com/__ZuX-7uA-0o/SqsIVjD4Q3I/AAAAAAAAASQ/64gBtnPljGc/s320/listing.JPG" alt="" id="BLOGGER_PHOTO_ID_5380403346105975666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Edit the information of passenger.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/__ZuX-7uA-0o/SqsIKEzVNQI/AAAAAAAAASI/lYmjokYGHHY/s1600-h/editing.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 210px; height: 320px;" src="http://3.bp.blogspot.com/__ZuX-7uA-0o/SqsIKEzVNQI/AAAAAAAAASI/lYmjokYGHHY/s320/editing.JPG" alt="" id="BLOGGER_PHOTO_ID_5380403149004944642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;control the value of field.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/__ZuX-7uA-0o/Sqprl9mJnrI/AAAAAAAAASA/o58_LVzYnAM/s1600-h/edit_validate.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 220px; height: 320px;" src="http://1.bp.blogspot.com/__ZuX-7uA-0o/Sqprl9mJnrI/AAAAAAAAASA/o58_LVzYnAM/s320/edit_validate.JPG" alt="" id="BLOGGER_PHOTO_ID_5380231004781387442" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-6991763526494214618?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/6991763526494214618/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-3.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6991763526494214618'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/6991763526494214618'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-3.html' title='Workshop 3'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/__ZuX-7uA-0o/SqsJcD6ge_I/AAAAAAAAASo/0LffhS1f0eA/s72-c/star+server+ruby.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-474298025579517433</id><published>2009-09-06T03:10:00.000-07:00</published><updated>2009-09-20T23:32:57.140-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><title type='text'>Workshop 2</title><content type='html'>Model View Controller&lt;br /&gt;The Model View Controller(MVC) design pattern was first described in 1979 by &lt;a href="http://en.wikipedia.org/wiki/Trygve_Reenskaug"&gt;Trygve Reenskaug &lt;/a&gt;while working at Xerox on Smalltalk. MVC is not a new syntax construct like an if statement or a data type like an array or int but more a way of looking at how to structure programs and divide the parts up in a logical and useful way.&lt;br /&gt;&lt;br /&gt;Following MVC guidelines has been shown to organize applications in a way that makes them easy to manage and maintain. After working with the MVC pattern for a while you will grow to see the benefits that the division of labor produce. Rails is a strict MVC frame work.&lt;br /&gt;&lt;br /&gt;Model&lt;br /&gt;&lt;br /&gt;The Model is all about the data. This includes getting the data in and out of the data store. The scaffolding we set up in part one gives us the four basic operation of using a data store Create, Read, Update and Destroy.&lt;br /&gt;&lt;br /&gt;View&lt;br /&gt;&lt;br /&gt;The View renders the Model in an interactive displayable format that  takes the data in the Model and paints it up on the screen for you to see and interact with.&lt;br /&gt;&lt;br /&gt;Controller&lt;br /&gt;&lt;br /&gt;The Controller responds to events communicating with the Model and the View. This is like the Main loop in a state machine waiting for events like user actions or Model data to show up and reacting as the program dictates to those events.&lt;br /&gt;&lt;br /&gt;References:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.adobe.com/devnet/flash/articles/mv_controller.html"&gt;The Model-View-Controller (MVC)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://wiki.squeak.org/squeak/1767"&gt;MVC stands for Model-View-Controller&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-474298025579517433?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/474298025579517433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-2.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/474298025579517433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/474298025579517433'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/09/workshop-2.html' title='Workshop 2'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5642561549780361543.post-2697104833413708131</id><published>2009-08-16T04:46:00.000-07:00</published><updated>2009-11-01T03:50:41.749-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Workshop'/><category scheme='http://www.blogger.com/atom/ns#' term='Introduction'/><title type='text'>Workshop 1</title><content type='html'>&lt;p style="text-align: justify;"&gt;Rails is the web-application framework, which includes everything needed to create database web-application according to the Model-View-Control. Moreover, Rails uses the Ruby programming language. Ruby is the dynamic language that was created in Japan by Yukihiro Matsumoto.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Dynamic or static typing&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;(Tymothy Fisher, 2008, p.16)Programming languages can be classified by the type system they use. A type system defines how a programming language classifies its data and methods into types. For example, the type of various language include of int, float, string, and Object. Some programming languages use statically typed such as Java, C, C++, and C#. Otherwise, Python, JavaScript, Perl, Lisp, and Ruby include the dynamically typed. This means the data types are not known until run-time. I think this is weak effect of Ruby, because web programming developers will be confuse when using it.&lt;br /&gt;&lt;br /&gt;On the other hand, this language do not require to compile source codes into another form. The source code is also the code that the language's run-time executable use to execute the application&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Object Oriented Programming&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Object oriented programming (OOP) is a style of programming that uses objects to represent data, and actions that you can perform on that data. In addition, Ruby is a pure object oriented programming language. In Ruby, everything is an object, Include literal string and numeric types. Ruby does not have any native types that are not objects. Even numeric types such as integers and floats are represented as Object in Ruby.&lt;br /&gt;&lt;br /&gt;Reference:&lt;br /&gt;Timothy Fisher (2008), Ruby on Rails Bible, Wiley Publisher .Inc&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5642561549780361543-2697104833413708131?l=itc382-chuongvo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://itc382-chuongvo.blogspot.com/feeds/2697104833413708131/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/08/welcome-to-rails.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2697104833413708131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5642561549780361543/posts/default/2697104833413708131'/><link rel='alternate' type='text/html' href='http://itc382-chuongvo.blogspot.com/2009/08/welcome-to-rails.html' title='Workshop 1'/><author><name>Chuong Vo</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/__ZuX-7uA-0o/SNaepkinOzI/AAAAAAAAADc/9ft2tGCFvA0/S220/heart+bear.jpg'/></author><thr:total>0</thr:total></entry></feed>
