• Save
APEX Adolescence
Upcoming SlideShare
Loading in...5
×
 

APEX Adolescence

on

  • 657 views

 

Statistics

Views

Total Views
657
Views on SlideShare
656
Embed Views
1

Actions

Likes
1
Downloads
0
Comments
0

1 Embed 1

http://www.sumneva.com 1

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • APEX is loosely related to WebDB\n No code shared; but the concept is\n WebDB generated code - fatal flaw\n
  • Google is < 1 year old (SEP 1998)\n Originally designed to build a Calendar/Resource Reservation System\n Mike had the foresight to build a product to build a solution\n Learned from WebDB that metadata was the way to go\n Not a terribly useful product\n No real customers, no support, “clunky”\n Saw demo - thought it was awful\n Like most conceptions, not widely celebrated nor recognized by anyone aside from the parents\n Limitless potential\n
  • \n
  • \n
  • Original iPod was < 1 year old (OCT 2001)\n Offered as a free hosted service from Oracle\n We call this “the cloud” today\n Named Marvel as its release coincided with the release of Spiderman\n Few used it, but those who did were quite passionate\n Grass roots support from the Oracle team\n Built DOD Excess Property system as an alternative to iStore\n Me: “I used iStore for the NIC store.” Larry: “You’re a braver man than I am.”\n Then joined the APEX team\n Better than App Server or OCS\n
  • \n
  • \n
  • Facebook doesn’t yet exist (FEB 2004)\n Initial release of HTML DB concurrent with Database 10g @ OOW\n People were unsure as to what to make of it\n Many wrote it off as a simple tool that could only replace small apps\n Despite the fact that CPD was using it large-scale\n Lots of fear that it would go the way of WebDB\n People who saw the original demos were also speechless\n Massive interest at OpenWorld\n Busiest booth by far\n 1.6: Themes, Master-Detail Forms\n
  • \n
  • \n
  • YouTube was 3 months away\n 2.0: Included new SQL Workshop (OB & QB), SSP\n Quest freaked out\n Early use of Ajax technologies w/Query Builder\n Companies start considering APEX as a viable platform\n Not just small ones, either\n Began to see use for mission-critical applications\n Due to the large demand for consulting & training, Founded Sumner Technologies just before 2.0 was released\n\n
  • \n
  • \n
  • \n
  • Twitter just founded (JUL-2006)\n Rapid release of three versions with major enhancements - they grow so fast!\n PDF & BI Publisher\n MS Access Migrations\n Interactive Reports\n Flash Charts\n Migration Workshops\n Teasing started by the “other kids”\n More momentum in the industry - APEXposed started, OOW, ODTUG, etc.\n\n
  • \n
  • Starting to get noticed by society\n Jobs, sports, school, etc.\n Many are skeptical as to whether they will be “good or bad kids”\n Thus, there is a lot of judgement\n\n
  • This is where we are now\n APEX 4.0 can potentially change web development as much as HTML DB 1.5 did\n Plugins & Dynamic Actions make anything possible with little to no code\n Websheets\n Team Development\n You’ll see a lot of 4.0 stuff here in Dallas\n
  • \n
  • shop.oracle.com projected to account for $4 bln \n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • No distractions or Internet\n If you fly United, that is\n Allows you to think things through with a back to basics approach\n Notebook can be used below 10,000 feet and when the seatbelt sign is on\n Iterative development w/out any technology is possible\n Intro to APEX I & II classes done this way\n\n
  • Perhaps the most powerful - and least expensive - tool that we have\n Allows us to “see” our ideas, designs, etc.\n What we see helps us to evaluate and revise solutions\n GWIC example\n 1 day from design to deployment\n 100 forms\n Initially thought 100 packages + tons of tables\n Got it down to 1 package and 5 tables\n Saw the flaw early on and corrected it on the whiteboard\n\n
  • $79 - cross platform tool \n Faster than APEX\n Cross-platform + export to PDF, PNG etc.\n All the speed w/out the investment of code\n Don’t have to be an artist to use it\n Separate structure from Style\n Focus on position of elements & flow of pages\n Not which shade of blue looks best\n Users will be able to see what they will get - and provide feedback that’s easy for the developer to implement\n Other tools: Visio, Omnigraffle, PowerPoint, Napkin\n\n
  • Oracle SQL Developer Data Modeler is now free\n No excuse not to have a good tool!\n The foundation for any good application is a Solid Data Model \n Ensure that everything is scalable w/out writing a line of code\n Visualizing things helps us to see them better\n Can remedy issues before any tables are created \n Unit Test Tool\n Future integration w/APEX\n UI Defaults tab\n Auto-generate applications (pure speculation)\n \n
  • \n
  • \n
  • Important to have things defined & consistent\n Less is more - GP example of 100 page best practices\n User APEX Components\n List story\n Dynamic Actions\n Future Proofing your code\n Less is more\n Beware of Coding by Google\n\n
  • \n
  • \n
  • \n
  • How many people use version control?\nBackup and Restore. Files are saved as they are edited, and you can jump to any moment in time. Need that file as it was on Feb 23, 2007? No problem.\nSynchronization. Lets people share files and stay up-to-date with the latest version.\nShort-term undo. Monkeying with a file and messed it up? (That’s just like you, isn’t it?). Throw away your changes and go back to the “last known good” version in the database.\nLong-term undo. Sometimes we mess up bad. Suppose you made a change a year ago, and it had a bug. Jump back to the old version, and see what change was made that day.\nTrack Changes. As files are updated, you can leave messages explaining why the change happened (stored in the VCS, not the file). This makes it easy to see how a file is evolving over time, and why.\nTrack Ownership. A VCS tags every change with the name of the person who made it. Helpful for blamestorming giving credit.\nSandboxing, or insurance against yourself. Making a big change? You can make temporary changes in an isolated area, test and work out the kinks before “checking in” your changes.\nBranching and merging. A larger sandbox. You can branch a copy of your code into a separate area and modify it in isolation (tracking changes separately). Later, you can merge your work back into the common area.\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Essential part of development\n Necessary for multiple developers\n Supplements APEX Page Locks\n Allows for:\n Better code management\n Ability to “fork” code\n Ability to restore previous releases\n Ability to see what changed\n Ability to generate builds\n\n
  • Subversion\n Popular open source version control system\n Several desktop clients available\n Can also be used in command line mode\n Possible to integrate & automate\n APEXexporter can check in apps nightly\n
  • View revisions allows you to see what changed when, and by who\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

