Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See

Slides:



Advertisements
Similar presentations
1 Copyright © 2002 Pearson Education, Inc.. 2 Chapter 1 Introduction to Perl and CGI.
Advertisements

Usage of the memoQ web service API by LSP – a case study
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Welcome to the Plant Breeding and Genomics Webinar Series Today’s Presenter: Dr. Heather Merk Presentation & Supplemental Files:
Slicing Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Server-Side vs. Client-Side Scripting Languages
ACTIVE X By Ethan Huang. OUTLINE What is ActiveX? Component of ActiveX Why ActiveX? ActiveX and Java Security Issue.
Feb. 15, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #10 Thursday, Feb. 15, 2001.
1 VRML As a Collaborative Design Tools For Architectural Students Chris Yeung, John Bradford, Guyver Cheng, Eric So.
CS 497C – Introduction to UNIX Lecture 3: Inside UNIX Chin-Chih Chang
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall 1 Building Applications.
HTML Comprehensive Concepts and Techniques Intro Project Introduction to HTML.
Lecturer: Ghadah Aldehim
Mechanics Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
INTRODUCTION TO WEB DATABASE PROGRAMMING
Lecture 1 Introduction to Java MIT- AITI 2004 What is a Computer Program? For a computer to be able to do anything (multiply, play a song, run a word.
Linux Operations and Administration
Biostatistics, statistical software II. A brief survey of statistical program systems Krisztina Boda PhD Department of Medical Informatics, University.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Linux Last Update Copyright Kenneth M. Chipps Ph.D. 1.
Applications Software. Applications software is designed to perform specific tasks. There are three main types of application software: Applications packages.
Open Web App. Purpose To explain Open Web Apps To explain Open Web Apps To demonstrate some opportunities for a small business with this technology To.
PHP TUTORIAL. HISTORY OF PHP  PHP as it's known today is actually the successor to a product named PHP/FI.  Created in 1994 by Rasmus Lerdorf, the very.
3 3 3 CHAPTER System Software. 3 Objectives By the end of this lecture, you should know how to: –Describe the differences between system software and.
Introduction to Alice Alice is named in honor of Lewis Carroll’s Alice in Wonderland.
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Section 2 Software.
Introduction to PHP and MySQL Kirkwood Center for Continuing Education By Fred McClurg, © Copyright 2015, Fred McClurg, All Rights.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
Browsing Directories Copyright © Software Carpentry and The University of Edinburgh This work is licensed under the Creative Commons Attribution.
Sept. 18, 2003CS WPI1 CS 509 Design of Software Systems Lecture #3 Thursday, Sept. 18, 2003.
Pipes and Filters Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
© Prepared By: Razif Razali 1 TMK 265: UNIX SYSTEM CHAPTER ONE – UNIX PHILOSOPHY.
Selenium Web Test Tool Training Using Ruby Language Discover the automating power of Selenium Kavin School Kavin School Presents: Presented by: Kangeyan.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
RUBRIC IP1 Ruben Botero Web Design III. The different approaches to accessing data in a database through client-side scripting languages. – On the client.
Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Introduction Copyright © Software Carpentry This work is licensed under the Creative Commons Attribution License See
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
Finding Things Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
What is Java? Jonathan Sleeper. What is Java? JavaScript and Java – NOT the same! Simple programming language which defines the behavior of elements on.
Web Design Terminology Unit 2 STEM. 1. Accessibility – a web page or site that address the users limitations or disabilities 2. Active server page (ASP)
This slide deck is for LPI Academy instructors to use for lectures for LPI Academy courses. ©Copyright Network Development Group Module 01 Introduction.
Patterns Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See
Unit 3 Computer Systems. What is software? unlike hardware it can’t be physically touched it’s the missing link between the computer hardware and the.
Data mining in web applications
A LECTURE NOTE.
LibreOffice Brandon Werner
Software Carpentry Workshop University of Nebraska – Lincoln Holland Computing Center Instructors: Dr. Jingchao Zhang, Natasha Pavlovikj, Carrie Brown.
JavaScript/ App Lab Programming:
Chapter 1 Introduction to HTML
Computer Software: Programming
Daniel Henry January 30, 2002 CS 4900
Introduction to Programming the WWW I
R Programming.
Chapter 4 Computer Software.
Do you know this browser?...
Design and Programming
CSE 303 Lecture 1 introduction to Linux/Unix environment
Overview Unit testing Building Version control.
Version Control Introduction Copyright © Software Carpentry 2010
Understanding Linux and the BASH shell v
R Statistical Language
Slides prepared by Sarah Benis Scheier-Dolberg
Intro Project Introduction to HTML.
System Administration (LTAT )
Presentation transcript:

Introduction Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See for more information. Automated Builds

Introduction A typical working day

Automated BuildsIntroduction A typical working day Re-draw Figure 8

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Recompile stats program

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Recompile stats program Update Java

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space

Automated BuildsIntroduction A typical working day Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space...shave the yak...

Automated BuildsIntroduction Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space

Automated BuildsIntroduction Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space task

Automated BuildsIntroduction Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space task dependencies

Automated BuildsIntroduction Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space task dependencies Re-draw Figure 8 Recalculate data Re-install graph tool Recompile stats program Update Java Free up disk space

Automated BuildsIntroduction This pattern arises frequently

Automated BuildsIntroduction This pattern arises frequently New data collected? Recalculate statistics

Automated BuildsIntroduction This pattern arises frequently Source files changed? Recompile program New data collected? Recalculate statistics

Automated BuildsIntroduction This pattern arises frequently Source files changed? Recompile program New data collected? Recalculate statistics New content written? Update web site

Automated BuildsIntroduction Hard or impossible to keep track of:

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't "Anything worth repeating is worth automating."

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't "Anything worth repeating is worth automating." So use a build manager to automate the process

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't "Anything worth repeating is worth automating." So use a build manager to automate the process Describe dependencies in a build file

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't "Anything worth repeating is worth automating." So use a build manager to automate the process Describe dependencies in a build file Along with commands used to update things

Automated BuildsIntroduction Hard or impossible to keep track of: – what depends on what – what's up-to-date and what isn't "Anything worth repeating is worth automating." So use a build manager to automate the process Describe dependencies in a build file Along with commands used to update things Build manager does the rest

Automated BuildsIntroduction Most widely used build manager is Make

Automated BuildsIntroduction Most widely used build manager is Make Note: "most widely used", not "most popular"

Automated BuildsIntroduction Most widely used build manager is Make Note: "most widely used", not "most popular" Invented by a student intern at Bell Labs in 1975

Automated BuildsIntroduction Most widely used build manager is Make Note: "most widely used", not "most popular" Invented by a student intern at Bell Labs in 1975 Has grown into a little programming language

Automated BuildsIntroduction Most widely used build manager is Make Note: "most widely used", not "most popular" Invented by a student intern at Bell Labs in 1975 Has grown into a little programming language A very cryptic little language, without a debugger...

Automated BuildsIntroduction Most widely used build manager is Make Note: "most widely used", not "most popular" Invented by a student intern at Bell Labs in 1975 Has grown into a little programming language A very cryptic little language, without a debugger......that requires an understanding of the Unix shell

Automated BuildsIntroduction GNU Make is fast, free, and well-documented

Automated BuildsIntroduction GNU Make is fast, free, and well-documented And many other tools know how to work with it

Automated BuildsIntroduction GNU Make is fast, free, and well-documented And many other tools know how to work with it Look at basics and a few advanced features

Automated BuildsIntroduction GNU Make is fast, free, and well-documented And many other tools know how to work with it Look at basics and a few advanced features Companion lecture explores SCons

Automated BuildsIntroduction GNU Make is fast, free, and well-documented And many other tools know how to work with it Look at basics and a few advanced features Companion lecture explores SCons Java users should look at Ant

August 2010 created by Greg Wilson Copyright © Software Carpentry 2010 This work is licensed under the Creative Commons Attribution License See for more information.