When are projects due? #infomgmtFAIL – This is why you never duplicate data. – Project 4 is Due To get it done in time you will need to work smart, cut.

Slides:



Advertisements
Similar presentations
Getting Your Web Site Found. Meta Tags Description Tag This allows you to influence the description of your page with the web crawlers.
Advertisements

The Librarian Web Page Carol Wolf CS396X. Create new controller  To create a new controller that can manage more than just books, type ruby script/generate.
Ruby on Rails Model of MVC. Model-View-Controller Paradigm A way of organizing a software system Benefits: Isolation of business logic from the user interface.
Web Time Entry for Student Employees (Student version) Students enter and submit their hours worked on Web4 Supervisors verify and approve student’s hours.
1 Project 2: Web App Security Collin Jackson CS 155 Spring 2007.
Tips: * Just delete the page you don’t like. * Save the page you want only before submit to us.
Web Basics Willem Visser RW334. Overview Basic Browser and Server Interaction – Forms with actions, url encoding and handlers – Parameters – Having more.
Servlets and a little bit of Web Services Russell Beale.
HTTP Hypertext Transfer Protocol. HTTP messages HTTP is the language that web clients and web servers use to talk to each other –HTTP is largely “under.
This Time One more presentation Assignment 3 – questions? No, seriously, ask questions. I like mobile. Recap based on dot-voting – JSON-P and Proxies –
Career Portfolio Step 1: Obtain a Website Recommended: GeoCities.
Figure 1. Hit analysis in 2002 of database-driven web applications Hits by Category in 2002 N = 73,873 Results Reporting 27% GME 26% Research 20% Bed Availability.
CGI Programming: Part 1. What is CGI? CGI = Common Gateway Interface Provides a standardized way for web browsers to: –Call programs on a server. –Pass.
Database Updates Made Easy In WebFocus Using SQL And HTML Painter Sept 2011 Lender Processing Services 1.
Web server and web browser It’s a take and give policy in between client and server through HTTP(Hyper Text Transport Protocol) Server takes a request.
Google Chrome Your Customized Google Buddy April 2012 John Riley and Denise Tate-Kuhler.
Databases with PHP A quick introduction. Y’all know SQL and Databases  You put data in  You get data out  You can do processing on it very easily 
Googe App Engine Codelab Marzia Niccolai May 28-29, 2008.
Cloud computing lectures: Programming with Google App Engine Keke Chen.
Mr. Justin “JET” Turner CSCI 3000 – Fall 2015 CRN Section A – TR 9:30-10:45 CRN – Section B – TR 5:30-6:45.
Introduction to HTML. What is a HTML File?  HTML stands for Hyper Text Markup Language  An HTML file is a text file containing small markup tags  The.
© 2005 Avaya Inc. All rights reserved. Avaya ATAC ExchangePlace
SQL Queries Relational database and SQL MySQL LAMP SQL queries A MySQL Tutorial and applications Database Building Assignment.
_______________________________________________________________________________________________________________ PHP Bible, 2 nd Edition1  Wiley and the.
INTRODUCTION TO JAVASCRIPT AND DOM Internet Engineering Spring 2012.
Creating Dynamic Web Pages Using PHP and MySQL CS 320.
Web Scripting [PHP] CIS166AE Wednesdays 6:00pm – 9:50pm Rob Loy.
Prepared for Search Engine Strategies - Chicago Copyright 2006 Critical Mass, Inc. All Rights Reserved Page 1 Search Engine Strategies Chicago ‘06 AJAX.
Development and Customization of OpenACS. OpenACS Package Architecture Functionality is divided into packages One package contains Data Model Tcl Libraries.
Website Development with PHP and MySQL Saving Data.
Web Searching. How does a search engine work? It does NOT search the Web (when you make a query) It contains a database with info on numerous Web sites.
Chapter 6 Server-side Programming: Java Servlets
Creating PHPs to Insert, Update, and Delete Data CS 320.
BIT 286: Web Applications Lecture 10 : Thursday, February 5, 2015 ASP.Net Form Submission.
Google App Engine Data Store ae-10-datastore
1 HTML Forms
Google App Engine MemCache ae-09-session
App Engine Web App Framework Jim Eng
Caching Willem Visser RW334. Overview AppEngine Datastore No Caching Naïve Caching Caching invalidation Cache updating Memcached Beyond your code.
Digital Literacy Concepts and basic vocabulary. Digital Literacy Knowledge, skills, and behaviors used in digital devices (computers, tablets, smartphones)
Lawrence Snyder University of Washington, Seattle © Lawrence Snyder 2004.
1 HTML forms (cont.)
Headings are defined with the to tags. defines the largest heading. defines the smallest heading. Note: Browsers automatically add an empty line before.
#MozCon Richard Baxter REALLY TARGETED OUTREACH. "Hey, we need to get some links!"
By Pamela Drake SEARCH ENGINE OPTIMIZATION. WHAT IS SEO? Search engine optimization (SEO) is the process of affecting the visibility of a website or a.
ASSIGNMENT 2 Salim Malakouti. Ticketing Website  User submits tickets  Admins answer tickets or take appropriate actions.
CS2021- Week 10 – Models and Views Web Development Model, Views, Controller Templates Databases.
1 HTML forms (cont.)
CSU Extension Webpage Template Session 4 February 2010.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
INTERNET APPLICATIONS CPIT405 Forms, Internal links, meta tags, search engine friendly websites.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Google App Engine Mano Marks Developer Advocate. Problems building web applications Why Google App Engine? The App Engine Components What’s Next Questions?
Google App Engine An Example!. Schedule Today: AppEngine and Python Wednesday: Review and CES! Friday Quiz!!! Next week: – DEMO MADNESS!!! – Approx 20.
Introduction to HTML.
How do Web Applications Work?
Social Media from our point of view!
Uppingham Community College
Database application MySQL Database and PhpMyAdmin
Python Web Development
Prepared by Rao Umar Anwar For Detail information Visit my blog:
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
A guide to HTML.
Tribal Knowledge Team Undefined Reference to teamName
MIT GSL 2018 week 3 | thursday Meteor and App Ideation.
What is a Search Engine EIT, Author Gay Robertson, 2017.
How to Create a you tube Channel Using your Gmail Account
CS3220 Web and Internet Programming Handling HTTP Requests
CloudAnt: Database as a Service (DBaaS)
CS7026: Authoring for Digital Media
Presentation transcript:

