Sergio and the sigil

[ANN] Chicago ALT.NET shows Rake and Albacore

Posted by Sergio on 2010-03-09

I haven't mentioned our meetings here in a while but our group has been going strong and enthusiastic all this time.

Tomorrow, March 10th our topic will be build scripts for .Net projects using Rake and Albacore. I've been using Rake and a little bit of Albacore in my own projects and I'm ready to say that it will take a very serious event to make me go back to NAnt or MSBuild.

Introduction to Rake with Albacore.NET

6:00 pm
Pizza and networking time

6:30 pm

How would you to write your build scripts using a scripting language instead of XML? In this month's meeting we will see how the ease of programming in Ruby can be used to create a much more pleasant and extensible build script.

Rake isn't just for Rubyists or Alphageeks anymore. Albacore helps bring the power and expresiveness of the Ruby language to the world of .NET build automation. Using Rake it's never been easier to handle build automation, test execution, continuous integration and just about any task you need to automate for your build.

Michael D. Hall has been developing software on the Microsoft platform for over a decade. He's been an Alt.NETter for years and is really enjoying the exposure to different ideas and concepts beyond the safe confines of the .NET world. Currently he's a consultant working with Obtiva and has started a Cloud Developer's Group that meets monthly in McHenry county.

Register for Introduction to Rake with Albacore.NET in Chicago, IL  on Eventbrite

On ALT.NET and patience

Posted by Sergio on 2010-01-19

There ALT.NET bashing season is on full steam. Ian Cooper has a thorough post about it.

To my recollection, ALT.NET was formed by people that shared very similar tastes on what represents good development tools, practices, and methodologies. This group of people, just by the simple fact that they decided to get together under one roof to discuss these ideas, showed that they are constantly and decidedly trying to become better at what they do.

But when you take the step to form a new community or movement (or whatever else you want to call it) you can't easily control who jumps on board or who jumps ship - and you shouldn't even try to.

Inevitably the original idea started to attract many different kinds of participants, which I'm going to roughly distribute in the below four categories (I was tempted to use the term personas, but … never mind.)

  1. I'm here to help
    • I like to teach,
    • to write,
    • to contribute to OSS,
    • coordinating UGs and events
  2. Those who like to complain
    A very minor percentage of those know how to externalize their criticism in a constructive way. Unfortunately the majority limit their contributions to rants and trolling.
    That's probably the only group of people that I'd try to weed out if I could (but I can't; and we shouldn't).
  3. Those who want to learn
    • They want to hear about other ideas,
    • to figure out how to bring better practices to their work,
    • they have a specific problem and they're seeking opinions or answers.
  4. Heliotropic migrants
    The ones who want to be linked to (and hops on) every new, shiny thing for commercial reasons. There's always this type of people. They need to latch on to what could be the next big thing for the sake of their own livelihood. There's nothing wrong with that, by the way.

Some people just can't put up with the other types. Some folks go ballistic with people on #4, others can't stand the whiners in #2. Some don't tolerate repeated or trivial questions from folks that are just trying to learn.

In the midst of all this, it becomes hard to connect #1 and #3, which I think is the ultimate reason for ALT.NET existence.

Frankly speaking, I think I've personally danced around in all these four categories but I find myself most of the time in #3 and some other times in #1. I do apologize for my ventures in #2 – it's hard to avoid.

So, if you dabble in the ALT.NET waters, let me just ask you to exercise a little bit of patience. We all still have a lot to learn and there's very good indications that some of those lessons are permeating the .NET development community — from the individual developer to the big Enterprise, Inc.

Let's no try to change the world with a single swing of the bat. Changing one constructor method at a time will get us further. In the end, the idea is simply to more efficiently produce more maintainable and reliable software.

CouchDB Presentation

Posted by Sergio on 2009-10-01

In this month's Chicago ALT.NET meeting we will be taking a look at Apache CouchDB. I quote from the official site:

Apache CouchDB is a document-oriented database that can be queried and indexed in a MapReduce fashion using JavaScript. CouchDB also offers incremental replication with bi-directional conflict detection and resolution.

CouchDB provides a RESTful JSON API than can be accessed from any environment that allows HTTP requests.

Get Comfy With CouchDB

6:00 pm
Pizza and networking time

6:30 pm

CouchDB is one of the more mature schema-less map/reduce object dbs out there. In this talk we'll cover the basics of what CouchDB is, and why it's cool, and then we'll run through a sample application. The application will show off LINQ to Couch, basic persistance, views and full-text search with CouchDB-Lucene.

Alex Pedenko has been in software development for about 13 years, starting off on Borland Delphi, then spending about 4 years in Java and finally making the switch to .net around '03

Currently, he is the director of software architecture and chief architect at a healthcare services company. He has used that role as an opportunity to inject some modern ideas into an otherwise lagging industry, moving the company from a classic "giant web-app strapped to an even more giant db", to a distributed, service-oriented environment utilizing RESTful services, and rich-client applications.

Alex is also involved in a number of Open Source projects like Bistro and NDjango, and the .net side of CouchDB via Divan and LoveSeat

Upcoming Local UG Meetings

Posted by Sergio on 2009-07-06

Here are two user group events that are happening soon and that I'm directly involved.

July 8th, Chicago ALT.NET

0-60 With Fluent NHibernate
See the full description of the session over at the Chicago ALT.NET home page. We will have Hudson Akridge tell us all about Fluent NHibernate, a project that has been instrumental in getting people on NHibernate by simplifying a lot of that ORM's configuration chores.

The Chicago ALT.NET meetings start at 6PM in the Sears Tower. Check the website for complete location details.

July 14th, WI.NET

JavaScript - Beyond the Curly Braces
I'm taking my little JS presentation to the WI.NET UG in Milwaukee. The group's website hasn't been updated with the presentation details yet but it's basically the same presentation given at other local UGs.

The meeting starts at 7PM. Come ready to be surprised.

UPDATE: The video and slides from this presentation have been published.

So you've been hearing about this Git thing

Posted by Sergio on 2009-06-02

The ALT.NET universe in Chicago gets together again on June 10th, this time to learn and talk about Git, the SCM you're probably tired of hearing people jabbering about and still have not taken the time to look at.

The presenter will be myself and I hope to explain how Git works and how it can be a good alternative even for non open source projects.

Git Without Puns

This month we will take a look at Git, a distributed version control system that has been gaining a lot of popularity since its introduction.

As with everything that is new and is touted as a replacement for an existing product, it's easy to try and map Git's functionality to Subversion, CVS or TFS for example. To better use Git, we should avoid too much comparison and also try to understand how it was built and how it works under the hood.

Here are the things we will be seeing and discussing in this session.

  • Brief tour of Git on Windows (SSH, PuTTY, Git Bash, GUI)
  • Git is distributed. How does that benefits me?
  • Git's object database.
  • Git's main objects (blobs, trees, commits and tags)
  • Git workflows. Choose or create yours.
  • Working with Git
    • Configuration tips
    • Create a repo
    • Clone a repo
    • Add/Commit changes
    • Reference another repo
    • Update repo (to/from)
    • Branching, merging, rebasing
  • Hosting Git
  • Github, social project forking