Cloud cloud, cloud cloud! Cloud “cloud” Cloud Cloud cloud Cloud Cloud Cloudcloud Cloud cloud cloudcloud cloud cloud cloud. Cloud cloudcloud, cloud cloud.

Slides:



Advertisements
Similar presentations
Overview of Free/Open Source Software for Librarians Eric Goldhagen
Advertisements

Configuration management
Configuration management
Version Control System (Sub)Version Control (SVN).
CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Introduction to Linux Chapter 1. Operating Systems Operating System (OS) - most basic and important software on a computer Performs core tasks Organize.
1 CMPT 275 Software Engineering Revision Control.
Linux Introduction. Overview What is Unix/Linux? History of Linux Features Supported Under Linux The future of Linux.
G51FSE Version Control Naisan Benatar. Lecture 5 - Version Control 2 On today’s menu... The problems with lots of code and lots of people Version control.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
This chapter is extracted from Sommerville’s slides. Text book chapter
Linux Last Update Copyright Kenneth M. Chipps Ph.D. 1.
Review Security Hardening IPTables SELinux. Today Installations and updates – Rpm command and packages Apache “Issue Ownership”
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Software Engineering in Robotics Packaging and Deployment of Systems Henrik I. Christensen –
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring Mike Phenow.
By: Anuj Sharma. Topics covered:  GIT Introduction  GIT Benefits over different tools  GIT workflow  GIT server creation  How to use GIT for first.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 5.1 © Copyright IBM Corporation 2008 Unit 14 Basic.
ICT and the Law Mr Conti. Did you see anything wrong with that? Most people wouldn’t want that sort of information posted in a public place. Why? Because.
How to configure, build and install Trilinos November 2, :30-9:30 a.m. Jim Willenbring.
Outline Announcements: –HW II due today! –HW III on web CVS.
Expertsfromindia for Joomla Development. Introduction Joomla is an open source and free content management system (CMS) for publishing content on the.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
1 April 14, Starting New Open Source Software Projects William Cohen NCSU CSC 591W April 14, 2008.
1 Creative Innovation – Customer Satisfaction – Continual Quality Improvement Accessing and Building Asterisk SCF.
Moving Picture Metaphor
Free Software - Introduction to free software and the GPL Copyright © 2007 Marcus Rejås Free Software Foundation Europe I hereby grant everyone the right.
Why Fedora? Overview and Q&A Warren Togami Associate Software Engineer Red Hat, Inc. Southern California Linux Expo Feb 11-12, 2006.
And how to avoid it Tom “spot” Callaway Presented by Fedora Engineering Manager This presentation is licensed under a Creative Commons Attribution-Share.
An Introduction to. Where did Fedora come from? Boxed set every 6 months == Failed business model [
1 January 14, Evaluating Open Source Software William Cohen NCSU CSC 591W January 14, 2008 Based on David Wheeler, “How to Evaluate Open Source.
Karsten Wade Sr. Developer Community Mgr, Red Hat.
1 The World’s Most Popular Open Source Database MySQL and Fedora: A Developer's Overview Colin Charles Community Engineer
What is IronTcl? Binary distribution of Tcl/Tk.
What is F/LOSS? By Scot Henderson.
Process Overview.
Development Environment
Open Source Software Development
Installing Software Part 3
What are they? The Package Repository Client is a set of Tcl scripts that are capable of locating, downloading, and installing packages for both Tcl and.
How to open source your Puppet configuration
Version Control with Subversion
Selected topic in computer science (1)
A Simple Introduction to Git: a distributed version-control system
Software Packaging and Releasing
SPI external software build tool and distribution mechanism
Introduction to Fedoraproject
The Linux Operating System
A project for teaching new contributors
Unit 1.8 Ethical, legal, cultural and environmental concerns
Building a Career in FOSS
Create your Benner - intro
Embedded Linux Conference - April 2009
How to be a good upstream
THE BASICS.
FOSS 101 Sarah Glassmeyer Project Specialist Manager,
Chapter 2: The Linux System Part 1
Using Mach153A Lecture Tools
Get your ETL flow under statistical process control
Programming.
Office 365.
Document Types Technical Writing Document Types.
Git started with git: 2018 edition
Discussing an OVS/OVN Split
Open Source Development Challenges
Copyright and License.
Outline Announcements: Version control with CVS HW II due today!
Presentation transcript:

cloud cloud, cloud cloud! Cloud “cloud” Cloud Cloud cloud Cloud Cloud Cloudcloud Cloud cloud cloudcloud cloud cloud cloud. Cloud cloudcloud, cloud cloud cloud cloud cloud cloud. Cloud Cloud Cloud

1. Cloud Cloud Cloud 2. Cloud-cloud Cloud 3. Cloud!

Cloud-cloud Cloud

and how to avoid it Tom “spot” Callaway Presented by Fedora Engineering Manager This presentation is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License (“CC-BY-SA”). This presentation uses the Droid Sans ( and Comfortaa ( ) font families. If you want it to look nice, please install them. This is why you FAIL

Today's Topics 1. About the Speaker 2. Success 3. Points of FAIL

Linux Expo 1997

Maintainer of 350+ Fedora packages Maintaining Chromium browser packages for Fedora in an external repository Packaging third-party software in RPM format since 2001 Responsible for handling Fedora's Legal issues IANAL, but I work regularly with Red Hat Legal About the Speaker

Success

Users good, contributors better Distribution friendly software Most Linux users get their software from their distribution package set Healthy community Helping improve the project (not just the code) Users helping each other Regular releases What Does Success Mean

No FOSS project wants to fail but there is more to success than just working code. Summary

Points of FAIL

In 2009, I was feeling pain with Chromium To explain the pain to others, I started a list of the things they had done (or not done) The list grew to include things that I had seen other projects do Each item received a point score All aboard the FAILBOAT

Feel Free To Keep Score

The bigger it is, the harder it fails If the source code is more than 100MB [ +5 Points ] If the source code is more than 100MB when compressed [ +5 Points ] Size of Codebase

This is where the source lives (e.g. cvs, svn, bzr, git) There is no good reason for a FOSS project to not have public source control Nevertheless, if the project doesn't have it... [ +10 Points ] Source Control

If you have public source control, but... No Web Viewer [ +5 Points ] If it exists but doesn't work, you get the +5 Points too. No documentation on how to use it [ +5 Points ] Source Control Continued

If you've written your own source control system for this project (and the project is not a source control system) [ +30 Points ] If you don't actually use the existing public source control [ +50 Points ] Source Control Gone Wild

Code that doesn't build is usually worse than no code. If there is no documentation on how to build the project from source [ +20 Points ] If documentation exists but does not work [ +10 Points ] Building From Source

If your source is configured by... A handwritten shell script [ +10 Points ] Editing flat text config files [ +20 Points ] Manually editing code header files [ +30 Points ] If your source isn't configurable... [ +50 Points ] Configuring the Source

If your source builds using something that isn't GNU make [ +10 Points ] If your source only builds with third-party proprietary build tools [ +50 Points ] You wrote your own build tool for this code [ +100 Points ] Build Tools

If your source includes copies of other code projects it depends on [ +20 Points ] If your code cannot be built without first building the bundled code bits [ +10 Points ] If you have modified the bundled code bits [ +40 Points ] Bundling

Libraries If your code only builds static libraries [ +20 Points ] Your code can build shared libraries, but only unversioned ones [ +20 Points ] Your code does not try to use existing system libraries [ +20 Points ]

System Install If your code forces an install into /opt or /usr/local [ +10 Points ] Your code has no “make install” [ +20 Points ] Your code does not work outside of the source directory [ +30 Points ]

Code Oddities If your code... Uses Windows line breaks (“DOS format”) [ +5 Points ] Depends on specific compiler features [ +20 Points ] Depends on specific compiler bugs [ +50 Points ] Depends on Microsoft Visual Anything [ +100 Points ]

Communication If your project... Does not announce releases on a mailing list [ +5 Points ] Does not have a mailing list [ +10 Points ] Does not have a bug tracker [ +20 Points ] Does not have a website [ +50 Points ] Is sourceforge vaporware [ +100 Points ]

Releases (Versioning) Your project... Does not do sanely versioned releases (major & minor) [ +10 Points ] Does not version releases [ +20 Points ] Does not do releases [ +50 Points ] Only releases as attachments in web forum posts [ +100 Points ]

Releases (Format) Your releases are... Only in ZIP format [ +5 Points ] Only in OSX-compat ZIP [ +10 Points ] Only in RAR format [ +20 Points ] Only in ARJ format [ +50 Points ] Only in an encapsulation format that you invented [ +100 Points ]

Releases (Unpack) Your releases... Do not unpack into a an versioned top-level directory (e.g. glibc-2.4.2/ ) [ +10 Points ] Do not unpack into a top-level directory (e.g. glibc/ ) [ +25 Points ] Unpack into an absurd number of useless directories (e.g. home/john/doe/glibc- svn/tarball/glibc/src ) [ +50 Points ]

History (Forking) If your code is a fork of another project [ +10 Points ] If your primary developers were not involved with the parent project [ +50 Points ] Sometimes forking is necessary, but usually it isn't.

History (Age) Until open sourcing it, your code was proprietary for: 1-2 years [ +10 Points ] 3-5 years [ +20 Points ] 6-10 years [ +30 Points ] 10+ years [ +50 Points ] You cannot change the past, but you may be doomed to FAIL because of it.

Licensing Your code does not have per-file licensing [ +10 Points ] The licenses in your code conflict [ +20 Points ] Your code does not contain any notice of licensing intent [ +30 Points ] Your code doesn't include a copy of the license text [ +50 Points ] Your code doesn't have a license [ +100 Points ]

Copyright Assignment Contributing to your code requires explicit copyright assignment [ +100 Points ] If you're the FSF, you can -10 Points. There are only two legitimate (but poor) reasons for a copyright assignment requirement You intend to make the code proprietary. You intend to sell the code to someone else (or use it as “IP” to help sell your company) No healthy FOSS project should have these motivations

Documentation Your code doesn't have a Changelog [ +10 Points ] Your code doesn't have any documentation [ +20 Points ] Your website doesn't have any documentation [ +30 Points ]

FAIL METER 0 Points: Perfect! All signs point to success 5-25 Points: You're probably doing okay, but you could do better Points: Babies cry when your code is downloaded Points: Kittens die when your code is downloaded Points: You're riding the FAILBOAT 135+ Points: Your code should have its own reality TV show

What about the Linux Kernel? Doesn't it FAIL a lot on this stuff? Sure, but it is the exception, rather than the rule. Have you actually seen projects do these things? Yes. Every single one, although, not in one project. What was Chromium's score? 285 Yes, Google knows. No, Google doesn't care. FAQ

GTK (+5) Since I know someone will ask, QT is +50. Perl (+10) Only a few years ago, this number would have been higher, but they've been doing a lot of cleanups. :) Python (+20) Winners (big names)

The Open Source Way The Open Source Way is a handbook that distills years of knowledge about running open source projects I'm humbled that they've chosen to include my “Points of FAIL” system in that handbook You should definitely read it over (the whole handbook, not just my chapter)

Questions ? Contact: