Unit Testing, Difference Testing, Profiling, and Musings on Software Engineering

Size: px
Start display at page:

Download "Unit Testing, Difference Testing, Profiling, and Musings on Software Engineering"

Transcription

1 Unit Testing, Difference Testing, Profiling, and Musings on Software Engineering Bob Yantosca Senior Software Engineer Jacob Group Meeting 06 August 2014

2 Contents Unit testing, revisited Update since Nov new features! Difference testing How it differs from Unit Testing Profiling GEOS-Chem with TAU Examples where TAU helped us speed up GC code Musings on software engineering Can say GC is a successful software product? Do we use industry best practices?

3 Unit Testing, Revisited

4 What is Unit Testing? Unit Tests are short simulations designed to reveal common flaws in software. Unit Tests can be automated and run daily. Automated is key Let the computer do multiple steps for you Errors caused by human forgetfulness less likely

5 We already do benchmarks... 1-month and 1-year benchmarks See Budgets Concentrations, differences, ratios Frequency distribution histogram Emission ratios Aerosol scatter plots J-value ratios Seasonal profiles (vertical and surface)

6 But sometimes it's not enough G-C benchmarks are designed to reveal shortcomings in model science algorithms Is chemistry too hot? Do we have too much deposition? Is there a bias w/r/t observations?, etc. Bugs or numerical issues in the code may not always manifest themselves in the benchmarks Effects may be too small to show up on the plots But the code may be still doing something wrong!!!

7 Motivation to be bug-free Bugs waste time and time is $$$ Every minute we spend fixing bugs is a minute that we are not working on something else GC in GEOS-5-DAS GC as a HPC standalone A bug in any one of the various GC lines of development can cause the entire schedule to slip! HEMCO emissions Other science updates

8 Motivation to be bug-free Bugs can damage our reputation Worst case scenario: Having to issue a retraction because of a bug.

9 GEOS-Chem Unit Tester G-C Unit Tester is an external package Downloadable via Git git clone git://git.as.harvard.edu/bmy/geos-chem-unittest UT The Unit Tester package has several subdirs: perl: Contains scripts & input files runs: Contains GEOS-Chem run directories logs: where log file output will get sent jobs: where job files will be created doc: where documentation gets built

10 GEOS-Chem Unit Tester You can perform several G-C unit tests at once Define UT options in a input file Simple to start: gcunittest UnitTest.input Each unit test validates a combination of met field + horizontal grid + simulation type geos5_2x25_co2 merra_4x5_hg geosfp_4x5_fullchem geos5_4x5_soa, etc.

11 Each UT is designed to reveal: 1. Floating-point math exceptions Infinity, NaN, division-by-zero 2. Array out-of-bounds errors e.g. ARRAY(4) = x; but ARRAY only has 3 elements 3. Inefficient subroutine calls Array Temporary duplicate copy of data being passed 4. Parallelization errors Different results when OpenMP parallelization is on vs. off 5. Missing or incomplete input files / data files

12 Error and warning messages The Unit Tester will send error / warning messages to a log file: Floating point math error: > forrtl: error (65): floating invalid Array out-of-bounds error: > main.f(12): error #5561: Subscript #1 of the array ARRAY has value 4 which is greater than the upper bound of 3 ARRAY(4) = 4.0 Inefficient subroutine call: > forrtl: warning (402): fort: (1): In call to MY_ROUTINE, an array temporary was created for argument #1

13 UT results get sent to the results log file ############################################################################### ### VALIDATION OF GEOS-CHEM OUTPUT FILES ### In directory: geos5_4x5_hg ### ### File 1 : trac_avg.geos5_4x5_hg sp ### File 2 : trac_avg.geos5_4x5_hg mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ### ### File 1 : trac_rst.geos5_4x5_hg sp ### File 2 : trac_rst.geos5_4x5_hg mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ############################################################################### ############################################################################### ### VALIDATION OF GEOS-CHEM OUTPUT FILES ### In directory: geosfp_4x5_rnpbbe ### ### File 1 : trac_avg.geosfp_4x5_rnpbbe sp ### File 2 : trac_avg.geosfp_4x5_rnpbbe mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ### ### File 1 : trac_rst.geosfp_4x5_rnpbbe sp ### File 2 : trac_rst.geosfp_4x5_rnpbbe mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ###############################################################################... etc for all of the unit tests that you have scheduled... Diagnostics (aka bpch ) outputs sp = parallelization OFF mp = parallelization ON Restart files at end of run sp = parallelization OFF mp = parallelization ON

14 Unit Testing: New Features since Bob Y's last group meeting in Nov 2013

15 TOMAS aerosol microphysics: geos5_4x5_tomas40 Tagged CO simulation geosfp_4x5_tagco; geos5_4x5_tagco, merra_4x5_tagco Tagged O3 simulation geosfp_4x5_tago3; geos5_4x5_tago3; merra_4x5_tago3; geos4_4x5_tago3 POPs simulation geosfp_4x5_pops; geos5_4x5_pops; merra_4x5_pops; geos4_4x5_pops CH4 simulation We added several new unit tests geosfp_4x5_ch4; geos5_4x5_ch4; merra_4x5_ch4 UCX (strat-trop chemistry) geosfp_4x5_ucx; geos5_4x5_ucx

16 UT results get sent to the results log file ############################################################################### ### VALIDATION OF GEOS-CHEM OUTPUT FILES ### In directory: geos5_4x5_hg ### ### File 1 : trac_avg.geos5_4x5_hg sp ### File 2 : trac_avg.geos5_4x5_hg mp ### Sizes Bummer! : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ### ### File 1 : trac_rst.geos5_4x5_hg sp ### File 2 : trac_rst.geos5_4x5_hg mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ############################################################################### ############################################################################### log file to find out if any unit tests ### VALIDATION OF GEOS-CHEM OUTPUT FILES ### In directory: geosfp_4x5_rnpbbe ### failed. ### File 1 : trac_avg.geosfp_4x5_rnpbbe sp ### File 2 : trac_avg.geosfp_4x5_rnpbbe mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ### Is there a better way to display this ### File 1 : trac_rst.geosfp_4x5_rnpbbe sp ### File information? 2 : trac_rst.geosfp_4x5_rnpbbe mp ### Sizes : IDENTICAL ( and ) ### Checksums : IDENTICAL ( and ) ### Diffs : IDENTICAL ############################################################################### If you scheduled many unit tests, then you have to scroll down this whole long... etc for all of the unit tests that you have scheduled...