When are projects due? #infomgmtFAIL – This is why you never duplicate data. – Project 4 is Due To get it done in time you will need to work smart, cut corners, and adjust rapidly. – Use Rally's Burn-down charts to help you calibrate – Ask when >30mins of head-wall contact Asking is nice even if you figure it out yourself – It does NOT need to be a website/phone app/etc. Results > UX for project 4.

Prototype with Google App Engine Goal: Everyone gets to share one comment that is geotagged. Twitter-lite. Get set up: – – Everyone in your group!

Web services 101 Little "s" - bob Everything is an ACTION to a URL with some PARAMETERS – A "GET" to "/" with NO PARAMS – A "GET" to "/search" with ONE param (URL encoded) of q="Hello World" … – POSTS you can't just type in the browser bar, but are normally form submits. Nice way to divide action from browsing. – Have a URL + a payload of name/value pairs (mostly) Also PUT, DELETE and HEAD, but who cares…

Google Datastore Stuff you don't need to know – "Paxos algorithm" – "ancestor queries" – High availability, entity groups, bla bla bla Stuff you do need to know – A little SQL – Basic idea of data types

Build application = webapp.WSGIApplication([ ('/', MainPage) #,('/sign', Guestbook) ], debug=True) def main(): run_wsgi_app(application) # if __name__ == '__main__': main()

User Management class MainPage(webapp.RequestHandler): def get(self): user = users.get_current_user() if user: self.response.headers['Content-Type'] = 'text/plain' self.response.out.write('Hello, ' + user.nickname()) else: self.redirect(users.create_login_url(self.request.uri)) This is so much nicer than debating with the architect if your users should be indexed by address, or their user ID, or a unique 11 digit integer, or off their DB AUTO_INCREMENT ID, or… bla.

Knowing what was Posted def post(self): self.response.out.write(' You wrote: ') self.response.out.write( cgi.escape(self.request.get('content')) ) self.response.out.write(' ')

So what? Need to save it! class Tweet(db.Model): """Models an individual entry with an author, content, and date.""" author = db.UserProperty() content = db.StringProperty(multiline=True) date = db.DateTimeProperty(auto_now_add=True) …so nice not to be writing SQL create statements. And DB modeling. And all the other overhead. A prototyper could get spoiled with this…

How to show a page of HTML? Annoying way – self.response.out.write(""" … Better way: path = os.path.join(os.path.dirname(__file__), 'index.html') self.response.out.write(template.render(path, template_values)) And every key in template_values maps to {{ key }}

Actually Saving It # Still figuring this "parent" thing out. bhill def tweetbucket_key(): """Constructs a datastore key for tweet entities""" return db.Key.from_path('Tweets', 'default_tweetbucket') def post(self): new_tweet = Tweet(parent=tweetbucket_key()) if users.get_current_user(): new_tweet.author = users.get_current_user() new_tweet.content = self.request.get('content') new_tweet.put()

Get back what you put in class AllPosts(webapp.RequestHandler): def get(self): tweets = db.GqlQuery("SELECT * " "FROM Tweet " "WHERE ANCESTOR IS :1 " "ORDER BY date DESC LIMIT 100", tweetbucket_key()) result = [] # simple array for tweet in tweets: result.append({ 'author':tweet.author.nickname(), 'content':tweet.content, 'date':tweet.date.isoformat() }) # simple object appended to array content = simplejson.dumps(result) if callback: # JSON-P in 2 lines. content = cgi.escape(callback) +"(" + content + ")" self.response.headers.add_header('content-type', 'application/json', charset='utf-8') self.response.out.write(content)