Google Tech Talk
December 7, 2009
ABSTRACT
CMake/CPack/CTest/CDash Open Source Tools to Build Test and Deploy C++ Software, presented by Bill Hoffman.
CMake has been in development since 1999, and has been used on several large open source projects such as ITK, VTK, ParaView, VXL, Trilinos and CMake itself. Further, KDE, one of the largest OSS projects has adopted CMake, demonstrating that CMake is capable of successfully supporting complex and large software systems. Hence CMake usage is growing rapidly with thousands of daily downloads and inclusion in several Linux distributions.
Unlike many build systems, CMake is designed to be used in conjunction with native build tools enabling developers to use makefiles, Kdevelop projects, Xcode projects, and even MS Visual Studio projects. A simple input language (included in a CMakeLists.txt file) is used to specify which files to build and what types of system introspection tests need to be performed to build the software. A persistent cache file is used to store the system information and avoid the need for user-defined environment variables.
In addition to building software, CMake provides a testing client (CTest) that integrates with the web-based CDash testing server. This server creates dashboards that build a snapshot of the software at a given time. This is critical to cross-platform development since often a change on one platform fails to compile on another one. The testing system provides for nightly builds which use a copy of the software at a specific time each night, experimental tests that can be used to share build results with other developers before committing source code, and continuous build results that test the build each time files are committed to the source control system.
Once the software is built and tested, the CPack tool can be used to package the software. CPack works similar to CMake in that it generates package information for native packaging tools. NSIS, RPM, OSX packages self extracting tar.gz, tar.gz, tar.zip can all be created. CPack information is included as a simple extension to the CMake build files.
This talk will cover the history and features of CMake, CTest, CDash and CPack in the context of a integrated development environment.
Mr. Hoffman is currently Vice President and CTO for Kitware, Inc. He is a founder of Kitware and has been part of the management team since 1999. Bill has 20 years of experience with large C++ systems. He is a lead architect of the CMake cross-platform build system and co-author of the Mastering CMake book. Mr. Hoffman is also involved in the development of the Kitware Quality Software Process and CDash, the software testing server. Mr. Hoffman developed the C++/COM wrapping technology used to create Kitware’s ActiViz product line. He has also made major contributions to VTK, ITK and ParaView. As CTO for Kitware, he guides the implementation and development of large-scale computing solutions, and oversees computer infrastructure decisions, including developing Kitware’s E-Store technology.
Mr. Hoffman received a B.S in Computer Science from the University of Central Florida, and an M.S in Computer Science from Rensselaer Polytechnic Institute (RPI). He is a graduate of the GE Software Technology Program. Prior to joining Kitware he spent nine years at GE’s Global Research Center working in the Computer Vision Group. As an expert in C++ and object-oriented programming, he has planned and taught several graduate level courses at RPI, as well as a course on object-oriented programming at New York University. Mr. Hoffman has been an invited speaker at national and international conferences, such as OSCON, FOSDEM and KDE Developer’s Conferences.
Duration : 1:8:4
Read the rest of this entry »
The Computer Information Systems curriculum emphasizes a systems approach to problem solving and evolves with the changing needs of business and technology. Students examine technical challenges within the context of the work environment. They learn the importance of being good communicators, team players as well as the skills needed to respond to the complexities of evolving hardware and software.
Duration : 0:3:25
Read the rest of this entry »
http://tinyurl.com/esri-careers ESRI designs and develops the world’s leading geographic information system (GIS) technology. Many people are drawn to ESRI because of its outstanding technical reputation, unique culture, and the opportunity to work with smart, creative people in an open, collaborative environment. Employees at ESRI are passionate about their work because they know their opinions and innovations make a difference in our society. Our technology helps fight forest fires, determine new national boundaries during peace negotiations, find promising sites for new facilities, support optimal land-use planning, route emergency vehicles, monitor climate change, contain oil spills, and perform countless other vital tasks.
GIS is a collaboration of integrated technologies for sharing geographic knowledge. GIS allows us to view, understand, question, interpret, and visualize data in many ways that reveal relationships, patterns, and trends in the form of maps, globes, reports, and charts. It helps us answer questions and solve problems by looking at data in a way that is quickly understood and easily shared. Finally, GIS technology can be integrated into any enterprise information system framework and must constantly evolve to meet the changing needs of business, industry, government, and education. At ESRI, we are ready for these changes. (Visit http://tinyurl.com/esri-gis for more info.)
ESRI employs thousands of skilled workers who work closely with hundreds of business partners and international distributors and tens of thousands of users. Each one makes a unique contribution to this remarkable technology — each one makes a difference.
Map out your new career with ESRI today. Create an account on our careers page and tell us about yourself and the challenge you are seeking. Completing and maintaining your personal profile will give you more visibility to ESRI recruiters when they are searching for potential candidates for open positions.
Duration : 0:4:15
Read the rest of this entry »
As part of the XVII International AIDS Conference in Mexico City, the Center for Global Development addressed these issues in a two-part panel discussion on How are HIV/AIDS donors interacting with national health systems? The satellite event, held Wednesday, August 6th, 2008 in Session Room 5 of Centro Banamex, featured Nandini Oomman, the Director of the HIV/AIDS Monitor at the Center for Global Development and was moderated by J. Stephen Morrison, the Executive Director of the HIV/AIDS Task Force and Director of the Africa Program at Center for Strategic and International Studies. Oomman presented a new paper from CGD’s HIV/AIDS Monitor which investigates how AIDS programs interact with three particular components of the health system: the health information system, the supply chain system, and human resources for health.
Duration : 0:5:48
Read the rest of this entry »
As part of the XVII International AIDS Conference in Mexico City, the Center for Global Development addressed these issues in a two-part panel discussion on How are HIV/AIDS donors interacting with national health systems? The satellite event, held Wednesday, August 6th, 2008 in Session Room 5 of Centro Banamex, featured Nandini Oomman, the Director of the HIV/AIDS Monitor at the Center for Global Development and was moderated by J. Stephen Morrison, the Executive Director of the HIV/AIDS Task Force and Director of the Africa Program at Center for Strategic and International Studies. Oomman presented a new paper from CGD’s HIV/AIDS Monitor which investigates how AIDS programs interact with three particular components of the health system: the health information system, the supply chain system, and human resources for health.
Duration : 0:5:48
Read the rest of this entry »
University of London External System: an overview – distance learning opportunities & flexible study options
Duration : 0:3:58
Read the rest of this entry »
Professor Nunamaker is a Regents Professor, holds the Soldwedel Chair of Management Information Systems, is the Director of the Center for Management of Information (CMI) at the Eller College of Management. Using software modules, Dr. Nunamaker has devised a specialized computer language to allow computer technology to tap into human thinking and behavior and to apply this to software programs that allow meeting participants to express ideas, feelings and thoughts freely and without recrimination, all the while guiding the process for which the meeting was called to fruitful conclusions. Using his software system through Decision Making Laboratories, meetings now become organized, productive, thoughtful and culminate in actionable items in record time. In addition, Dr. Nunamaker has recently turned his attention to the use of specially developed software-hardware systems to detect deception in interrogation settings. Using scientifically based analysis of human behavior, his Deception Detection program detects lying using remote measurements of psychophysiological changes in blood pressure, pulse rate, eye gaze, body language, other parameters that predict deception at a very high level of confidence.
Jay Nunamaker, PhD, Regents Professor of Management Information Systems, Eller School of Management. Innovation Day at The UA celebrates technology development and commercialization by highlighting the research achievements of students, staff and faculty.The Technology Innovation Awards recognize University of Arizona researchers for achievements in translating original ideas from the laboratory to the marketplace.
Duration : 0:6:35
Read the rest of this entry »
http://tinyurl.com/esri-careers ESRI designs and develops the world’s leading geographic information system (GIS) technology. Many people are drawn to ESRI because of its outstanding technical reputation, unique culture, and the opportunity to work with smart, creative people in an open, collaborative environment. Employees at ESRI are passionate about their work because they know their opinions and innovations make a difference in our society. Our technology helps fight forest fires, determine new national boundaries during peace negotiations, find promising sites for new facilities, support optimal land-use planning, route emergency vehicles, monitor climate change, contain oil spills, and perform countless other vital tasks.
GIS is a collaboration of integrated technologies for sharing geographic knowledge. GIS allows us to view, understand, question, interpret, and visualize data in many ways that reveal relationships, patterns, and trends in the form of maps, globes, reports, and charts. It helps us answer questions and solve problems by looking at data in a way that is quickly understood and easily shared. Finally, GIS technology can be integrated into any enterprise information system framework and must constantly evolve to meet the changing needs of business, industry, government, and education. At ESRI, we are ready for these changes. (Visit http://tinyurl.com/esri-gis for more info.)
ESRI employs thousands of skilled workers who work closely with hundreds of business partners and international distributors and tens of thousands of users. Each one makes a unique contribution to this remarkable technology — each one makes a difference.
Map out your new career with ESRI today. Create an account on our careers page and tell us about yourself and the challenge you are seeking. Completing and maintaining your personal profile will give you more visibility to ESRI recruiters when they are searching for potential candidates for open positions.
Duration : 0:3:32
Read the rest of this entry »