17 Unit test results are posted online at:

18 G-C Unit Tester: Summary Unit Tests are now part of the standard G-C benchmarking protocol. We perform a full set of unit tests along with each 1-month benchmark G-C Unit Tester is also being adapted for use with HEMCO (in v10-01e and higher) For more info, see: wiki.geos-chem.org/geos-chem_unit_tester

19 Difference Testing

20 Difference testing Sometimes we need to test structural updates Example: the fixes that were submitted during the v9-02 public comment period from Jan-Mar 2014 Most updates were for the specialty simulations or TOMAS simulations; should not affect full-chem sim But we still need to make sure that these updates did not break the full-chemistry simulation Cannot do this with a unit test Unit tests look at the same model version

21 Difference test compares 2 snapshots of GEOS-Chem at different points along the development process Development Code aka Dev Does the Dev code give us identical results in the full-chemistry simulation compared to the Ref code? Reference Code aka Ref

22 How to set up a difference test Code.Dev GEOS-Chem Source Code Dir at the point in history labeled v9-02-public-release Code.Ref GEOS-Chem Source Code Dir at the point in history labeled v9-02-provisional-release Run.Dev Run directory with the proper input and restart files corresponding to Code.Dev Run.Ref Run directory with the proper input and restart files corresponding to Code.Ref Initial conditions must be identical Steps: 1. Compile Code.Ref and copy the executable file (geos.ref) to Run.Ref 2. Run geos.ref for a short model simulation (e.g. 1-3 model hours) 3. Compile Code.Dev and copy the executable file (geos.dev) to Run.Dev 4. Run the geos.dev executable for the same amt of time as for geos.ref 5. Compare (w/ diff) the restart and bpch files in Run.Dev and Run.Ref. 6. If restart and bpch files are identical, then Code.Dev passes the test.

23 Difference testing: Summary Difference tests can be automated Makefiles can do all of the steps listed on the previous slide; All you have to do is start the test. Difference tests can be frequent Can run a test each time you add code that shouldn't impact any scientific results Difference tests can be varied You can set up difference tests for full-chem, SOA, TOMAS, Rn-Pb-Be, Hg, CH4, etc. simulations

24 Profiling GEOS-Chem with TAU

25 TAU: Tuning and Analysis Utilities John Linford of ParaTools, Inc. has installed TAU on the AS cluster. Many of you were here for John's talk / workshop in March. TAU can be used to profile GEOS-Chem. Profiling means that we can find out how much time each GEOS-Chem subroutine (or section of a subroutine) takes to execute. This helps us to identify computational bottlenecks.

26 G-C v10-01 has TAU support built in To activate TAU in GEOS-Chem, compile with: make -j4 MET=geosfp GRID=4x5 TAU_PROF=y etc. TAU saves profiling info to disk TAU also provides visualization routines: paraprof: Plots execution times into barcharts pprof: Lists execution times in text format We will show a couple of examples...

27 Example #1: Olson land map code Barchart output generated by paraprof

28 Example #2: TPCORE speedup Barchart output generated by paraprof

29 Profiling w/ TAU: Summary TAU is going to be an important part of G-C development going forward As G-C gets more complex, we will need to make sure that it is running efficiently We have just started to scratch the surface with what we can do with TAU

30 Musings on Software Engineering

31 Is there a way to test how good your software team is? Are you using best practices? I use Joel Spolsky's 12 Steps to Better Code as my guide. It is a quick test that you can use to get an easy yes or no to each question. Joel Spolsky is the founder of Fog Creek Software in NYC. His company has produced several innovative software packages, such as: FogBugz: Bug-tracking system for software developers Trello.com: Free and easy-to-use performance management system (Tack virtual cards on a virtual bulleting board). The GCST uses Trello.com for workflow management. For more info, see Joel's blog: joelonsoftware.com

32 Joel Spolsky's 12 Steps to Better Code 1. Do you use source control? Joel says: But if you don't have source control, you're going to stress out trying to get programmers to work together. Programmers have no way to know what other people did. Mistakes can't be rolled back easily. YES! We use the Git source code management system for GEOS-Chem. Git is the gold standard for version control.

33 Joel Spolsky's 12 Steps to Better Code 2. Can you make a build in one step? Joel says: If the process takes any more than one step, it is prone to errors...if it takes 20 steps to compile the code, run the installation builder, etc., you're going to go crazy and you're going to make silly mistakes. YES! You can compile GEOS-Chem into an executable file with a single command. We also provide a separate installer to build the netcdf libraries in one step (for first-time setup).

34 Joel Spolsky's 12 Steps to Better Code 3. Do you make daily builds? Joel says: When you're using source control, sometimes one programmer accidentally checks in something that breaks the build...breaking the build is so bad (and so common) that it helps to make daily builds, to insure that no breakage goes unnoticed. YES! We use unit tests and difference tests each day to ensure that we don't break any critical functionality in GEOS-Chem.

35 Joel Spolsky's 12 Steps to Better Code 4. Do you have a bug database? Joel says: Lots of programmers think they can hold the bug list in their heads. Nonsense. I can't remember more than two or three bugs at a time, and the next morning, or in the rush of shipping, they are forgotten. You absolutely have to keep track of bugs formally. YES! The GEOS-Chem wiki is our bug database. Bugs, fixes, and unresolved issues are listed for each model version. These are also cross-referenced in our Bugs and Fixes and Currently unresolved issues in GEOS- Chem pages.

36 Joel Spolsky's 12 Steps to Better Code 5. Do you fix bugs before writing new code? Joel says: In general, the longer you wait before fixing a bug, the costlier (in time and money) it is to fix...and if you find a bug in code that has already shipped, you're going to incur incredible expense getting it fixed. YES! We assign the highest priority to bug fixes and work to resolve them before adding new science to GEOS-Chem.

