Project 2a

Due Date: Thu 10 Feb

There are two parts to this project.

Part One

Choose your complete development environment:
  • language(s): Java is excluded
  • REST framework: take a look at this table and choose a framework for your language with support for at least content negotiation
  • tool stack
    • IDE (optional)
    • build and dependency management (ideally, Maven or similar)
    • unit testing (e.g., JUnit)
    • code coverage (e.g., EMMA, this determines what portion of your code gets exercised by your unit tests)
Some points you may consider:
  • Your chosen stack must be cross-platform. In particular, it must not be Windows-only. So, for example, you can use C# as long as you use a cross-platform tool stack instead of or in addition to Visual Studio.
  • I recommend basing your choice not only on the language itself but on the available frameworks and tools for developing web services.
  • The only language restriction is that you cannot use the Java language in your project, even though many of my examples are in Java. You can, however, use other JVM languages, such as Clojure, Groovy, or Scala, with suitable Java or language-specific frameworks. You may also want to look at frameworks that support multiple language choices by isolating language-specific components; an example is NetKernel.
  • In case you run into trouble during a later stage of the project, you can change your choice.

Part Two

Prepare a 4 to 7-minute lightning talk to be given in class on the due date. 
  • One talk per group.
  • This talk does not need to be polished! 
  • Please include the information from part one and a brief rationale for each decision.
  • Write on the whiteboard or give a web-based presentation.