HTTP and your bike


While you may think HTTP is just a protocol for downloading HTML files, this idea is wrong. HTTP is used daily for transferring many different types of files, from HTML to several graphic formats (JPEG, PNG, GIF, etc) to Cascade Style Sheets (CSS) to JavaScript files and many others.

In this post you can study the way the city bicycle service (Valenbisi) works in order to provide an application the location of the different bike stations and the current state of each one. Here the body of each HTTP response is an XML file.

Armed with this knowledge, this site was created and, believe it or not, it turns out to be much more useful than the "official" one.


The software you don't want your friends to have

Not sure how long this trick will work, but it is a wake up call about Facebook security when it comes to users accessing over wifi networks. We'll be explaining HTTP protocol soon in the classroom, but for Wifi technology you'll have to wait till next term.

I reckon this tool will only work on WEP-protected wifi networks, but I'll be interested on your feedback if you get it working.

Now that "The social network" is on theaters it seems a good moment for this type of information :-)

Short Tutorial on Java Network Programming

I'll be using this material in the classroom to present the basics about Java Network Programming. You can download the PDF file by clicking on this entry title too.
Java Network Programming

It seems the guys at Scribd have some trouble with this document. If you see empty yellow boxes, please download PDF or watch the file on Scribd site (by clicking on Scribd logo) to be able to see the missing code.

Source code is available too.

First assignment is out


This is our first assignment. It is about writing as small web server in Java language. Those of you not familiar with Java might use a different language upon request.

We will present the basic ideas of how to create networking programs in Java in a few days. Please note a sample server is also provided so you can now see exactly what is required.

For running the sample code you need to have a Java Virtual Machine installed on your system. Then at a terminal type: java EchoWebServer
And next type in your browser address bar: http://localhost:8080/anything