Wednesday, April 29, 2009

MySQL exercise

From the MySQL downloads site the following files:

* world.sql.zip
* world-setup-en.pdf

world.sql.zip is a sample database containing data about countries of the world, their cities, and the languages spoken in each. world-setup-en.pdf contains the setup instructions.

Using your knowledge of SQL, determine the following information:

* What is the country code of the Philippines? Of Argentina? Of Nepal?
* What are the cities of the Philippines? Of New Zealand? Of Afghanistan?
* What country has the largest population? What country has the smallest population?
* Which countries speak German as their official language?
* What is the most populous city and which country is it located in?
* What is the most populous capital city? What is the least populous capital city?

Do some other queries. Make use of SQL joins to execute more complex queries.

You may want to refer to refman-5.0-en.html-chapter.tar.gz.

Wednesday, April 15, 2009

Presentations for Summer Classes

  • Gnome - Paul Jims Cabahug
  • KDE - Richard Tamala Jr.
  • OpenOffice.org - Joshua Nadera
  • The GIMP - Bonn Louie Arsenal
  • Inkscape - Michael Shem Labor
  • Perl - Hazel Joie Diez
  • Python - Nichelle Andrea Lamoste
  • PHP - Jaye Mempin
  • Ruby - Moises Ayag
  • MYSQL - James Vales
  • PostgreSQL - Darlene Cang
  • DB Designer 4 / MYSQL Workbench - Andrei Elizaga
  • WordPress - Edle Ranolo
  • Drupal - Jzel Ivy Tejada
  • Joomla - Rhee Francis Jinon
  • Moodle - Cindy Mae Paulo
  • ModX - Ronil Rufo
  • PHPBB - Andrew Pangilinan
  • PHPMyAdmin - Regan Labadia
  • Zope - Glenn Paul Yee
  • CakePHP - Irene Lo
  • Ruby on Rails - Angelie Abong
  • OpenBravo - Karl Manlapus
  • osCommerce - Alisa Abrasaldo
  • TinyERP - Mahendra Dwiprasetyo
  • Alfresco - Ingrid Cadano
  • Knowledge Tree - Anthea Monica Dela Cruz
  • Asterisk - Lloyd Belleza
  • Wine - Lorenzo Penetrante
  • Synfig - Majeed Mocamad
  • Blender - Jayrik De Guzman

Wednesday, December 3, 2008

Notes on Gnome

  • Gnome is a graphical desktop environment.
  • As a desktop environment, it is independent of the underlying operating system. Therefore, it can run on any operating system; conversely, the operating system can also use another desktop environment.
  • GNOME used to be an acronym which stood for GNU Network Object Model Environment; today, it does not have any specific meaning. It is just written as Gnome instead of GNOME.
  • Gnome's underlying toolkit is GTK+.
  • Gnome project started in August 1997 under Miguel de Icaza and Federico Mena as an alternative to the earlier KDE project; members of the GNU project were concerned with KDE's dependence on the non-free Qt library. In contrast, GTK+ is licensed under the LGPL.
  • Gnome libraries are licensed under the LGPL; Gnome applications are licensed under GPL.
  • Some useful Gnome applications:
    • Brasero - CD burning application
    • Cheese - webcam application
    • dia - diagramming tool
    • Ekiga - VoIP and videoconferencing application
    • Evince - document viewer
    • Evince - mail client and personal information manager
    • Eye of Gnome - image viewer
    • File Roller - archive creator and extractor
    • gedit - text editor
    • gnome keyring manager - password manager
    • Gnome Terminal - terminal emulator
    • Nautilis - file manager
    • Sound Juicer - CD ripper
    • Totem - media player

Open Source Business Model is "broken"

From BusinessWeek comes a contrarian view of open source business models...from the former head of the Open Source Development Labs.

The main points of the article:

  • Companies cannot make money from support and services alone because open source software is so reliable.
  • Software has become a commodity. Open source is merely the means, not the end.
  • Collaboration results in great software that everyone can use.


From reading the article, I take it that what the author means is this: that the old business models that made the rise of companies like Microsoft and Oracle are no longer viable with open source.

Tuesday, December 2, 2008

Free Software vs Open Source Software

Although they're mentioned in the same breath, Free Software does not equal Open Source Software. There are fundamental differences in their philosophies, though they may sometimes have coincident aims. The presentation Free Software vs Open Source Software examines each movement in their proper context.

GIMP and OpenOffice presentations

Princess and Elbert have uploaded their presentations, which are on The GIMP and OpenOffice.org, respectively. Please read and review.

Tuesday, November 25, 2008

