September 29th, 2008 chris
In having to research libnet and libpcap, I’ve found that there aren’t really a whole lot of great resources on them. But for those who, like me a week ago, have no idea what these things are, some clarification is helpful. Libnet is the standard packet construction library for C, which can be used to make TCP and UDP packets, amongst others. Libpcap does the opposite: it captures packets off the network. And now that you know the tools I need to pick up in a short amount of time, let’s talk about the resources I eventually found.
Read the rest of this entry »
Posted in C++, School, Security | No Comments »
September 25th, 2008 chris
Hi all! I start up my next quarter of grad classes today and will likely be taking these classes:
- Advanced Network Security
- Advanced Distributed Systems
- Seminar in Systems Biology
So as normally happens, I’ll be slanting that way as far as my blog posts go for the next two or three months. However, since I’m on my Ruby craze right now, I’ll do my best to mix-in Ruby with these topics.
Posted in Computer Science, School | No Comments »
September 24th, 2008 chris
You know you watch too much Stargate when you get ads like this targeted at you:

The weird thing is, I clicked on the link and they don’t even mention a Stargate at all…
Posted in Ranting, Stargate | No Comments »
September 24th, 2008 chris
While working on our multi-language SOAP project, we’ve run into a number of interesting quirks. If you end up doing the same, you should certainly try out a number of “base cases” to make sure you get a good grip on it. For example, in Ruby, you can pass strings back and forth with no problem over SOAP (presumably this works the same way for Python-only communication).
Read the rest of this entry »
Posted in Cloud Computing, Programming, Python, Ruby | No Comments »
September 23rd, 2008 chris
While doing a bit of research on the web, I came across a few interesting sites that each offer something new to Ruby. They may be useful for me down the line as well, so I’m making a note of them here for me to come back to when I get some more free time:
Superators – Add new operators to your classes or even the standard library classes. Highly dangerous but highly amusing! They’ve also been awarded the “Most Horrendous Hack of 2008” award, which certainly adds to both the dangerous and amusing qualities!
Fun with Procs in Ruby 1.9 – Dave Thomas is usually on top of his game on the new features in Ruby 1.9. Here’s a particularly good read involving currying and Proc objects in a very Ruby-esque fashion.
Seeing Metaclasses Clearly – A great intro to the power of metaclasses (and metametaclasses as well as metametametaclassess….) by our old friend why the lucky stiff. The most interesting part for me is what he ends up using this for…
Dwemthy’s Array – An RPG written in 60 lines of code using Ruby metaprogramming! Fire up irb and follow along as why shows you how it works in traditional why style (read: insanity). The amazingness of this warrants reading both this and the previous article thoroughly.
So that should give you some fun reading material to keep you up to snuff on the craziness of the Ruby world. Until next time!
Posted in Programming, Ruby | No Comments »
September 19th, 2008 chris
One of my new found loves is Object Relational Mapping, specifically Ruby’s ActiveRecord. If you have not heard of these, go click on those links and read about it. Now. Now that you know all about those nifty guys, let me just say “Wow”. After all those years of writing crappy quality SQL code that took like ten times to get exactly right, we get this amazing technology to automagically give you an object and make operations on it equate to operations on the database. And it was too good to be true…
Read the rest of this entry »
Posted in Programming, Rails, Ruby | 1 Comment »
September 17th, 2008 chris
Quite a bit of buzz on the internets is around a nifty new Q&A site called Stack Overflow. Since you can read all about what it bills itself as and how other people perceive it in other places, I’ll just give you a ‘first impressions’ review of the site.

Read the rest of this entry »
Posted in Programming, Ranting | 2 Comments »
September 11th, 2008 chris
An important part of “keeping up” as a programmer is learning new skills. And while the Pickaxe book is great to get a feel for Ruby and to have a nice little reference by your side, there’s no replacement for experience. Enter the Best of Ruby Quiz, a collection of weekly programming challenges from the web site of the same name. But how does the book compare? Read on!

Read the rest of this entry »
Posted in Book of the Week, Programming, Ruby | No Comments »
September 10th, 2008 chris
Distributed systems are an inherently tricky field. There are a million different problems that arise in distributed systems that don’t show up in concurrent systems on one CPU, which is why I find it to be so interesting. But this isn’t a rant about distributed systems. This is about a technology mentioned for a few pages in the Pickaxe book called SOAP, the Simple Object Access Protocol. It’s been a breeze to use so far (granted, my app isn’t that complicated yet), and much easier to get going than CORBA in Java (although I’m not sure if that’s a CORBA thing, a Java thing, or something else).
Read the rest of this entry »
Posted in Ruby, UCSB Projects, Web Apps | No Comments »
September 9th, 2008 chris
I originally intended these random ‘Simplicity’ updates to be about things I like in Ruby that are a pain to do in Java. And while that’s certainly the case this time around, this comes from a library perspective rather than the languge itself. Specifically, I’m talking about processing command-line arguments. It’s something you have to do all the time when you write these little scripts that come up but for some reason results in the same boilerplate code being constructed. This is why I’m exceptionally glad that Ruby has many solutions to this problem.
Read the rest of this entry »
Posted in Java, Ranting, Ruby | No Comments »