Web applications use web documents written in a standard format such as HTML and JavaScript, which are supported by a variety of web browsers.
In 1995 Netscape introduced a client-side scripting language called JavaScript allowing programmers to add some dynamic elements to the user interface that ran on the client side.
In 1996, Macromedia introduced Flash, a vector animation player that could be added to browsers as a plug-in to embed animations on the web pages.
In 1999, the "web application" concept was introduced in the Java language.
In 2005, the term Ajax was coined, and applications like Gmail started to make their client sides more and more interactive. A web page script is able to contact the server for storing/retrieving data without downloading an entire web page.
In 2011 HTML 5 was created, which provides graphic and multimedia capabilities without the need of client side plugins.
Through Java, JavaScript, DHTML, Flash, Silverlight and other technologies, application-specific methods such as drawing on the screen, playing audio, and access to the keyboard and mouse are all possible.
As you can see, web applications have moved from a static screen to animation and movement to audio, video and the ability for the user to interact.
The future of web applications is explemfied by online word processing, and "office suites", essentially, "cloud computing". Google Apps, Microsoft Office Live, and WebEx WebOffice are examples of the newest generation of web applications.
http://webtrends.about.com/od/webapplications/a/web_application.htm
http://www.acunetix.com/websitesecurity/web-applications.htm
Sunday, December 11, 2011
Web Servers
A web server is a computer that has been set up but a hosting company usually housed in data center. The purpose of a webserver is to store websites until someone wants to visit them and then to quickly respond to the visitors browser with the sites content.
A server must be able to respond to multiple (sometime hundreds, thousands and even millions of requests).
Most servers use http (to handle websites), FTP (to handle file transfers), and email server and a database server to handle data storage and transfer.
This is also a great resource in understanding how web servers work: http://www.howstuffworks.com/web-server.htm
Internet Infrastructure
This video is a good illustration of how the Internet works and how information is transferred from one computer to another.
Basically the path of pulling up a webpage is: Your computer > router > ISP > router > Internet > router > website > router > ISP > router > your computer
A router exists along every intersection and every packet of information is moved via an IP address. An IP address is how the Internet gives locations of computers and routers. IP addresses are 4 sets of numbers in a combination between 0.0.0.0 and 255.255.255.255.
The internet is a global system of interconnected computer networks. All the computers connected to the internet are actually connected to each other through the Internet Service Providers (ISPs) which in turn are connected to the bigger routers or the backbone of the internet. The backbone is a large server where the data is exchanged. These backbones are connected to each other through fiber optical cables. The ISPs are connected to these backbones through fiber optic cables in order to minimize the transmission loss. Then the users are connected to ISPs through cables or wireless routers.
A router exists along every intersection and every packet of information is moved via an IP address. An IP address is how the Internet gives locations of computers and routers. IP addresses are 4 sets of numbers in a combination between 0.0.0.0 and 255.255.255.255.
The internet is a global system of interconnected computer networks. All the computers connected to the internet are actually connected to each other through the Internet Service Providers (ISPs) which in turn are connected to the bigger routers or the backbone of the internet. The backbone is a large server where the data is exchanged. These backbones are connected to each other through fiber optical cables. The ISPs are connected to these backbones through fiber optic cables in order to minimize the transmission loss. Then the users are connected to ISPs through cables or wireless routers.
Client Applications
Examples of Client Applications:
Web browers - clients that allow us to view the internet
MS outlook - mail client that allows you to get your email from an email server
MS messenger, Google talk, Yahoo Chat - online chat clients
Game clients - allow multiplayer games
Web browers are probably the most widely used client applications. A web brower requests services from a web servers and display those web pages for the viewer. There are currently a variety of browsers being used.
Web browers - clients that allow us to view the internet
MS outlook - mail client that allows you to get your email from an email server
MS messenger, Google talk, Yahoo Chat - online chat clients
Game clients - allow multiplayer games
Web browers are probably the most widely used client applications. A web brower requests services from a web servers and display those web pages for the viewer. There are currently a variety of browsers being used.
The following video is a very simplistic but great explaination of how the internet works: http://www.commoncraft.com/video/world-wide-web.
Friday, December 9, 2011
Future of the Internet
The Future Internet:
An evolving convergent Internet of things and services that is available anywhere, anytime as part
of an all-pervasive omnipresent socio–economic fabric, made up of
data
advanced services to business and citizens.This definition comes from "The Future Internet" Report from May 2011 complied by UK, Future of Internet Group.
This article outlines how the Internet is constantly evolving and most issues and concerns related to the Internet fall under 3 main categories: converged services, shared data and infrastructure.
Converged Services
Companies will want the ability to not only have a web page but for people to directly interact with it. This is already happening but trends are moving all websites to this direction. First we had webpages that showed what a store had, then you had the ability to purchase and find store locations. Going further, stores do and will have blogs for customers to share, places for customers to interact with customer service representatives and move to other websites that offers complimentary goods or services.
Shared Data
Customer data, patient data, shopping data, school related data - all online, all potentially available for customization, ease of data retrieval and ease of personalization. Technology companies are now moving toward offering cloud computing solutions to help move along all of this data, easier, faster and more efficiently.
These statistics are quite amazing to think about:
In 2006, the amount of digital information created, captured and
replicated was 1,288 × 1018 bits (161 exabytes or 161 billion
gigabytes). This is equivalent to about 3 million times the information in
all the books ever written.
• Between 2006 and 2010, the information added annually to the digital
universe was estimated to increase more than six-fold, from
161 exabytes to 988 exabytes (see Figure 8).
Images and video are
fuelling this growth
• Three major analogue-to-digital conversions are powering this growth:
film-to-digital image capture, analogue-to-digital voice, and analogueto-
digital TV.
• Images, captured by more than 1 billion devices in the world, from
digital cameras and camera phones to medical scanners and security
cameras, comprise the largest component of the digital universe. They
are replicated over the Internet, on private organisational networks, by
PCs and servers, in data centres, in digital TV broadcasts and on
digital projection screens.
Solutions to moving this amount of data has to be ever evolving.
Infrastructure
Connectivity, connectivity, connectivity! Everyone wants to be connected 24/7 from multiple devices. But how can a network handle this? At one time, no one thought we could ever run out of IP addresses with IP4 and sure enough we have. Implementing IPv6 and increasing access to wireless are going to be key. The number of handhelds has increased by 6 fold over the past 10 years. That number is believed to increase to 50 million connected devices by 2020. Will be have the capacity or will it all shut down?
The future....The important concept in this article I think is that of evolution. The Internet is constantly evolving. Companies, governments and people are going to have to learn new ways to use the Internet, support the Internet and make it work for the benefit of all.
Friday, November 11, 2011
Web Services
According to the Web Services Architecture Working Group, the phrase "Web Services" is defined as,
"a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards." What??? First lets, define some of the acronyms. WSDL is Web Service Definition Language, SOAP is Simple Object Access Protocol, HTTP is Hypertext Transfer Protocol and XML is EXtensible Markup Language. To me this means that a Web Service is any program where machines talk to each other through appropriate languages and protocols.