Software Licenses presentation

Uploaded a presentation on software licenses that examines the distinctions between proprietary software licenses and open source software licenses. Examples covered are the Windows Vista Business license and the GPLv2.

Open Source Communities

Open source projects revolve around communities -- communities of developers and users. These communities are typically loosely organized, and they consist of contributors from all over the world who communicate via the Internet. It is through the Internet that these contributors exchange source code, design ideas, documentation, and general help.

Major open source projects will have their dedicated Internet community resources. Some, like the Linux kernel development, make use of mailing lists and revision control systems; others, like Joomla, may make use of bulletin-board style forums.

Smaller projects may find a home in a forge, a site that offers hosting for source code, downloads, and mailing lists. Some of the major forges:

SourceForge: possibly the biggest currently in operation; has offered free access to hosting and tools for developers of free software / open source software for several years, and has become well-known within such development communities for these services.

GNU Savannah: a project of the Free Software Foundation, which serves as a collaborative software development management system for Free Software projects. Savannah currently offers CVS, GNU arch, mailing list, web hosting, file hosting, and bug tracking services. Savannah runs Savane, which is based on the same software as that used to run the popular SourceForge portal.

GNA: operated by the French chapter of the FSF; only accepts projects under the GPL

Alioth: a GForge system set up by the Debian project for development of free software and free documentation, especially software or documentation to do with Debian.

BerliOS: a German government-funded community designed to bring developers and users of open source software together

JavaForge.com: a community and hosting portal for open source Java projects

RubyForge: a community dedicated to projects related Ruby programming language

Monday, November 24, 2008

Free Software and the Law of Diminishing Returns

Found this good essay and analysis on open source development. It takes a closer look at the virtues of open source in light of Brooks' Law.

Brook's Law - specifically - is that adding people to a late project willy-nilly will only make it later. Brooks derived this law from his own personal experience as a project manager on IBM's original OS/360 project. In his book, The Mythical Man-Month, Brooks pointed out the fallacy of simply throwing more "man-hours" (labour units) at the project in order to deliver it earlier.

According to McConnell, Brook's analysis of his own laws suggests an exception to the rule. " ... if a project's tasks are partitionable, you can divide them further and assign them to ... people who are added late to the project."

In short, we can summarise Brook's Law in two parts:

1. If, in a (late) project, we can further subdivide tasks efficiently, we can add extra programmers or software engineers without penalty.
2. Otherwise, if tasks cannot be easily or effeciently subdivided, there will be a penalty for adding extra programmers or software engineers.

Additional Reading Material for the week of November 24

Just uploaded additional reading material which will provide background information on the business and development models around open source.

Tuesday, November 18, 2008

How to do the presentation

Presentation assignments have been posted.

Here's what I want from the presentations:
  • What is the open source project about? What does it do? (Describe the project in detail. Give screenshots.)
  • Why is this project important?
  • Who are the current leaders of the project? What does the organization of the project look like?
  • How many users does this project have?
  • Under what open source license is the project?
  • Where and how did it get started?
  • How is the project being funded?
  • How do you get end-user support for this project?
Prepare around 10 slides, enough for a 20-minute presentation.

Presentation Assignments

Gnome Lidres E
KDE Cayanong J
OpenOffice.org Sarabia E
The GIMP Panes P
Inkscape Lo P
Java Babao R
Perl Cagampang M
Python Clar Q
Ruby Geguinto M
Smalltalk Baula G.
MySQL Insong C
PostgreSQL Lao S
Apache Web Server Veruasa M
PHP Bitas R
Wordpress Lagbas J
Drupal Epe F
Joomla Llego A
Plone Isulat G
Zope NiƱal J
Zend Labadan R
CakePHP Merecido P
Ruby on Rails Penetrante M
Compiere / Adempiere Lovitos A
SugarCRM Palanca S
OpenBravo Aserios J
Apache Open for Business Herrera S
TinyERP Nuenay J
Alfresco Adarna A
KnowledgeTree Dado G
Asterisk Lagahit E
Ekiga Oroc C
Wine Perez D
America's Army Ang M
Cube2 / Nexuz Tan E
Synfig Macadaeg M
Blender S. Jalnaiz

Guide to open source for SMEs

The primary text for my lectures in this class will be the FLOSSMETRICS/OpenTTT guides

This guide (developed in the context of the FLOSSMETRICS and OpenTTT projects) present a set of guidelines and suggestions for the adoption of open source software within SMEs, using a ladder model that will guide companies from the initial selection and adoption of FLOSS within the IT infrastructure up to the creation of suitable business models based on open source software.

