Fury Shirts

Posted by Jake Good
on Oct 25, 08

My friend Matt has put together an awesome little company... and I'm completely jealous that he has gone independent... so please, everyone go and check out Seventh Fury...

Fury Shirts

At any rate, I snagged some shirts and wanted to give a quick review of what I thought of them...

mmm bbq

We took the t-shirts out for some BBQ and let me tell you, they are comfortable. They come printed on American Apparel cotton tees, love it. They are soft, stay soft, and hold their color really well.

The designs are interesting, fresh, and hold off BBQ really well (especially Becca's).

Right now, most of his shirts are sitting at $17.99, which when you think about a nice American Apparel shirt, it's not a bad price at all!

(Btw, his design chops are fantastic, I've had him do some identity design work for me and will continue to go to him for work)...

mmm bbq

At any rate, go check out his stuff... Fury Shirts

First Days with Rails

Posted by Jake Good
on Oct 24, 08

I remember my first day with Ruby on Rails... back in June 2005 Neil, John, and myself decided to enter a 24 hour competition to hack out some Rails code. I read my first pages of the "book" the day before we started...

It was my first day with Ruby AND Rails...

We created a social networking app (yeah in 2005, cause it was "so new" /sarcasm)... that was focused on families... sharing photos, birthdays, anniversaries, and other tidbits of family oriented information.

It felt so liberating compared to ASP.Net...

Fast forward to 2008 and the competition is still going on. This year, Rails Rumble 2008 was the place to be. A 48 hour competition to create the best Rails app EVAR! This year, as in all previous years, there was some baby mama drama...

Some guy started pointing fingers... "There's no way you can build X in 48 hours"... people started crying... and instead of running to their mothers, they decided to stomp feet and raise a ruckus.

Here are my thoughts on the situation:

  • We're all adults here kids and we're all entitled to our own opinions.
  • Use some caution when writing a blog post, but don't be scared to post your feelings.
  • Crying and whining doesn't get you anywhere. Post a rebuttal and prove the people wrong!
  • In the end, nobody died, nobody lost money, the Earth is still spinning (or is it just me?) and the competition will continue on...
  • Why am I even contributing to this mess? Maybe it's because I feel people are being too sensitive...

Special Note... there's NO WAY IN HELL the freaking fabulous app (which you should all vote for) Likis was done in 48 hours...Mike and El aren't that smart... and I hate sarcasm...

(NOTE: I am friends with a lot of the competitors and even the people who wrote THE blog post... and this is a small fry blog and I can write whatever the fuck I want to)

My Home Office

Posted by Jake Good
on Oct 21, 08

mac trio

Here's a picture of my home office... I have been working from home for almost a year now and it's been fantastic.

A description of the above image...

MacBook Pro (Left) - Personal laptop, used for chat + blog reading + etc... Cinema Display - Main workspace + Code MacBook (Right) - Communication Console with Drop.io (Skype w/video + Chat)

Just wanted to share a few Pros and Cons because I get asked all the time; not many people have this opportunity.

Pros

  • Bed to Desk in 15 minutes flat...

  • Ability to take care of our young pup from the start.

  • Cheap and healthy access to food. No eating out at lunch.

  • Ability to change my office scenery, though I don't take advantage of this as often as I should.

  • No gas / No driving

Cons

  • Remote collaboration is still tough. The technology is not quite there (or if it is, it's too damn expensive)

  • Separation of work and play becomes tough. You have to know when to stop work and it's really hard to shift your mind off of work related tasks.

  • The two itches: distractions and "maybe I could finish this work late at night"...

  • Not as much alone time for Becca, because I'm always here.

It works out in the end...

The good thing is... not once have I left a TextMate screen open with this in the buffer:

All work and no play makes Jake a dull boy... All work and no play makes Jake a dull boy...

All work and no play makes Jake a dull boy...

All work and no play makes Jake a dull boy...

All work and no play makes Jake a dull boy...

All work and no play makes Jake a dull boy...

Hanselman's Survey

Posted by Jake Good
on Oct 14, 08

Scott Hanselman posted a quick, one question survey about what frameworks and platforms that they use while they develop applications in the Microsoft .Net Framework...

You should know that I used to be a .Net Developer and am now a Ruby Developer (with Objective-C and Erlang envy)... so I took the survey. And granted in the timeline that I was a .Net Developer, these technologies and platforms were in their infancy (some still are)... but I feel as if I would only use a small handful of them... Let's break down each one.

ASP.NET Web Forms - Worst implementation ever. Seriously. Not focused on how the web works.

ASP.NET Dynamic Data - Good ground start, but too many requirements to use.

ADO.NET DataSets - Yuck. Yuck. Yuck. Yuck.

CardSpace - Who uses this? :)

Linq To SQL - Yay, let's abstract ugly syntax in code with more SQL focused syntax.

ASP.NET AJAX - Terrible, you shouldn't be using it. You should be doing jQuery or proto

ADO.NET Data Services - Potentially useful, more people should be playing with this.

Win Forms - Solid, used it for many years... wish it were MVC forced, but it's solid.

Windows Workflow Foundation (WF) -

Windows Presentation Foundation (WPF) - Good idea, tough as nails to learn and use.

Entity Framework - no comment

ASP.NET MVC - diamond in the rough... what ASP.Net should have been from the get-go

ASMX - Bleh.

Windows Communication Foundation (WCF) - too heavy, too involved...

Now it may feel like I did a lot of bashing there, but in all honesty... to make me feel like a competent developer who writes well maintainable code, I only used the frameworks that allowed me to do so... There are some very smart guys in this section of the market and at Microsoft. Things will get better... I just hope that the tool sets continue to let developers be creative and intelligent... and let them make the right decisions on how to build a solid system.

Until then... I have other things to worry about

assert_equal 2.days.from_now, Becca.birth_date

iPhone vs Windows Mobile Development

Posted by Jake Good
on Oct 10, 08

WARNING This post will be technical, so feel free to turn away from this post if writing software for mobile devices is not interesting to you :)

After spending a few weeks working with code on my iPhone, I've come to the conclusion that I don't think the SDK is where it needs to be before the "killer application" comes to the iPhone. Here's why...

There are ways to build frameworks that let people quickly get tasks done with as little code as possible, for actions that are simplistic in nature. Adding contacts, playing a single sound file, connecting via Bluetooth, drawing boxes on screen, drawing 3d boxes on screen, or other situations... You have one action in mind and you want a simple way to do it, but you also want controls that allow you to go further with it.

It's the balance of writing any framework (or SDK)... and I wish i could combine the iPhone SDK and the Compact Framework (CF) into one solid API... Maybe the Android platform does this and if so, I should probably look at it in more detail... but alas, I can't use those examples in context because I don't know anything about it and I won't pretend TO know anything about it...

Here are the core concepts that need to have very very high level APIs in order for more developers to use them effectively... I know there are lots of wrappers and classes out there that can help you do this, but the core frameworks should have a bare minimum super high level implementation.

  • Sound - both frameworks fail at this... it's incredibly low level to record and play back sound. Audio Services feels too low level for me. Compact Framework has Waveform Audio framework which is just about the same as Audio Services. It would be nice to just point to a file and say Play Now...

  • Drawing - Direct3D Mobile is a step forward... as well as the iPhone having OpenGL ES 2.0 Both are really well documented and are about as good as you're going to get for any kind of non-standard-form development on a phone. Props to both frameworks for providing nice libraries for this. They aren't incredibly high level, but they do provide you with what you need and are well documented.

  • Contact Data - Both platforms have interesting interfaces to contacts...

  • Networking - Here's where I think CF rules over iPhone frameworks. I think that they both have good basic HTTP traffic handling capabilities, but I think outside of that, the CF has easier means to do any kind of TCP traffic interaction at high levels... while the iPhone treats them more like low level, posix compliant, tcp sockets... That includes bluetooth and bonjour. I mean seriously, look at the examples on the iPhone for networking and look at them in the CF, you'll notice large differences....

  • Phone Actions - I'm talking contacts, emails, and phone dialing capabilities... They are both about even on this level.

  • Photos - Using the phones camera on both frameworks is almost identical. They have standard Camera Taking and Photo Access means. You hand off the request to the OS to say, give the user the ability to take a picture and report back to me with the picture if they take one. Protection of the Camera is nice...

  • Forms and UI Control - Here's where the iPhone clearly wins. The MVC pattern on the iPhone is really a fresh (and correct) way to look at UI development. In CF world, you treat it just like you do in the desktop world, which is nice, but can lead to some very ugly code. Though I do find the iPhone's standard control library very very slim... I do think that they could do better.

  • Input - Obviously the iPhone and Windows Mobile have touch sensing capabilities and keyboards... I think the iPhone wins on keyboard control, but I think that Windows Mobile wins for input devices and capturing the events. In Windows Mobile world, you tell the object that the user can touch to tell you directly when it happens... in an explicit fashion... In the iPhone world, you say, hey... I can handle input messages, please send them my way if you happen to get something... in a declarative fashion...

So I guess it comes down to the fact that the iPhone SDK is young... the CF has been around for 5 years or so... and eventually they will start to look more and more similar...

It will come down to the devices and I do strongly feel that the iPhone is a better starting platform than the Windows Mobile phones... but I miss writing in the Compact Framework... When I'm dealing with iPhone like stuff, I keep asking myself how I would do it in the Compact Framework...

Here's an idea... why don't the Mono guys port the Compact Framework over to Objective-C and get something similar running on top of the iPhone :)

Or Apple, get Ruby working on the iPhone... How I would love to use Ruby on the iPhone...

Goodbye Grill Cover

Posted by Jake Good
on Oct 03, 08

Lucy vs Grill Cover

My grill cover had NO chance against a 56lb puppy...

Facebook Advertising

Posted by Jake Good
on Oct 02, 08

I did a double take this morning when I was perusing through Facebook...

Facebook Ad

(click for larger image)

Practically a "Wake up Neo..." moment...

And then came the explanation

NOTE: For those who haven't figured out the picture, I work at drop.io... and the ad on the far right is directly targeted at me from my one, Mr. Sam Lessin.