37 Joel Spolsky's 12 Steps to Better Code 6. Do you have an up-to-date schedule? Joel says: The...crucial thing about having a schedule is that it forces you to decide what features you are going to do, and then it forces you to pick the least important features and cut them rather than slipping into featuritis (a.k.a. scope creep). YES! Each GEOS-Chem version is now released nine months after the previous version. In addition, each release now has a period of 1 month for public comment. Whatever doesn't ship by release time will go into the next version.

38 Joel Spolsky's 12 Steps to Better Code 7. Do you have a spec (i.e. a blueprint)? Joel says: At the design stage, when you discover problems, you can fix them easily by editing a few lines of text. Once the code is written, the cost of fixing problems is dramatically higher. YES! New source code additions to GEOS-Chem (e.g. HEMCO, GIGC updates) were implemented according to previously thought-out design standards. (Excluding 3rdparty code that did not originate with us.)

39 Joel Spolsky's 12 Steps to Better Code 8. Do programmers have quiet working conditions? Joel says: We all know that knowledge workers work best by getting into flow, also known as being in the zone...if a coworker asks you a question, causing a 1 minute interruption, but this knocks you out of the zone badly enough that it takes you half an hour to get productive again, your overall productivity is in serious trouble. YES! Melissa, Mike, and myself have offices to ourselves, as opposed to Dilbert-style open cubicles.

40 Joel Spolsky's 12 Steps to Better Code 9. Do you use the best tools money can buy? Joel says: Top notch development teams don't torture their programmers. Even minor frustrations caused by using underpowered tools add up, making programmers grumpy and unhappy. And a grumpy programmer is an unproductive programmer. YES! We have access to cutting edge software packages, some free/open-source and some proprietary: IFORT compiler, Emacs editor, Totalview Debugger, IDL, Git, Matlab, R, Dreamweaver (for web design), etc.

41 Joel Spolsky's 12 Steps to Better Code 10. Do you have testers? Joel says: Skimping on testers is such an outrageous false economy that I'm simply blown away that more people don't recognize it. YES! We don't have dedicated testers like a software company would, but the GCST now can perform automated unit tests and difference tests.

42 Joel Spolsky's 12 Steps to Better Code 11. Do new candidates write code during their interview? Joel says: Would you hire a magician without asking them to show you some magic tricks? Of course not. N/A. This is more applicable to a software company developing in languages with standardized components. Our primary criteria is that a GCST member should be well-versed in a physical science before anything else. Programming skills can be taught more easily than science.

43 Joel Spolsky's 12 Steps to Better Code 12. Do you do hallway usability testing? Joel says: A hallway usability test is where you grab the next person that passes by in the hallway and force them to try to use the code you just wrote. If you do this to five people, you will learn 95% of what there is to learn about usability problems in your code. SORT OF. Melissa and I often ask each other to test our codes and documentation. We sometimes also ask other group members to test things that we have been working on. But we do this on an as-needed basis.

44 So how did we do? I would give us a Joel Test score of 10.5 / 11, or 95% Excluding point #11 which is not applicable The results are an objective confirmation of what we knew already :-) That G-C is a well-managed software product That we pay great attention to our user interface and documentation

45 Why use Fortran? C For numerical programming, Fortran is MUCH faster than other languages! Which is why real programmers use Fortran. :-)

46 Extra slides

47 UT will catch floating-point math errors Infinity REAL*4: any x < or x > REAL*8: any x < or x > Can be caused by a division by-zero NaN: Result of any illegal computation, e.g. LOG(x), x <= 0 SQRT(x), x < 0 TAN(x), x = +p/2 Etc.

48 UT will catch array out-of-bounds errors What happens when we make an illegal array assignment?! Declare a REAL*4 array w/ 3 elements REAL*4 :: ARRAY(3)! Assign values ARRAY(1) = 1.0 ARRAY(2) = 2.0 ARRAY(3) = 3.0 ARRAY(4) = 4.0! This is outside of array bounds! ARRAY(4) gets placed into the system memory following ARRAY(3), but those bytes may already be occupied by another variable! ARRAY(1) ARRAY(2) ARRAY(3) ARRAY(4)? This clobbers whatever value was stored immediately following ARRAY!! A junk value then will propagate thru your code!

49 UT will catch inefficient subroutine calls The calling routine (or program): System Memory USE CMN_SIZE_MOD, IIPAR, JJPAR, LLPAR REAL*4, ARRAY(IIPAR,JJPAR,LLPAR) ARRAY =! Some computation ARRAY (IIPAR x JJPAR x LLPAR)! Pass a non-contiguous slice CALL MY_ROUTINE( ARRAY(:,1,:) ) The routine that is called:: SUBROUTINE MY_ROUTINE( ARRAY ) USE CMN_SIZE_MOD, IIPAR, LLPAR REAL*4, INTENT(INOUT) :: & ARRAY(IIPAR,LLPAR) ARRAY =! Some other computation END SUBROUTINE MY_ROUTINE Temporary copy of a sub-slice of ARRAY (IIPAR x LLPAR) If we try to pass a noncontiguous array slice to a subroutine, then the compiler has to create an ARRAY TEMPORARY (i.e. a duplicate copy). This can cause a performance bottleneck.

50 UT will catch parallelization errors Creating a parallel DO-loop:!$OMP PARALLEL DO!$OMP+DEFAULT( SHARED )!$OMP+PRIVATE( I, J, P ) DO J = 1, JJPAR DO I = 1, IIPAR P = A(I,J) * 2.0 B(I,J) = P ENDDO ENDDO!$OMP END PARALLEL DO To look for parallelization errors, the Unit Tester will do 2 simulations as part of each requested unit test: (1) With parallelization turned OFF (2) With parallelization turned ON If both simulations do not yield identical results, there is an error. Most of the time parallelization errors are caused by a programmer forgetting to add a variable to the!$omp PRIVATE statement.

Debugging with the new GEOS-Chem Unit Tester

Debugging with the new GEOS-Chem Unit Tester Debugging with the new GEOS-Chem Unit Tester Bob Yantosca Senior Software Engineer GEOS-Chem Support Team Jacob Group Meeting 27 Nov 2013 with Melissa Payer Sulprizio Contents Overview G-C software development

More information

The Art of Debugging: How to think like a programmer. Melissa Sulprizio GEOS-Chem Support Team

The Art of Debugging: How to think like a programmer. Melissa Sulprizio GEOS-Chem Support Team The Art of Debugging: How to think like a programmer Melissa Sulprizio GEOS-Chem Support Team geos-chem-support@as.harvard.edu Graduate Student Forum 23 February 2017 GEOS-Chem Support Team Bob Yantosca

More information

The Joel Test: 12 Steps to Better Code.

The Joel Test: 12 Steps to Better Code. The Joel Test: 12 Steps to Better Code http://www.joelonsoftware.com/articles/fog0000000043.html The Joel Test In general, a score of

More information

Getting Started with GCHP v11-02c

Getting Started with GCHP v11-02c Getting Started with GCHP v11-02c Lizzie Lundgren GEOS-Chem Support Team geos-chem-support@as.harvard.edu September 2017 Overview 1) What is GCHP and why use it? 2) Common Misconceptions 3) Useful Tips

More information

The Joel Test 12 Steps to Better Code

The Joel Test 12 Steps to Better Code The Joel Test 12 Steps to Better Code Readings The Joel Test (by Joel Spolsky) http://www.joelonsoftware.com/articles/fog0000000 043.html The Joel Test In general, a score of

More information

APPENDIX B. Fortran Hints

APPENDIX B. Fortran Hints APPENDIX B Fortran Hints This appix contains hints on how to find errors in your programs, and how to avoid some common Fortran errors in the first place. The basics on how to invoke the Fortran compiler

More information

Getting Started with High Performance GEOS-Chem

Getting Started with High Performance GEOS-Chem Getting Started with High Performance GEOS-Chem Lizzie Lundgren GEOS-Chem Support Team geos-chem-support@as.harvard.edu June 2017 Overview 1) What is GCHP and why use it? 2) Common Misconceptions 3) Useful

More information

1 of 5 3/28/2010 8:01 AM Unit Testing Notes Home Class Info Links Lectures Newsgroup Assignmen [Jump to Writing Clear Tests, What about Private Functions?] Testing The typical approach to testing code

More information

Important new structural developments in GEOS-Chem v11

Important new structural developments in GEOS-Chem v11 Important new structural developments in GEOS-Chem v11 Bob Yantosca Senior Software Engineer GEOS-Chem Support Team Jacob Group Meeting 10 Aug 2016 with: Melissa, Matt, Lizzie, Mike Table of Contents Motivation

More information

Workshop on High Performance Computing (HPC08) School of Physics, IPM February 16-21, 2008 HPC tools: an overview

Workshop on High Performance Computing (HPC08) School of Physics, IPM February 16-21, 2008 HPC tools: an overview Workshop on High Performance Computing (HPC08) School of Physics, IPM February 16-21, 2008 HPC tools: an overview Stefano Cozzini CNR/INFM Democritos and SISSA/eLab cozzini@democritos.it Agenda Tools for

More information

Boot Camp. Dave Eckhardt Bruce Maggs

Boot Camp. Dave Eckhardt Bruce Maggs Boot Camp Dave Eckhardt de0u@andrew.cmu.edu Bruce Maggs bmm@cs.cmu.edu 1 This Is a Hard Class Traditional hazards 410 letter grade one lower than other classes All other classes this semester: one grade

More information

Hints for Instructors

Hints for Instructors APPENDIX C Hints for Instructors This appendix is addressed to faculty members and graduate students teaching Math 473. Most of it should apply to other Math courses that use computers, with suitable changes.

More information

7 Tips for Raising The Quality Bar With Visual Studio 2012

7 Tips for Raising The Quality Bar With Visual Studio 2012 Visit: www.intertech.com/blog 7 Tips for Raising The Quality Bar With Visual Studio 2012 Tip 1: Exploratory Testing I have to admit that when I first found out that enhanced exploratory testing was the

More information

Post Experiment Interview Questions

Post Experiment Interview Questions Post Experiment Interview Questions Questions about the Maximum Problem 1. What is this problem statement asking? 2. What is meant by positive integers? 3. What does it mean by the user entering valid

More information

Programming Assignments

Programming Assignments ELEC 486/586, Summer 2017 1 Programming Assignments 1 General Information 1.1 Software Requirements Detailed specifications are typically provided for the software to be developed for each assignment problem.

More information

Triton file systems - an introduction. slide 1 of 28

Triton file systems - an introduction. slide 1 of 28 Triton file systems - an introduction slide 1 of 28 File systems Motivation & basic concepts Storage locations Basic flow of IO Do's and Don'ts Exercises slide 2 of 28 File systems: Motivation Case #1:

More information

Learning to Program with Haiku

Learning to Program with Haiku Learning to Program with Haiku Lesson 4 Written by DarkWyrm All material 2010 DarkWyrm It would be incredibly hard to write anything useful if there weren't ways for our programs to make decisions or to

More information

How To Make 3-50 Times The Profits From Your Traffic

How To Make 3-50 Times The Profits From Your Traffic 1 How To Make 3-50 Times The Profits From Your Traffic by Chris Munch of Munchweb.com Copyright Munchweb.com. All Right Reserved. This work cannot be copied, re-published, or re-distributed. No re-sell

More information

Why are there so many programming languages? Why do we have programming languages? What is a language for? What makes a language successful?

Why are there so many programming languages? Why do we have programming languages? What is a language for? What makes a language successful? Chapter 1 :: Introduction Introduction Programming Language Pragmatics Michael L. Scott Why are there so many programming languages? evolution -- we've learned better ways of doing things over time socio-economic

More information

CHAPTER 2. Troubleshooting CGI Scripts

CHAPTER 2. Troubleshooting CGI Scripts CHAPTER 2 Troubleshooting CGI Scripts OVERVIEW Web servers and their CGI environment can be set up in a variety of ways. Chapter 1 covered the basics of the installation and configuration of scripts. However,

More information

