2 december 2013. deliverables check list documentation: updated functional spec design doc user...
TRANSCRIPT
IPWRAP UP
2 December 2013
Deliverables check list Documentation: updated
Functional specDesign docUser manualsTest plan
CodeCommented source and how I get to itRunning code and instructions (where, what I
need installed, any ids needed) Evaluations
Team – You have an INC without this!
Presentations
Logistics
SN011 at 12 pm Monday, Dec 9 Will invite all clients. Schedule will be
posted and emailed to clients and you. 15 minute presentations Lunch (pizza) will be served Attendance is mandatory
What is Expected
Overview of your projectReview what you did and whyBriefly explain how you did it
○ Architecture○ Technologies
Lessons learnedDevelopmentProcessTechnologies
Demo
The Basics
Speak loudly and clearly Speak, don’t read: you ARE the experts Set up and test demos on Sunday
Last minute “fixes” are often disasters Script your demos Send me an email if you need adapters
or other equipment. Do NOT assume that I will remember.
Presentations Hints
Cover all topics, but they don’t need equal time!
Focus on what’s special and interesting about your project
Don’t try to cover too much Keep it light Give the audience something to look at
Remember
You’re speaking for 15 minutes
Everyone is listening for 180 minutes
Death by PowerPoint
Google it and you can waste many hours
One that I like… http://www.slideshare.net/thecroaker/death-by-powerpoint
PowerPoint is Evil (Edward Tufte)
Do not let the media
become the message
Intellectual Property
Ownership and property Rights of ownership: Blackstonian
BundleExclude anyone from the propertyUse it as sees fitReceive income fromTransfer property to someone else
Intellectual property: intellectual objects
What is Intellectual Property?
Physical objects Zero-sum gain: one user at a timeSignificant cost in both development and
replication Intellectual objects
Used by many at onceSignificant cost in development, marginal
cost in replication
Intellectual Property v. Real Property
Need for Protection
need to recover the development costs knowledge of future ownership is
incentive to increase value
Free flow of ideas First amendment freedom of speech Creative ideas build on society and culture Pay what you want
MusicTextbooksGamesBooksSoftware
Arguments against IP
Copyright Patent Trademark
Legal Protection
Copyright: giving the creator of an original work exclusive rights to it, usually for a limited time
1790: 14 + renew 1909: 28 + renew 1976 : author + 50, corporate 75 1998: author + 70, corporate 95
Copyright: How Long?
Enabling copying is criminalPreclude through architecture
ProblemsConstrains who can use
○ Exceptions will be too constrained for someone
Tracks who is viewing
Digital Rights Management
Digital Millenium Copyright Act (‘66)
Illegal to …bypass technical measures used to protect accessmanufacture or distribute technologies primarily designed or
produced to circumvent technical measuresremove or alter copyright management information
Universal City Studios, Inc. v. Reimerdes (Aug ‘00)8 studios sued 2600 Magazine
○ posting DeCSSbypasses Content Scrambling System (CSS)
- commercially distributed DVD
Responsibility of those enabling itSoftwareNetwork providers
Cases: softwareNapsterGrocksterBit Torrent
Cases: network providersVerizonSix Strikes
Copying copyrighted materials
APIs: Oracle v Google
Issue: Android APIs are very Java-like Android VM was built in a “cleanroom
environment” Oracle sued over the APIs Ruling: not copyrightable
Patents
Physical objectsProcess, machine or composition of matterNOT laws of nature, scientific principles,
algorithms Criteria
NovelNot previously describedNon-obviousUseful
Patents
Hardware, software, processesNOT laws of nature, scientific principles, algorithms
Can patent new applications or combinations Criteria
NovelNot previously describedNon-obviousUseful
Patents
A man "has a right to use his knife to cut his meat, a fork to hold it; may a patentee take from him the right to combine their use on the same subject?" -- Thomas Jefferson
Processes vs. algorithms What is non-obvious? Examples
Name Your Price (Priceline)One-click (Amazon)
OpinionsMarco Arment (inherently problematic)Paul Graham (patents === software patents)
Software & Business Process Patents
Recent Activity German legislature: resolution calling for
cessation New Zealand considering outright ban US courts appear to be backing off
Bilski v Kappos (Supreme, 2010)○ Hedging the risk of commodities fluctuation○ Claims denied
CLS v Alice (Circuit, 2013)○ Trading platform to assure that neither side renigs○ Claims denied
Trademarks
Word, phrase or symbol “Pithily” identifies Infringement: used by someone else Dilutions
Blurring – dissimilar productsTarnishment – negative or compromising
Has been applied to domain namesCybersquattingParody or criticism
Trademarks
Cybersquatting.net, .org, .com, …Punctuation (hyphenation, etc.)Phrases, nicknames
Parody, criticism, complaint (cybergriping)Property rights vs. free speechBringing people to the site under false
pretensesIncluding the name in the url vs. appearing to
be the site
Domain Names
Non-legal Issues
Responsibility to usersMaking it clear that its another siteProtection from inappropriate material
Responsibility to other site ownersBypassing advertisements
○ Ticketmaster and Microsoft
Hyperlinks
What are they?Invisible content used for searching and
advertising Geting more leverage
Search enginesBanner ads
TechniquesMultiple tags to get more leverageTags that are unrelated
Metatags
Some Last Thoughts
The Process
Customer Described
Lead Understood
Customer Needed
Programmer Built
Analyst Designed
Patterns of Success Solutions need to evolve from user specs
AND user specs need to evolve from viable solutions.
Process and instrumentation rigor evolves from light to heavy.
Healthy projects display a sequence of progressions and digressions.
Testing needs to be a first class, full lifecycle activity.
Intellectual Honesty McConnell, Code Complete
Refusing to pretend you’re an expert when you’re not
Readily admitting your mistakes Trying to understand a compiler warning rather
than suppressing the message Clearly understanding your program – not
compiling it to see if it works Providing realistic status reports Providing realistic schedule estimates & holding
your ground when mgmt asks you to adjust
Are all projects worth doing? Intended misuse Potential misuse Unexpected consequences
Google glasses
Work
You do well what you enjoy Smile on your way to work A job or a career? Life-long learning
exponential times 5 pm: Poornima Vijayashanker
Mint.com, 2 more startups