Phone Books Suck
Seriously why do we still get these huge books on our doorstep every year? You know where mine goes now - straight to the dumpster. They don’t even make it inside. My phone can get all this information (and much more) on its own now. I can look up phone numbers, map, and get directions to everywhere I need to go.
So what exactly is the point of a “Phone” Book when the appliance it’s supposed to help us use can already do everything the book does and more?
Some people still collect these in the event Armageddon comes along and all of the sudden their computers and phones don’t work so they can’t get this information. Well.. news flash! if your phone doesn’t work then what the hell good is a phone book going to do you anyway!
Be a Zealot - Rails Edge Day 1
What a day! There were certainly some great talks at Rails Edge on the first day. This all happened during a storm that must have been an act of God. I certainly had no idea what was in store for me once I left to drive home… hopefully others got home OK. I’m just glad my car didn’t float away on me at any point (honestly I’m surprised it didn’t). I was very close to just bunking in the car at some random parking lot overnight. Had I known how bad it was I would have just stayed at the hotel…
Anyway… the #1 highlight I took from day 1 is: “Be Zealous.” There are many other important highlights, but I think this one is the most important. Chad Fowler did a superb job of going over how to produce “quick and clean” (as opposed to quick and dirty) code. It took a strong force of will to get Rails where it is today. It wouldn’t have happened without the strong opinions and determination of the core team. If we’re going to continue to make the world a better place for software development, then we need to stay true to our values. These are mainly MVC, CRUD, constraint-driven development, metaprogramming and domain-specific constructs and more recently REST.
From my perspective, I hope Ruby/Rails developers continue to evangelize for the cause - but I also hope that we can all recognize when we have turned down the wrong path. Too often I’ve heard the excuse of “yeah it’s a bad way to do it, but there are already thousands of applications in production that rely on that.” The end result is that the problem just becomes worse and worse.
No matter how far down the wrong road you’ve gone, turn back.
Maintaining a zealous stance for the Ruby and Rails core values while also being open to questioning our current path will obviously require a delicate balance. The forces may pull in different directions, but developers will need to learn how to walk the line. To quote Dave Thomas’ speech today, “An object is made from a class and a class is a type of object.” Patterns often become cyclical.
Dave Thomas’ speech on metaprogramming really cut to the chase on how frameworks like Rails are built from Ruby and how you can leverage this power for yourself. If you find yourself coding a non-trivial application, then you really should think of domain-specific ways to describe your application. You can do much more than just build an API, your application can (and probably should) consist of it’s own language in many places. The language is built on Ruby (and possibly Rails as well), but is pieced together in sections that are self-describing. If done properly, this will empower you with productive development throughout the product’s life-cycle. It may be that your framework is so good that it will survive future generations.
A passive observer probably would have thought today’s conference was really “Macbook Pro/iPhone Edge.” A slightly more observant person may have thought it was really Java-loves-Rails Edge. A majority of the crowd seemed to consist of people that were either currently Java developers looking into Ruby, or Java developers that have already made the jump. Add a great talk on JRuby into the mix and there’s a lot of Java floating around. I find this amazing considering the disregarding attitude that seemed to come from the Java community towards Ruby and Rails just a couple of years ago. This change is definitely good for both camps though. The number of Java developers swarming towards Ruby is very reminiscent of how C++ developers swarmed to Java circa 1999.
Personally, I never drank the coffee. It’s not that I didn’t think Java was a great technology, I just felt that it only went half way and didn’t really see the point in that. In my mind, if you wanted efficiency - then just use C++. If you wanted productivity and multi-platform functionality, then Perl and PHP really got things done much faster (despite their crappy OO support) - at least as far as web application development goes. A majority of us that started on Rails back in the beta, 1.0/1.1 days were PHP developers that believed in dynamic languages but also believed that there must be a better way.
Whatever the path, we seem to be converging on the same road now and this can only be a good thing.
Even though I don’t really care too much about Java, I was blown away by Justin Gehtland’s presentation on JRuby. This technology really has come far and has the enormous advantage of being able to run all of the bajillion of Java libraries out there in conjunction with Ruby (and Ruby on Rails) code. This technology has developed amazingly fast and I really wonder if this may end up being the Rails platform of choice down the line. It certainly makes the migration from Java to Ruby quite painless.
Marcel Molina quickly went over his “Presenter” concepts and lamented over the state of Rails tempting language options. It is definitely clear that ERB is near the end of it’s life-span in this role.
Both Marcel and Chad reiterated many times about the evils of putting code in your views. I have recently felt a little over-zealous about all of the times I’ve gone batty about ActiveRecord calls that are in a view. I haven’t even gotten to where I try thump the no-code-in-view philosophy yet. I definitely feel encouraged that this seems to be the perspective of the core team. I’ll also remember that being zealous is generally good…
Ezra Zygmuntowicz (man that’s a tongue twister) proved that stable extreme-volume rails environments are indeed a reality. His discussion on Xen was excellent. In short, the platform of choice is: Linux (via Xen) + Nginx + mongrel + monit. The swiftiply mongrel patch to mongrel is now stable and can greatly increase your throughput. If you don’t know these technologies yet, you owe it to yourself to get to know them.
Last but not least, Mike Mangino gave another great talk on “RESTful” Rails development. Simply helpful was covered, along with changes that are going into Edge Rails - to be Released with Rails 2.0. After talking over REST concepts with the other developers and listening to Mike’s speech, I walked away convinced that REST is indeed the way to go.
I’m looking forward to Day 2, provided that I can swim my way down there!
Rails Edge Bound
I’m looking forward to heading down to the Rails Edge conference in Chicago tomorrow (8/23/07). Tribune Interactive was nice enough to pay my way. I will be sharing my notes and experiences here, so stop by (or check the feed) occasionally.
Lovin the iPhone
So I did the early adoption thing and got an iPhone… and it’s the awesomest. It really is worth the money. It’s surprisingly easy to use. Easy enough that when we took to this weekend’s family getogether we had the grandmas cruising on it! They were going through our wedding photos and loving it! It’s easy enough to type on that I was able to write this in a few minutes.
Spring Cleaning
I’ve been very busy recently and have somewhat neglected my blog. I returned from my absence to find myself drowning in blogspam. After an hour of cleanup and an upgrade for Typo, I’m back in action. There are many updates planned, so don’t lose hope.
Clog is also no longer beta. I still haven’t completed all of my goals for the site, but I’ve decided most of them just aren’t a high priority. It’s great that so many people have time to come up with awesome custom designs and modules, but I’m not one of them! The site is about information, and that’s what I want to focus on.
5 'til Midnight
The Doomsday Clock was updated today due to increased risk of nuclear war and a perceived degradation in the global climate. Climate change is a recent addition to the criteria for the clock. This adds a great deal of scientific credibility to the concept of climate change. I hope this raises awareness that this is a real problem.
There is constant debate regarding climate change. I find most people to be very misinformed about it, unfortunately. Most recent research points to climate change happening, but not as a ”runaway greenhouse effect.” Rather than seeing exponential increases in CO2 and temperatures, they both seem to be reaching a limit. That means they reach a certain saturation point more and more slowly. This is caused by several feedback mechanisms present in our environment. For example, the process of melting ice sheets actually soaks up CO2, which slows down the rate of overall CO2 increase. There are many other examples of this type of behavior. Fortunately, we’re probably still a ways off from the “point of no return.” These mechanisms will eventually break though, and I hope that people can understand the gravity of how important it is to take care of our environment before that happens. Most scientists are in agreement that this is a critical issue. The fact that it was added to the Doomsday Clock’s criteria underscores this. It means that there are now two critical issues that scientists generally feel are imperative to the survival of the human race, nuclear war and climate change.
ANYTHING we do to help fix this problem is worthwhile, whether it’s biased or not. The UN and nations that provide global leadership should be upheld to the expectation of providing leadership for both of these issues.
Happy New Year!
2006 was one of the best and worst years ever for me. In my mind that makes it a great year. I think the (truly) worst years are the ones that go by without event. The type where, when you try to think back to what happened that year, you’re left with nothing but a vague impression.
2006 was definitely not like that for me, it was one of the most eventful years of my life.
In 2006 I got married, went on an awesome honeymoon trip, my wife graduated from college (a big event for both of us), and I went through unmatched chaos in the workplace and the web (“2.0”) industry. I’ve learned a great deal this year, not just about things like Ruby, Rails and “Web 2.0” but also about life. The main downers have been all of the global problems and dealing with changes in the workplace. Let’s hope 2007 sees some progress there and that all of the other great things that are going on continue.
The Honeymoon (part 1)
Here is a message I wrote after the first week of our Honeymoon:
It wasn’t until almost 11pm that things were finally done the night of the Wedding, and Trish and I ended up having some time to chill. Afterwards we hung out with our friends Cari, Al, and Marc, and Tricia’s sister Tracy. That wrapped up around 2am and we spent the next two hours getting things ready for our Honeymoon. At 4:30am it was off to the airport. The day after my wedding was one of the most tiring days of my life. Not only did I have no sleep from the previous night, I had very little during the previous two weeks and Trish and I were both fighting off Upper Respiratory Infections. Trish was on the trailing end, but I felt worse and worse the whole way out. It finally peaked on Monday night (day after flying out) and Tuesday when I had a fever in the 101-102 range for a good 24 hours. That finally fought it off though, and I’ve been getting steadily better since then. Fortunately it didn’t take that much time out of our Honeymoon. We stayed the first two nights at the extraordinary Hotel Vintage in downtown Portland. Room service delivered some of the best Pizza we’ve ever had. It was really Phenomenal. We took the opportunity to walk around Portland and hit some of our fav spots. I even took some time to shop at one of my favorite rekkid stores (Trish went along with it since I had gone with her during her shopping spree). In fact, shopping is most of how we spent the first week out here… well other than eating and drinking at the countless awesome restaurants. There’s a lot of cool stuff that you just can’t find in Indiana. We met up with my good friend and former Intel Mentor, Rob on Thursday night. We went out for Martini’s and Rob treated us to what’s probably the best meal we’ve ever had. We went to one of my local fav nightspots on Friday night, but were very disappointed with the changes. After wondering around in the cold for a few minutes, we decided to head back to the hotel (now the Garden Inn in Lake Oswego (just outside of Ptown). We once again met up with Rob on Saturday, this time we went to the Rogue brewery in Portland. The beer there is amazing. The bride was warn out on Sunday night and still disappointed with our experience on Friday. Since she wanted to mostly just “chill”, I went out on my own to check out Sunday’s at Dante’s. It was fun, and I’m glad I went.. although I left early so I could get back before my bedtime ;). All-in-all, it was a fun and relaxing first week. - 10/9/06
The Wedding
Tricia and I are busy on our Honeymoon and net access has been sparce, but I’ll try and update the posts as I have time. There are also 100s of photos to upload, but I have not been able to find a place with the bandwidth to upload all of them… so they’ll have to wait a bit. -chrisp
Well the wedding is done and the bills (mostly) paid. For the most part, I was very happy with how it turned out. Thanks so much to all that showed up and helped us make it happen!
For many of us, the wedding really started the day before. Trish and I started that day by driving Nishka to the “Lucky Dog Retreat” for her two week stay. It was very difficult to leave her, but the place came recommended and it looked like it would provide her with a good amount of interaction (Nishka needs a lot..). After getting all of the Bridesmaids and Groomsmen in order, we had to wait about an hour for all of the rehearsal party to show up. We did a high-speed rehearsal and then went to Acapulco Joe’s for dinner. It was great as always.
There was so much drama surrounding the wedding that it was very difficult to have it at all. Although some of the drama continued throughout the wedding, it was fairly well contained. Of course I didn’t get through it without a “DER” moment in the limelight. We were both really happy that the weather cleared up and we had sunny skies for the ceremony. We would have still had fun regardless, but I think losing the opportunity to have it outside and in the gardens would have really bummed us out (especially the Bride). Alan (Top Speed) put on an amazing performance. It’s too bad that only a fraction of the wedding party saw it, but oh well. I had fun with my own set, although it was quite a bit different than I planned due to the dwindling crowd. Rather than play the entire set, I just covered the Bride’s favs while I had the chance. Since I put a full mix together, I think I’ll record it once I get back and post it.
Unfortunately, there is no recording of the wedding night mixes since my recorder went MIA - along with my laptop’s power supply - which was thankfully found. The Canterbury provided some truly awesome food and the service was top notch. We did have some trouble with the front desk, but other than that they were really top notch as a reception location. The Zoo on the other hand, was very difficult to work with. While they did their job, I can’t say that they did anything more than the bare minimum. The Bridal party showed up about an hour late and the zoo representative was extremely rushed to get us in and out. We still had the grounds for a few hours, but they assumed we would be out sooner (turns out we did still get out on time).
The Bride was obviously not happy at all with the party being so late, and the zoo representative presented an attitude that made things worse. Fortunately, a crisis was avoided and the only side-effect was that people had to wonder the gardens for awhile beforehand. Since it’s such a nice place, it seemed to keep everyone entertained. Given all of the problems we had going into the wedding, I’ll take that one problem as a Godsend.