OK, this is a bit late, but last week we had the monthly DC Alt.Net meeting. On a bit of a different spin, the topic of the week was Lisp, led by Craig Andera. I hadn’t done any Lisp save for some very, very simplistic stuff back in the college Programming Languages course, so it was really very interesting to get a look at it now, both in that Craig covered much more sophisticated topics that the simple list adds we’d done back then, and that I now have a lot more programming experience. From the strongly-typed, heavily structured background I’m coming from these days, Lisp struck me as fascinatingly different; in regards to my recent experiences, I have to say the mindset was significantly more like Python than anything else I’ve worked with in a long time. Actually, the similarities are convincing me that I should make a serious effort to achieve a pretty sophisticated understanding of at least one of the dynamic languages (Python, Lisp, Ruby, etc) so I have that mental model in my toolbox. Sometimes a different way of thinking about a problem results in finding an answer, but there’s a bonus of a more directly applicable usage in that C# is beginning to borrow some dynamic language features such as lambdas; and the better I “get” dynamic languages, the more I’ll see how and when to appropriately use those new features.
Archive for May, 2008
For the past few days, I’ve been practicing writing up small programs. By that I mean small, self-contained programs made up of a few classes, maybe in a single file, with a main method so it can be run as a console app, things that can be whipped up quickly. As I’ve pretty exclusively been working on adding to and modifying a single huge app over the past year and a half, this is pretty different. For one thing, it’s been interesting figuring out the minimum amount is to get a working program, accompanied by unit tests. No Asp.Net, no “Page”, no “Monorail”, no “Enterprise Architecture”, just a bare little program that calculates or solves something. I know it may sound weird to command-line scripters, but this often isn’t done in the web world, particularly the Microsoft web world. Sure, I did this sort of thing in C++ back in school, but I haven’t done it in C# and as I’ve been focused on web, I really did everything from a browser UI perspective, with all the overhead that requires . I’m out of practice, and it’s a bit embarrassing. For the first one, I literally sat there for a bit thinking “how does one go about doing this?” sigh… well, at least this is one lack in my tools at hand I’ll have fixed.