CONVERSION TRACKING PIXEL GUIDE

CONVERSION TRACKING PIXEL GUIDE Conversion Tracking Pixel Guide A Step By Step Guide to Installing a conversion tracking pixel for your next Facebook ad. Go beyond clicks, and know who s converting. PRESENTED BY JULIE LOWE OF SOCIALLY

More information

9 th CA 2E/CA Plex Worldwide Developer Conference 1

9 th CA 2E/CA Plex Worldwide Developer Conference 1 1 Introduction/Welcome Message Organizations that are making major changes to or replatforming an application need to dedicate considerable resources ot the QA effort. In this session we will show best

More information

Exceptions! Users can t live with em Programmers can t live without em. i want stress-free IT. i want control. i want an i IBM Corporation

Exceptions! Users can t live with em Programmers can t live without em. i want stress-free IT. i want control. i want an i IBM Corporation Exceptions! Users can t live with em Programmers can t live without em Barbara Morris IBM i want stress-free IT. i want control. Agenda Why exceptions are good for you (yes, they are) Exception handling

More information

Azon Master Class. By Ryan Stevenson Guidebook #5 WordPress Usage

Azon Master Class. By Ryan Stevenson   Guidebook #5 WordPress Usage Azon Master Class By Ryan Stevenson https://ryanstevensonplugins.com/ Guidebook #5 WordPress Usage Table of Contents 1. Widget Setup & Usage 2. WordPress Menu System 3. Categories, Posts & Tags 4. WordPress

More information

Programming with Haiku

Programming with Haiku Programming with Haiku Lesson 4 Written by DarkWyrm All material 2010 DarkWyrm Source Control: What is It? In my early days as a developer on the Haiku project I had troubles on occasion because I had

More information

Lecture 19 CSE August You taught me Language, and my profit on t is I know how to curse. William Shakspere, The Tempest, I, ii.

Lecture 19 CSE August You taught me Language, and my profit on t is I know how to curse. William Shakspere, The Tempest, I, ii. Lecture 19 CSE 110 5 August 1992 You taught me Language, and my profit on t is I know how to curse. William Shakspere, The Tempest, I, ii. 1 Left-Over Language Features Today was the day we saw the last

More information

GEOS-Chem Model IGC8

GEOS-Chem Model IGC8 GEOS-Chem Model Clinic @ IGC8 Part 2: Advanced Topics GEOS-Chem Unit Tester HEMCO / Emissions FlexChem / KPP chemistry solver GEOS-Chem Species Database GEOS-Chem Support Team 01 May 2017 Note This presentation

More information

The Perl Debugger. Avoiding Bugs with Warnings and Strict. Daniel Allen. Abstract

The Perl Debugger. Avoiding Bugs with Warnings and Strict. Daniel Allen. Abstract 1 of 8 6/18/2006 7:36 PM The Perl Debugger Daniel Allen Abstract Sticking in extra print statements is one way to debug your Perl code, but a full-featured debugger can give you more information. Debugging

More information

SGI Altix Getting Correct Code Reiner Vogelsang SGI GmbH

SGI Altix Getting Correct Code Reiner Vogelsang SGI GmbH SGI Altix Getting Correct Code Reiner Vogelsang SGI GmbH reiner@sgi.com Module Objectives After completing the module, you will able to Find caveats and hidden errors in application codes Handle debuggers

More information

Addresses in the source program are generally symbolic. A compiler will typically bind these symbolic addresses to re-locatable addresses.

Addresses in the source program are generally symbolic. A compiler will typically bind these symbolic addresses to re-locatable addresses. 1 Memory Management Address Binding The normal procedures is to select one of the processes in the input queue and to load that process into memory. As the process executed, it accesses instructions and

More information

CVS. Computer Science and Engineering College of Engineering The Ohio State University. Lecture 21

CVS. Computer Science and Engineering College of Engineering The Ohio State University. Lecture 21 CVS Computer Science and Engineering College of Engineering The Ohio State University Lecture 21 CVS: Concurrent Version System Classic tool for tracking changes to a project and allowing team access Can

More information

TDDC88 Lab 4 Software Configuration Management

TDDC88 Lab 4 Software Configuration Management TDDC88 Lab 4 Software Configuration Management Introduction "Version control is to programmers what the safety net is to a trapeze artist. Knowing the net is there to catch them if they fall, aerialists

More information

Reveal 7.1 SP5 Release Notes

Reveal 7.1 SP5 Release Notes Reveal 7.1 SP5 Release Notes August 14, 2018 Reveal 7.1 SP5 Release Notes Features Production Imaging and Stamping in One Pass Reveal will now image and stamp production documents in a single pass as opposed

More information

Best Practices for Alert Tuning. This white paper will provide best practices for alert tuning to ensure two related outcomes:

Best Practices for Alert Tuning. This white paper will provide best practices for alert tuning to ensure two related outcomes: This white paper will provide best practices for alert tuning to ensure two related outcomes: 1. Monitoring is in place to catch critical conditions and alert the right people 2. Noise is reduced and people

More information

Review Version Control Concepts

Review Version Control Concepts Review Version Control Concepts SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Managing change is a constant aspect of software development.

More information

Quality Assurance: Test Development & Execution. Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation

Quality Assurance: Test Development & Execution. Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation Quality Assurance: Test Development & Execution Ian S. King Test Development Lead Windows CE Base OS Team Microsoft Corporation Introduction: Ian King Manager of Test Development for Windows CE Base OS

More information

Agile Project Management: A Quick Start Beginner's Guide To Mastering Agile Project Management PDF

Agile Project Management: A Quick Start Beginner's Guide To Mastering Agile Project Management PDF Agile Project Management: A Quick Start Beginner's Guide To Mastering Agile Project Management PDF Discover Agile Project Management *** 3rd Edition *** DO YOU WANT TO ACHIEVE THE BEST AT EVERY STAGE OF

More information

Common Git Commands. Git Crash Course. Teon Banek April 7, Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18

Common Git Commands. Git Crash Course. Teon Banek April 7, Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18 Common Git Commands Git Crash Course Teon Banek theongugl@gmail.com April 7, 2016 Teon Banek (TakeLab) Common Git Commands TakeLab 1 / 18 Outline 1 Introduction About Git Setup 2 Basic Usage Trees Branches

