Wednesday, April 23, 2014

That could be me in X years!

On Feburary 12th, the Computer Science department at the College of Charleston hosted an alumni symposium. The symposium consisted of alumni, ranging from freshly graduated to some who have been in the workforce for more than a couple of year, explaining what they have done and what they are currently doing after college. After each alumni had gone up and given their spiel on working in computer science jobs, all the cuurent undergraduates who attended the symposium where able to ask questions to the panel of alumni.

Meeting Charleston

CS First Volunteer Rally:

For this 462 class, each student has to go out and attend a meeting outside the college that pertains to the computer science world. For my write up I was going to talk about the CS First volunteer rally that I attended.
CS First is a 2-year pilot focused on increasing student access and exposure to Computer Science (CS) Education through after school and summer programs. The goal is to build the CS Education capacity of regional South Carolina K-12 schools. These after school programs are developed and run by Google CS Teaching Fellows in conjunction with volunteers like you. -CSfirst.net
The volunteer rally demonstrated to any interested attendees what the CS First program was about. It also went over what each of us would due if we decided to apply to become a volunteer guru and help lead one of the their after-school programs.

Monday, April 14, 2014

Chapter 7 Exercises

Software Development: An Open Source Approach

Chapter 7: Exercises 1,2,3 

7.1

The dbPersons.php table types all of the data as TEXT. birthday could be typed as a DATE. start_date could be typed as a DATE. This violates criterion 5. It also violates criterion 6 because it doesn't declare a primary key. That means that a single record could be duplicated. If you were to update a duplicated record, only the "first" record would be duplicated and you would have conflicting records.

7.2

The new get_shift_name_from_id($id)  takes care of the checking for the special cases of a “night shift” or “guest chef” and will not call get_shift_start($id) or get_shift_end($id) if either of these special cases are true. Therefore the checks for these special cases in get_shift_start($id) and get_shift_end($id) can be removed from the code:


function get_shift_start($id) {
    if (substr($id, 11, 1) == "-")
       return substr($id, 9, 2);
    else
       return substr($id, 9, 1);
}


function get_shift_end($id) {
    if (substr($id, 11, 1) == "-")
       return substr($id, 12, 2);
    else
       return substr($id, 11, 2);
}

Thursday, March 20, 2014

Bug Juice

With any Software Development project (open-source or closed), the project team will eventually run into bugs within their project. A bug in terms of software is not an insect but an error, flaw, failure, or fault in a computer program or system. The reason the term "bug" is used in computer science (even though "bug" has been used in engineering to describe errors and faults) is because one of the earliest cases of an error within a computer system was actually caused by real bug/insect. In 1947 Operators at the Harvard Faculty at the Computation Laboratory traced an error in the Mark II to a moth trapped in a relay, thus coining the term bug. This bug was carefully removed and taped to the log book.

Reflections on Open Source in Today's World

The Open Source community is HUGE and open source related projects/ideas/news are being shared all across the web. With the Internet being so vast it is always good to have a hub to aggregate all these open source stuff into one convenient website, and that's where Opensource.com comes into play.
Opensource.com is an online publication focused on how open source is applied to different areas including business, education, government, health, law and other disciplines of life. 
Our goal is to further the open source way by sharing the open source movement. Our community of readers is made up of those who believe that open participation and sharing can tackle the business, social, environmental, and technological challenges facing us today. -About Opensource.com
What Opensource.com means by the open source way can be broken into 5 major principles:

Monday, February 10, 2014

Subversion Under Control

Now its time to access the source code of Audacity! Like most FOSS, Audacity uses Source Control Management (a.k.a. Revision Control or Version Control) to manage and update changes in documents and source code for each of the projects developers. Changes are usually identified by the SCM with a number or letter code. For example, an initial set of files is "version 1". When the first change is made, the resulting set is "version 2", and so on. Each update is associated with timestamps and the person making the change. Changes in versions can be compared, restored, and with some types of files, merged. SCMs most commonly run as stand-alone applications, but version control can also be found embedded in word processors (i.e. Google Docs) and in content management systems (e.g. Wikipedia's Page History).

Thursday, February 6, 2014

Joining the Project

Audacity is very helpful in getting new developers incorporated into the project's community. First off, the Audacity wiki has a New Developers Guide which includes topics such as:
  • Tips for New Developers
  • Platform Specific Developing Guides
  • Design Topics
  • Improving and Adding Features
  • Bug Fixing
Audacity also has a Developer's mailing list that I immediately signed up for. The list is not only for Audacity developers but anyone else interested in following or contributing to Audacity's development. I already have been getting emails from the core development team talking about certain high priority bugs that need to be fixed in the current release.