APEX Adolescence APEX Adolescence Presentation Transcript

  • APEX Adolescence Scott Spendolini President & Founder
  • CHILDHOOD DEVELOPMENT3 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception Birth4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception Infancy Birth4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception Infancy Birth Toddler4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception Infancy Childhood Birth Toddler4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD DEVELOPMENT PHASES Conception Infancy Childhood Birth Toddler Adolescence4 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASES Conception Infancy Childhood Birth Toddler Adolescence5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows Conception Infancy Childhood Birth Toddler Adolescence5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows Conception Infancy Childhood Birth Toddler Adolescence Project Marvel5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows HTML DB 1.x Conception Infancy Childhood Birth Toddler Adolescence Project Marvel5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows HTML DB 1.x Conception Infancy Childhood Birth Toddler Adolescence Project Marvel APEX 2.x5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows HTML DB 1.x APEX 3.x Conception Infancy Childhood Birth Toddler Adolescence Project Marvel APEX 2.x5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • APEX DEVELOPMENT PHASESOracle Flows HTML DB 1.x APEX 3.x Conception Infancy Childhood Birth Toddler Adolescence Project Marvel APEX 2.x APEX 4.x5 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • A PEX6 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Conception7 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Conception7 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 8 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • A concept is a cognitive unit of meaning—an abstract idea or a mental symbol sometimes defined as a “unit of knowledge,” built from other units which act as a concepts characteristics.8 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • MEET THE FATHER• Mike Hichwa • VP, Database Tools, Oracle9 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • MEET THE EXTENDED FAMILY• Marco Adelfio • Raj Mattamal• Carl Backstrom • Tyler Muth• Chris Beck • Anthony Rayner• Christina Cho • Kris Rice• Hillary Farrell • Mark Sewtz• Joel Kallman • Jason Straub• Sharon Kennedy • Scott Spadafore• David Peake • Scott Spendolini• Syme Kutz • Patrick Wolf• Sergio Leunissen10 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • MEET “THAT” UNCLE11 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CONCEPTION: ORACLE FLOWS• August 4th, 199912 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Birth13 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Birth13 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 14 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Newborns have unremarkable vision, being able to focus on objects only about 18 inches directly in front of their face.14 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • BIRTH: PROJECT MARVEL• June 200215 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Infancy16 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Infancy16 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 17 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • The term infant derives from the Latin word infans, meaning “unable to speak or speechless.”17 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • INFANCY: HTML DB 1.5 & 1.6• December 200318 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Toddler19 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Toddler19 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 20 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • To “toddle” is to walk unsteadily.20 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • TODDLER: HTML DB 2.0• October 200521 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • NO MORE BABY NAMES• With release 2.2, the name was changed from Oracle HTML DB to Oracle Application Express22 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Childhood23 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Childhood23 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 24 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • During this stage of development, children learn and assimilate information rapidly, and express interest and fascination in each new discovery.24 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CHILDHOOD: APEX 3.0, 3.1 & 3.2• March 200725 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Adolescence26 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Adolescence26 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 27 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Adolescence is usually accompanied by an increased independence allowed by the parents or legal guardians and less supervision.27 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • ADOLESCENCE: APEX 4.0• June 201028 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • ORACLE APEX MOMENTUM• Oracle Application Express • Over 100,000 downloads per year • Estimated 250,000+ developers• apex.oracle.com • Over 4 million page views per week• APEX Forum on OTN • 4.4 million views (#3 on OTN)• Growing Community • 80+ Consulting companies • 50+ BLOGs • 10+ Hosting Partners29 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • ORACLE APEX MOMENTUM• User Groups • 30+ presentations @ OOW 2010 • 50+ @ ODTUG 2010 • APEXposed 2010!• Products • shop.oracle.com • Oracle Metalink (previous version) • Oracle Audit Vault • ThinkQuest (over 1 million users)• Books • Over 10 published and/or planned30 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • GREAT EXPECTATIONS• As APEX continues to mature, it’s moving out of splinter IT departments and into the central IT department• This is a good sign - but there are different expectations that most APEX developers will have to meet • Otherwise, you risk that APEX will not meet the criteria of central IT and be banished from your organization• Best to be prepared and start planning for them today31 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • GOOD PARENTING SKILLS• It’s now up to us to parent APEX into adulthood • Solid Design Processes • Best Practices • Version Control • Error Management • Security • Monitoring32 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • GOOD PARENTING SKILLS• It’s now up to us to parent APEX into adulthood • Solid Design Processes • Best Practices • Version Control • Error Management • Security • Monitoring32 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Solid Design Processes33 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 34 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.” - The 90/10 Rule34 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • DEVELOPING AT 35,000 FT35 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • THE WHITEBOARD36 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • BALASMIQ MOCKUPS37 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • SQL DEVELOPER DATA MODELER38 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • SQL DEVELOPER DATA MODELER e e ! F r o w N38 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Best Practices39 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 40 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Consistency trumps Complexity. Every. Single.Time.40 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • BEST PRACTICES• Important to have • Should be clearly defined & consistent• Use APEX components as much as possible • Dynamic Actions take this to a whole new level• Beware of “coding by Google”41 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Version Control42 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 43 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “Baby come back, you can blame it all on me. I was wrong, and I just cant live without you.” - Player43 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “Baby come back, you can blame it all on me. I was wrong, and I just cant live without you.” - Player43 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • BENEFITS OF VERSION CONTROL• Backup and Restore• Synchronization• Short-term undo• Long-term undo• Track Changes• Track Ownership• Sandboxing• Branching & Merging Source: http://betterexplained.com/articles/a-visual-guide-to-version-control44 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Milk Eggs Juice r1 Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Milk Eggs Check Out Juice r1 Milk Milk Eggs Eggs Juice Juice Bacon Working Copy Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Milk Eggs Check Out Juice r1 Milk Eggs Juice Bacon Working Copy Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Milk Eggs Check Out Juice r1 Milk Eggs Revert Juice Bacon Working Copy Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VERSION CONTROL Main Trunk Milk Milk Eggs Eggs Check Out Juice Bacon r1 r2 Milk Eggs Revert Juice Check In Bacon Working Copy Source: http://betterexplained.com/articles/a-visual-guide-to-version-control45 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • COMPARE DIFFERENCES46 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • VIEW REVISIONS47 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Error Management48 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 49 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “To err is human. To really screw up takes a computer.” - Dilbert49 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • LOGGER• PL/SQL logging & debugging framework by Tyler Muth • Designed with APEX in mind• Multi-Purpose • Debugging • Logging • Timing • Enable/Disable• Available for free from https://logger.samplecode.oracle.com50 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • USING LOGGER logger.log(Message);51 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • USING LOGGER WITH APEX logger.log_apex_items(Message);52 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • LOGGER RESULTSselect id,logger_level,text,module,action,client_identifier from logger_logs where logger_level = 128; ID LOGGER_LEVEL TEXT MODULE ACTION CLIENT_IDENTIFIER------- ------------ -------------------- ---------------------- --------- -------------------- 47 128 Message APEX:APPLICATION 100 PAGE 7 ADMIN:45588554040361select * from logger_logs_apex_items where log_id = 47; --log_id relates to logger_logs.id ID LOG_ID APP_SESSION ITEM_NAME ITEM_VALUE------- ------- ---------------- ------------------------- --------------------------------------------- 136 47 45588554040361 P1_QUOTA 137 47 45588554040361 P1_TOTAL_SALES 138 47 45588554040361 P6_PRODUCT_NAME 3.2 GHz Desktop PC 139 47 45588554040361 P6_PRODUCT_DESCRIPTION All the options, this machine is loaded! 140 47 45588554040361 P6_CATEGORY Computer 141 47 45588554040361 P6_PRODUCT_AVAIL Y 142 47 45588554040361 P6_LIST_PRICE 1200 143 47 45588554040361 P6_PRODUCT_IMAGE 144 47 45588554040361 P4_CALENDAR_DATE 20091103 145 47 45588554040361 P7_CUSTOMER_ID 6 146 47 45588554040361 P7_BRANCH 2 147 47 45588554040361 P29_ORDER_ID_NEXT 148 47 45588554040361 P29_ORDER_ID_PREV 149 47 45588554040361 P29_ORDER_ID_COUNT 0 of 0 150 47 45588554040361 P7_CUST_FIRST_NAME Albert 151 47 45588554040361 P7_CUST_LAST_NAME Lambert 152 47 45588554040361 P7_CUST_STREET_ADDRESS1 10701 Lambert International Blvd. 153 47 45588554040361 P7_CUST_STREET_ADDRESS2 154 47 45588554040361 P7_CUST_CITY St. Louis 155 47 45588554040361 P7_CUST_STATE MO 156 47 45588554040361 P7_CUST_POSTAL_CODE 63145 157 47 45588554040361 P7_CUST_EMAIL 158 47 45588554040361 P7_PHONE_NUMBER1 314-555-4022 159 47 45588554040361 P7_PHONE_NUMBER2 160 47 45588554040361 P7_CREDIT_LIMIT 1000 161 47 45588554040361 P6_PRODUCT_ID 1 162 47 45588554040361 P29_ORDER_ID 953 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • PROGRAMATIC DEBUGGING• APEX_DEBUG_MESSAGE API • Can now programmatically enable or disable debug mode • Useful for when you need to trace something when something else has gone wrong • Non-intrusive; only executed when needed54 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Security55 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 56 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Security is hard. If it’s easy, then it’s wrong.56 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • THE THREAT DOWN• There’s a number of threats that we need to be concerned with for any web application - APEX or otherwise • Identity Management • URL Tampering • SQL Injection • Cross Site Scripting • Unauthorized Data Access57 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • PROPER ASSESSMENT• Take time to identify the most likely threat • Not the most spectacular one• Devote most resources to mitigate the most likely threat • While not totally ignoring some of the spectacular ones58 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • CONSTANT VIGILANCE• Security is a process; not an event • For example: FireSheep • Launched on 24-OCT-2010, FireSheep is a Firefox Add-On that can seamlessly hijack sessions for many popular sites • Google • Yahoo • Hotmail • Facebook59 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Monitoring60 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 61 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “I always feel like somebody’s watching me.” - Rockwell61 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • MONITORING• Once you deploy your applications, your job is not done • Rather, it’s just beginning• All applications should be monitored for • Performance Issues • Errors • Security breaches • Utilizations62 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Summary63 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • Summary63 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 64 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • “With great power comes great responsibility.” - Uncle Ben64 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 65 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • 65 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • OUR RESPONSIBILITY• APEX is growing up. Fast.• It’s up to us to ensure that we take care of it as best we can • Just like it were our child• Else, we risk losing it entirely66 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com
  • http://sumneva.com67 Copyright © 2010 Sumneva - All Rights Reserved - http://sumneva.com - info@sumneva.com