More information

Tutorial: GNU Radio Companion

Tutorial: GNU Radio Companion Tutorials» Guided Tutorials» Previous: Introduction Next: Programming GNU Radio in Python Tutorial: GNU Radio Companion Objectives Create flowgraphs using the standard block libraries Learn how to debug

More information

Getting Help from LinkedIn

Getting Help from LinkedIn Getting Help from LinkedIn via Trouble Tickets and Twitter Getting Help from LinkedIn via Trouble Tickets can be either very complicated or very simple. If you need help from LinkedIn, the LinkedIn trouble

More information

Chapter 1 Getting Started

Chapter 1 Getting Started Chapter 1 Getting Started The C# class Just like all object oriented programming languages, C# supports the concept of a class. A class is a little like a data structure in that it aggregates different

More information

Due on: May 12, Team Members: Arpan Bhattacharya. Collin Breslin. Thkeya Smith. INFO (Spring 2013): Human-Computer Interaction

Due on: May 12, Team Members: Arpan Bhattacharya. Collin Breslin. Thkeya Smith. INFO (Spring 2013): Human-Computer Interaction Week 6 Assignment: Heuristic Evaluation of Due on: May 12 2013 Team Members: Arpan Bhattacharya Collin Breslin Thkeya Smith INFO 608-902 (Spring 2013): Human-Computer Interaction Group 1 HE Process Overview

More information

CS 370 The Pseudocode Programming Process D R. M I C H A E L J. R E A L E F A L L

CS 370 The Pseudocode Programming Process D R. M I C H A E L J. R E A L E F A L L CS 370 The Pseudocode Programming Process D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Introduction At this point, you are ready to beginning programming at a lower level How do you actually write your

More information

Taking Control of Your . Terry Stewart Lowell Williamson AHS Computing Monday, March 20, 2006

Taking Control of Your  . Terry Stewart Lowell Williamson AHS Computing Monday, March 20, 2006 Taking Control of Your E-Mail Terry Stewart Lowell Williamson AHS Computing Monday, March 20, 2006 Overview Setting up a system that works for you Types of e-mail Creating appointments, contacts and tasks

More information

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read) 1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?

More information

Design Patterns

Design Patterns The Joel Test (Joel On Software) Do you use source control? SVN Can you make a build in one step? make or IDE Do you make daily builds? N/A Do you have a bug database? N/A or is it? Do you fix bugs before

More information

Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer?

Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? FAQ s Q: The barcode on the item is not scanning or the product is not found, what should I do to complete the transaction for my customer? First, scan the Scrubs and Beyond sticker ticket. If the sticker

More information

Programming. Dr Ben Dudson University of York

Programming. Dr Ben Dudson University of York Programming Dr Ben Dudson University of York Outline Last lecture covered the basics of programming and IDL This lecture will cover More advanced IDL and plotting Fortran and C++ Programming techniques

More information

MPI in ROMS. Kate Hedstrom Dan Schaffer, NOAA Tom Henderson, NOAA January 2011

MPI in ROMS. Kate Hedstrom Dan Schaffer, NOAA Tom Henderson, NOAA January 2011 1 MPI in ROMS Kate Hedstrom Dan Schaffer, NOAA Tom Henderson, NOAA January 2011 2 Outline Introduction to parallel computing ROMS grids Domain decomposition Picky details Debugging story 3 Parallel Processing

More information

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between

PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query

More information

Strategy. 1. You must do an internal needs analysis before looking at software or creating an ITT

Strategy. 1. You must do an internal needs analysis before looking at software or creating an ITT Strategy 1. You must do an internal needs analysis before looking at software or creating an ITT It is very easy to jump straight in and look at database software before considering what your requirements

More information

How to Improve Your Campaign Conversion Rates

How to Improve Your  Campaign Conversion Rates How to Improve Your Email Campaign Conversion Rates Chris Williams Author of 7 Figure Business Models How to Exponentially Increase Conversion Rates I'm going to teach you my system for optimizing an email

More information

MARKETING VOL. 1

MARKETING VOL. 1 EMAIL MARKETING VOL. 1 TITLE: Email Promoting: What You Need To Do Author: Iris Carter-Collins Table Of Contents 1 Email Promoting: What You Need To Do 4 Building Your Business Through Successful Marketing

More information

CSE 391 Lecture 9. Version control with Git

CSE 391 Lecture 9. Version control with Git CSE 391 Lecture 9 Version control with Git slides created by Ruth Anderson & Marty Stepp, images from http://git-scm.com/book/en/ http://www.cs.washington.edu/391/ 1 Problems Working Alone Ever done one

More information

Module 10A Lecture - 20 What is a function? Why use functions Example: power (base, n)

Module 10A Lecture - 20 What is a function? Why use functions Example: power (base, n) Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute of Technology, Madras Module 10A Lecture - 20 What is a function?

More information

Standards for Test Automation

Standards for Test Automation Standards for Test Automation Brian Tervo Windows XP Automation Applications Compatibility Test Lead Microsoft Corporation Overview Over the last five years, I ve had the opportunity to work in a group

More information

Volume. User Manual and Resource Guide

Volume. User Manual and Resource Guide Volume 1 User Manual and Resource Guide User Manual and Resource Guide Game Gurus United States Telephone: (415) 800-3599 Brazil Telephone: 55 84-8723-2557 Email: info@gamegurus.com Table of Contents What

More information

Tool Selection and Implementation

Tool Selection and Implementation Tool Selection and Implementation Paul Gerrard Systeme Evolutif Limited email: paulg@evolutif.co.uk http://www.evolutif.co.uk 2000 Systeme Evolutif Ltd Slide 1 Agenda What Can Test Execution Tools Do For

More information

SEER AKADEMI LINUX PROGRAMMING AND SCRIPTINGPERL 7

SEER AKADEMI LINUX PROGRAMMING AND SCRIPTINGPERL 7 SEER AKADEMI LINUX PROGRAMMING AND SCRIPTINGPERL 7 Hi everyone once again welcome to this lecture we are actually the course is Linux programming and scripting we have been talking about the Perl, Perl