SAP uses the above diagram to describe a web service.
What is a "Big Web" service and 'RESTful Web Service'?
The Diagrams below illustrate similarities and differences in "Big" vs "REST" Web Services.

http://www.crummy.com/writing/RESTful-Web-Services/

There appears to be a need for both types of Web Services depending on the needs of the company (open vs closed environments, mobile devices vs corporate desktops, ease of development vs the need for resources)
"a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP-messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards." What??? First lets, define some of the acronyms. WSDL is Web Service Definition Language, SOAP is Simple Object Access Protocol, HTTP is Hypertext Transfer Protocol and XML is EXtensible Markup Language. To me this means that a Web Service is any program where machines talk to each other through appropriate languages and protocols.
SAP uses the above diagram to describe a web service.
What is a "Big Web" service and 'RESTful Web Service'?
Big Web Services | -follow SOAP standard -XML language for defining interface | -mostly used in Enterprise and closed environments -more complex to develop and implement | -used by Google |
RESTful Web Services | -HTTP -number of languages -open source | -simple -recently the more predominant web service -easier to build | -Amazon Web Services -Good choice for Mobile devices |
The Diagrams below illustrate similarities and differences in "Big" vs "REST" Web Services.
http://www.crummy.com/writing/RESTful-Web-Services/
There appears to be a need for both types of Web Services depending on the needs of the company (open vs closed environments, mobile devices vs corporate desktops, ease of development vs the need for resources)
Thursday, November 10, 2011
Mobile App Development
This week in class we had a guest speaker, Chuck Hudson from Control4 speak about mobile application design. He was very interesting and gave a great presentation.
He started his talk by telling us that the term 'mobile device' doesn't just mean smart phone anymore. The mobile device market includes phones, ipads, tablet, car displays, integrated pandora in cars, etc.
Key points from his talk:
- Android is growing much faster over the past 3 mo. According to nielsen
- Android has taken over smart market in the UK according to guardian
- Ads are mostly for iphones or android
- Apps - some make money purely from people purchasing the app - angry birds
- Some free apps - make money from ads - ie. you have to watch ad in order to get to the next level, etc.
- Companies are keeping track of what they sell through their apps (opposed to their websites)
- Mobile apps - about 1/3 of all apps never get launched more than once so companies and developers have to figure out how to make them so people will continue to come back to them.
Looks , orientation, larger realestate with tablets than on a phone
1 screen on a tablet - 2-3 screens on a phone - so do you make 1 app or 2?
Envision how customer will use - 1 handed or 2 handed, with thumb - thumb dynamics - where do you position the buttons, etc.
- As a developer, it is very import to do some storyboarding - gives you an idea of the live of the app from beginning to end
- An app should do one thing really really well rather than do many thing kind of well
Balsamiq - use for app development - quicker than omnigraffle - but omnigraffle good for storyboarding
Apple hig - for ios app development
Challenges - mobile - size constraints, etc
- Device can always over ride the app
- Support for multiple devices
- Great place to learn and gather resources:
Apple conference
Most info is online if you can't attend
Android challenges - relatively young
- Because it is so open, you don't always know what you will get - support for different resolutions and sizes - 4 general sizes - 4 dpi of interface - combination of these 2 allows you to create a layout on different devices (scaling, button placement)
- Detailed instructions on android developers site
- In the early days if android, there was no graphical layout, but now there is.
ios - older, more mature - use xcode and instruments - for building an app
How will you measure success? How many installs, how many upgrades, etc.
The future of Mobile Development is webbased mobile apps - could be the next big thing - html 5 is changing this area.
I loved hearing Chuck, it sounds like a very exciting field. These days, almost everyday, you hear the phrase, "and there's and app for that". It looks like the possibilities are endless.
Subscribe to:
Posts (Atom)