This is the third edition of the guide; the guide is distributed under a CC-attribution-sharealike 3.0 license. The author is Carlo Daffara.


A PDF copy of the guide is available.

IT312 tentative syllabus

Week of

Lecture

Lab

November 18*

Analysis of the success of Linux

Open source communities

Introduction to Ubuntu

Customizing Ubuntu

Internet apps in Ubuntu

Linux command-line

November 25*

Free Software / Open Source Software

Licenses

Business Models

Graphics with the GIMP and Inkscape

Sound editing with Audacity

December 2

Gnome

KDE

OpenOffice.org

The GIMP

Inkscape

Setting up a LAMP environment

Deploying Wordpress

Deploying Joomla

Deploying Drupal

HTML and CSS exercises

December 9

Java

Perl

Python

Ruby

Smalltalk

Setting up and using Eclipse

Setting up and using Geany

Programming challenges

December 16

Mid-term Exams

No laboratory / More programming challenges

January 6

MySQL

PostgreSQL

Apache Web server

PHP

PHP application development 1

January 13

Wordpress

Drupal

Joomla

Plone

PHP application development 2

January 20

Zope

Zend

CakePHP

Ruby on Rails

PHP application development 3

January 27

Compiere/Adempiere (2)

OpenBravo

Apache Open for Business

TinyERP

Ruby on Rails application development 1

February 3

Alfresco

KnowledgeTree

Asterisk

Ekiga

Ruby on Rails application development 2

February 10

Wine

America's Army

Cube 2 / Nexuiz

Armagetron

Ruby on Rails application development 3

February 17*

Open source software selection process

Summary

Gaming on Linux

February 24

Final Exams

No laboratory

Presentation: A Brief History of Linux


Presentation on the history of Linux available on the mailing list.

Sunday, November 16, 2008

Links on Linux History

Lecture outline: a soft introduction to open source

  • Comparison of Windows application stack and Linux application stack
    • Most-used Windows applications: MS Office, Photoshop, Internet Explorer, messaging client, antivirus
    • Linux equivalents: OpenOffice.org, The GIMP, Firefox, Pidgin
    • End-user cost for Windows stack: ~P78,000 (USD1,500); end-user cost for Linux: free
    • Advantages of Linux: faster to install, important applications already in place, low-cost
    • Changing landscape of computer industry: more free and open source software
  • How can it be free?
    • Discussion of "free beer" and "free speech" concepts
    • Yes, it's "free beer"-free, but more important is the "free speech"-free
    • Allows people to package Linux with applications in distributions
    • Most free and open source software as emanating from universities and hobbyists
    • Despite the counter-intuitive nature, is actually sustainable model -- just look at the results
  • The nature of open source
    • Source code is available, can be modified
    • Illustration: Stallman's cookie recipe sharing example
    • Read Eric S. Raymond's Cathedral and the Bazaar


Additional resources:
Richard Stallman honorary degree speech at Pavia

Thursday, November 13, 2008

Guide questions for The Cathedral and the Bazaar

Read "The Cathedral and the Bazaar" and use the following guide questions:

  1. What are the 19 lessons that Eric S. Raymond learned in his study of Linux development and his own work with fetchmail?
  2. In the bazaar model, what are the primary motivations for developers to participate in a project?
  3. Explain the statement: "Given enough eyeballs, all bugs are shallow."
  4. What is the Delphi effect?
  5. What is the central observation in Fred Brooks' The Mythical Man-Month?
  6. What does this statement mean: "When your language is nowhere near Turing-complete, synactic sugar can be your friend?"
  7. How was the Internet instrumental in the development of open source?
  8. What are the functions of software project management? How do they apply in the open source development model?

Answer any three questions from questions 2-8 and submit on a 1/2-sheet of yellow pad. Assignment due on Tuesday, Nov. 18.

The Cathedral and the Bazaar

"The Cathedral and the Bazaar" is the seminal essay on open source software engineering methods, written by Eric S. Raymond in 1997. It delves into the differences of heavily structured software development vs. the more flexible and freewheeling smaller teams typically present in open source projects.

Assignment for November 18: read The Cathedral and the Bazaar.

Welcome

Welcome to the blog for the IT312/IT312C class of Ateneo de Davao University for the second semester of SY2008-2009.

This is the web site for assignments, assigned reading materials, and supplementary notes.

About this blog

This is the work blog for the IT312 Open Source Technologies class of Ateneo de Davao University, 2nd semester of SY2008-2009. The class is a survey of open source methodologies, communities, licenses, and business models.

A mailing list is also available (currently restricted to class members only.)

Latest Posts