More information

CS450: Structure of Higher Level Languages Spring 2018 Assignment 7 Due: Wednesday, April 18, 2018

CS450: Structure of Higher Level Languages Spring 2018 Assignment 7 Due: Wednesday, April 18, 2018 CS450: Structure of Higher Level Languages Spring 2018 Assignment 7 Due: Wednesday, April 18, 2018 Taken from assignments by Profs. Carl Offner and Ethan Bolker Part 1 - Modifying The Metacircular Evaluator

More information

Fully Optimize FULLY OPTIMIZE YOUR DBA RESOURCES

Fully Optimize FULLY OPTIMIZE YOUR DBA RESOURCES Fully Optimize FULLY OPTIMIZE YOUR DBA RESOURCES IMPROVE SERVER PERFORMANCE, UPTIME, AND AVAILABILITY WHILE LOWERING COSTS WE LL COVER THESE TOP WAYS TO OPTIMIZE YOUR RESOURCES: 1 Be Smart About Your Wait

More information

Mobile Usability Testing. August 2015

Mobile Usability Testing. August 2015 Mobile Usability Testing August 0 TASK: Search for trip you d like to go on. Find a hotel that suits your needs and make a payment ISSUE SEVERITY Critical Major Minor Site search Predictive Destination

More information

1 Getting used to Python

1 Getting used to Python 1 Getting used to Python We assume you know how to program in some language, but are new to Python. We'll use Java as an informal running comparative example. Here are what we think are the most important

More information

Consolidation and Review

Consolidation and Review Consolidation and Review Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors (Slides include materials from Python Programming: An Introduction to Computer Science, 2 nd edition,

More information

Floating Point. What can be represented in N bits? 0 to 2N-1. 9,349,398,989,787,762,244,859,087, x 1067

Floating Point. What can be represented in N bits? 0 to 2N-1. 9,349,398,989,787,762,244,859,087, x 1067 MIPS Floating Point Operations Cptr280 Dr Curtis Nelson Floating Point What can be represented in N bits? Unsigned 2 s Complement 0 to 2N-1-2N-1 to 2N-1-1 But, what about- Very large numbers? 9,349,398,989,787,762,244,859,087,678

More information

Debugging with gdb and valgrind

Debugging with gdb and valgrind Debugging with gdb and valgrind Dr. Axel Kohlmeyer Associate Dean for Scientific Computing, CST Associate Director, Institute for Computational Science Assistant Vice President for High-Performance Computing

More information

15 Sharing Main Memory Segmentation and Paging

15 Sharing Main Memory Segmentation and Paging Operating Systems 58 15 Sharing Main Memory Segmentation and Paging Readings for this topic: Anderson/Dahlin Chapter 8 9; Siberschatz/Galvin Chapter 8 9 Simple uniprogramming with a single segment per

More information

Examining the Code. [Reading assignment: Chapter 6, pp ]

Examining the Code. [Reading assignment: Chapter 6, pp ] Examining the Code [Reading assignment: Chapter 6, pp. 91-104] Static white-box testing Static white-box testing is the process of carefully and methodically reviewing the software design, architecture,

More information

Game keystrokes or Calculates how fast and moves a cartoon Joystick movements how far to move a cartoon figure on screen figure on screen

Game keystrokes or Calculates how fast and moves a cartoon Joystick movements how far to move a cartoon figure on screen figure on screen Computer Programming Computers can t do anything without being told what to do. To make the computer do something useful, you must give it instructions. You can give a computer instructions in two ways:

More information

Chapter 3 Memory Management: Virtual Memory

Chapter 3 Memory Management: Virtual Memory Memory Management Where we re going Chapter 3 Memory Management: Virtual Memory Understanding Operating Systems, Fourth Edition Disadvantages of early schemes: Required storing entire program in memory

More information

People Soft Financials R s Newsletters Report Review Resolve

People Soft Financials R s Newsletters Report Review Resolve People Soft Financials 8.9 3 R s Newsletters Report Review Resolve Check out what s new for PeopleSoft Financial 8.9 Users. PeopleSoft Financial Important Reminders Classes available from HR Training:

More information

Problem and Solution Overview: An elegant task management solution, that saves busy people time.

Problem and Solution Overview: An elegant task management solution, that saves busy people time. An elegant task management solution, that saves busy people time. Team: Anne Aoki: Storyboarding, design, user studies, writing Alex Anderson: User studies, design Matt Willden: Ideation, writing, user

More information

#12 - The art of UI prototyping

#12 - The art of UI prototyping 1 of 5 1/30/2007 12:02 PM #12 - The art of UI prototyping By Scott Berkun, November 2000 Even the brightest people make mistakes. This is especially true for teams of people. Somehow, as a project moves

More information

Everything you always wanted to know about Fonts*

Everything you always wanted to know about Fonts* Everything you always wanted to know about Fonts* (*but were afraid to ask) or.. "Using Mac fonts in the Avid Media Composer" The font system in the Mac isn't necessarily the easiest thing to understand.

More information

CS 390 Software Engineering Lecture 3 Configuration Management

CS 390 Software Engineering Lecture 3 Configuration Management CS 390 Software Engineering Lecture 3 Configuration Management Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved.

More information

Create your first workbook

Create your first workbook Create your first workbook You've been asked to enter data in Excel, but you've never worked with Excel. Where do you begin? Or perhaps you have worked in Excel a time or two, but you still wonder how

More information

Basics of Computation. PHY 604:Computational Methods in Physics and Astrophysics II

Basics of Computation. PHY 604:Computational Methods in Physics and Astrophysics II Basics of Computation Basics of Computation Computers store information and allow us to operate on it. That's basically it. Computers have finite memory, so it is not possible to store the infinite range

More information

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:

Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ece2049_labs.html You do not need to keep

More information

Programming with MPI

Programming with MPI Programming with MPI p. 1/?? Programming with MPI Miscellaneous Guidelines Nick Maclaren Computing Service nmm1@cam.ac.uk, ext. 34761 March 2010 Programming with MPI p. 2/?? Summary This is a miscellaneous

More information

CS354 gdb Tutorial Written by Chris Feilbach

CS354 gdb Tutorial Written by Chris Feilbach CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that

More information

How to develop a website content evaluation plan

How to develop a website content evaluation plan How to develop a website content evaluation plan Realistically, content evaluation isn t a top priority for website owners. Finding the time to produce new content is hard enough. But we are missing a

More information

Lecture 4: Memory Management & The Programming Interface

Lecture 4: Memory Management & The Programming Interface CS 422/522 Design & Implementation of Operating Systems Lecture 4: Memory Management & The Programming Interface Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken

More information

GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX DOWNLOAD EBOOK : GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX PDF

GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX DOWNLOAD EBOOK : GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX PDF Read Online and Download Ebook GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX DOWNLOAD EBOOK : GIT : BEST PRACTICES GUIDE BY ERIC PIDOUX PDF Click link bellow and free register to download ebook: GIT : BEST

More information

Lecturer: William W.Y. Hsu. Programming Languages

Lecturer: William W.Y. Hsu. Programming Languages Lecturer: William W.Y. Hsu Programming Languages Chapter 9 Data Abstraction and Object Orientation 3 Object-Oriented Programming Control or PROCESS abstraction is a very old idea (subroutines!), though

More information

Does Windows 10 Have Privacy Issues? February 11, Joel Ewing

Does Windows 10 Have Privacy Issues? February 11, Joel Ewing Does Windows 10 Have Privacy Issues? February 11, 2019 Joel Ewing Joel C. Ewing, Feb 2019 Permission for non-profit distribution and derivative works granted to The Bella Vista Computer Club Windows 10

More information

Assignments. Assignment 2 is due TODAY, 11:59pm! Submit one per pair on Blackboard.

Assignments. Assignment 2 is due TODAY, 11:59pm! Submit one per pair on Blackboard. HCI and Design Assignments Assignment 2 is due TODAY, 11:59pm! Submit one per pair on Blackboard. Today Paper prototyping An essential tool in your design toolbox! How do we design things that actually

More information

Additional Guidelines and Suggestions for Project Milestone 1 CS161 Computer Security, Spring 2008

Additional Guidelines and Suggestions for Project Milestone 1 CS161 Computer Security, Spring 2008 Additional Guidelines and Suggestions for Project Milestone 1 CS161 Computer Security, Spring 2008 Some students may be a little vague on what to cover in the Milestone 1 submission for the course project,

More information

Troubleshooting Maple Worksheets: Common Problems

Troubleshooting Maple Worksheets: Common Problems Troubleshooting Maple Worksheets: Common Problems So you've seen plenty of worksheets that work just fine, but that doesn't always help you much when your worksheet isn't doing what you want it to. This

More information

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment

More information

Performance Analysis of Parallel Scientific Applications In Eclipse

Performance Analysis of Parallel Scientific Applications In Eclipse Performance Analysis of Parallel Scientific Applications In Eclipse EclipseCon 2015 Wyatt Spear, University of Oregon wspear@cs.uoregon.edu Supercomputing Big systems solving big problems Performance gains

More information

Relay For Life Fundraising

Relay For Life Fundraising Relay For Life Fundraising The Art and Science of Asking for Donations Relay For Life Online Committee Table of Contents TABLE OF CONTENTS... 2 INTRODUCTION... 3 THE ART OR HUMAN SIDE OF ASKING... 4 THERE

More information

CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007

CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007 CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007 Course Web Site http://www.nps.navy.mil/cs/facultypages/squire/cs2900 All course related materials will be posted

More information

Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia

Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia The goal for this tutorial is to make sure that you understand a few key concepts related to programming, and that you know the basics

More information

TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE

TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE SUMMARY AND REFERENCE ACTG 313 TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE PREPARATION PHASE 1. Identification of the Need for a new Information System 2. Initial Feasibility Study (always flawed because

More information

Once you click on the Enterprise Icon found on your desktop you will be asked for your password. This Default Code Is

Once you click on the Enterprise Icon found on your desktop you will be asked for your password. This Default Code Is Once you click on the Enterprise Icon found on your desktop you will be asked for your password. This Default Code Is You should now see the main screen which is called the main screen or menu screen.

More information

MARK SCHEME for the May/June 2006 question paper 9691 COMPUTING

MARK SCHEME for the May/June 2006 question paper 9691 COMPUTING UNIVERSITY OF CAMBRIDGE INTERNATIONAL EXAMINATIONS GCE Advanced/Advanced Subsidiary Level MARK SCHEME for the May/June 2006 question paper 9691 COMPUTING 9691/03 Paper 3 (Written) Maximum raw mark 90 This

More information

CS390 Principles of Concurrency and Parallelism. Lecture Notes for Lecture #5 2/2/2012. Author: Jared Hall

CS390 Principles of Concurrency and Parallelism. Lecture Notes for Lecture #5 2/2/2012. Author: Jared Hall CS390 Principles of Concurrency and Parallelism Lecture Notes for Lecture #5 2/2/2012 Author: Jared Hall This lecture was the introduction the the programming language: Erlang. It is important to understand

More information

INTRODUCTION. In this guide, I m going to walk you through the most effective strategies for growing an list in 2016.

INTRODUCTION. In this guide, I m going to walk you through the most effective strategies for growing an  list in 2016. - Bryan Harris - INTRODUCTION In this guide, I m going to walk you through the most effective strategies for growing an email list in 2016. A lot of things are taught online that, quite honestly, just

More information

DDT: A visual, parallel debugger on Ra

DDT: A visual, parallel debugger on Ra DDT: A visual, parallel debugger on Ra David M. Larue dlarue@mines.edu High Performance & Research Computing Campus Computing, Communications, and Information Technologies Colorado School of Mines March,

More information

High-Performance Scientific Computing

High-Performance Scientific Computing High-Performance Scientific Computing Instructor: Randy LeVeque TA: Grady Lemoine Applied Mathematics 483/583, Spring 2011 http://www.amath.washington.edu/~rjl/am583 World s fastest computers http://top500.org

More information