Posts written for my ICS 691 (Software Engineering) course.

  • Playing With Play Part IV - Creating Views

    May 8, 2013

    This post will likely conclude my journey with the Play Framework. Although I have not completely finished the application that I originally set out to create, I am satisfied with what I have learned about the MVC architecture, the Play Framework, and web application development in general.

  • A Break From Play - Improvising Interfaces

    April 26, 2013

    This week, I’ve taken a small break from Play to work on developing an interface for the book exchange app that I’ve been working on. I have been working with Twitter Bootstrap and Divshot which I will describe in this post.

  • Playing With Play Part III - Creating Controllers

    April 19, 2013

    A few weeks ago I started working with the Play Framework, which claims to make it “easy to build web applications with Java & Scala.” However, I am seriously starting to doubt that. The more I use it, the less it feels like play, and the more if feels like very frustrating work.

  • Playing with Play Part II - Making Models

    April 10, 2013

    Last week I discussed my brief experience with the Play Framework. This week I’ve continued to explore the framework with a focus on the model part of the MVC architecture.

  • Playing with Play

    April 3, 2013

    This week I’ve started working with The Play Framework, which is a web application framework. The extent of my web development includes playing around with basic html and javascript, so this should be an intersting experience. I hope to have several updates over the coming weeks about my first real experience with web application development.

  • Open Source Software

    March 15, 2013

    In my first post I talked about my brief investigation of a piece of open source software. Today I will attempt to explain free and open source software, as well as give my perspective on the issue.

  • Robocode - RedShift

    March 12, 2013

    In my last post I talked about testing the Robocode robot which I have been developing for the past few weeks. Today I will be going into more depth about the robot and the project in general.

  • Robot Testing

    February 26, 2013

    In a previous post I touched upon the idea of testing software, in the context of FizzBuzz. Today, I will discuss testing once again. This time, instead of testing a simple program like FizzBuzz, I will be testing a more complex system. Specifically, I will be testing a Robocode robot.

  • Make it Break

    February 22, 2013

    Quality assurance is an important part of developing any system, product, or service; developing a software system is no exception. Quality assurance can be divided into two broad categories: automated and manual. Manual quality assurance for software systems includes, for example, unit testing and code reviews. Automated quality assurance involves the use of tools such as static code analysis tools.

  • Code Katas - Robocode

    February 5, 2013

    Kata is a Japanese term which is usually applied to martial arts. It refers to a series of choreographed movements used to practice good technique. More recently it has been used more generally and applied to many areas outside the realm of martial arts, such as software engineering.

  • How to Ask Questions

    January 23, 2013

    Do you know how to ask a question? It seems simple, right? Well, it is. Anyone can ask a question. On the other hand, asking a good question is a completely different matter. In particular, it can be very difficult to ask a good question about a technical problem.

  • FizzBuzz

    January 16, 2013

    Fizz buzz (also written as FizzBuzz) was originally a word and number game used to teach children about division. In this game children sit in a circle and take turns counting from 1. However, if a number is divisible by 3, they say “Fizz,” if it is divisible by 5, they say “Buzz,” and if it divisible by both, they say “FizzBuzz.” More recently, it has found its way into the world of programming thanks to these blogs here and here. These blogs claim that many entry-level programmers, including those with a degree in computer science, cannot write a simple program that outputs the results of FizzBuzz. My task was to time myself while writing a program in Java, using Eclipse, that would output the results of FizzBuzz for the numbers 1 to 100. Beyond this, the implementation details were left up to me. However, I was also required to implement a test of the program to verify that the output was correct.

  • Exploring Open Source Software - gSky Digest

    January 12, 2013

    The Three Prime Directives of Open Source Software Engineering are as follows:

    1. The system successfully accomplishes a useful task.
    2. An external user can successfully install and use the system.
    3. An external developer can successfully understand and enhance the system.

    My goal for today was to find a Java-based open source project that is of interest to me and that I could potentially contribute to. After finding such a project, I would explore how well it meets the Three prime Directive of Open Source Software Engineering.