Pulling Documents From a Relational Query in Postgres

The fuller support for JSONB in Postgres 9.4 makes working with document structures incredibly compelling. Here's an interesting way to have your Relational Peanut Butter play nicely with Document... Chocolate

Being a Nomad for a Year

I'm traveling for a year with my family without a plan. We started in Europe and are planning, at most, 3 weeks into the future. So far it's been pretty life-changing.

A Better ID Generator For PostgreSQL

For most tables in a database you can get away with an auto-incrementing integer primary key. This, however, is a scaling headache if you ever have to shard your database. This is a common problem with a Users table, and there are better ways to fix this issue than with the ever-present UUID/GUID

The Frustratingly Lovable Crazy-making Huggable Ball of Whack That Is Ember.js

I've given Ember a hard time in the past. I just didn't get it. I didn't understand the philosophy, why Ember existed at all, or why it was called 'MVC'. Over the last 6 months I've dug in my heels and tried (once again) to build something with it. I did, and I'm impressed. And still a bit confused.

Your Own Private Heroku with DigitalOcean and Dokku

I've been playing around with DigitalOcean lately, specifically the pre-rolled Applications they have setup. I'm just blown away at how simple things have become: including setting up your own private Heroku

Take Control of Your Git Repos with DigitalOcean

I love Github - they do so much right. But sometimes I don't want everything to be public and I also don't want to pay so my private repos can be hosted. Gitlab is the perfect answer to this situation - here's how to set it up in 5 minutes for $5/month.

Writing a Better Abstract

I get asked rather often by friends if I wouldn't mind reviewing abstracts they've put together for submission to various conferences. This usually happens after they've been rejected. I'm not a Master Speaker by any stretch - but one thing I know how to do is to craft a compelling abstract. I offered to review an abstract for a friend today - as long as he let me blog it... so here goes..

Everyone Who Tried to Convince Me To Use Ember Was Wrong

Trying to learn Ember? Don't trust the experts.

Biggy Basics Part 2: Getting Relational

Up to now I've posted mostly about the document-oriented features of Biggy, but that's only half the story. Let's take a look at the relational side of things

A Simple Approach to BDD

I just released my latest screencast for Tekpub Pluralsight and I rather like it. It's live coding and I'm building something I need; I did my best to keep it real, and bring in what I've learned from other frameworks like Ruby on Rails and Node.

Repositories On Top UnitOfWork Are Not a Good Idea

There is a trend in the .NET space of trying to abstract EF behind a Repository. This is a fundamentally bad idea and hopefully I'll explain why.

Biggy Basics, Part 1: Documents

Getting closer to pushing a first release so I thought I'd try to expand on what Biggy is and why I made it

Hello Biggy

I don't know why I do these things. Inspiration hits and I think "maybe someone will find this useful". Or not... either way here's Biggy.

PHP or ASP.NET: Did I Do The Right Thing?

In 2001 I had a choice to switch to PHP or learn ASP.NET. I did the latter, and I'm wondering if that was a good idea.

Using Entity Framework 6 with PostgreSQL

Postgres is an amazing database and you can EF with it, sort of. If you want to explore something new and have some fun - read on.

Angular and Backbone Live on Pluralsight

We're slowly rolling our productions into Pluralsight, and two of my favorites are up and ready for you to see.

Update on Planned Tekpub Videos

I was planning on releasing two videos (one on BDD and one on Node) when the whole Pluralsight deal went down. I'm still planning on it... but a few things need to happen first. Here's an update.

Minty: Wrapping It Up

I'm building out a Node application - in this case a Blogging engine - and these posts are my adventures building this thing. This is part 10.

Minty: Working The Evented Pattern

I'm building out a Node application - in this case a Blogging engine - and these posts are my adventures building this thing. This is part 9.

Minty: Conveying an API

I'm building out a Node application - in this case a Blogging engine - and these posts are my adventures building this thing. This is part 8.

Minty: Refactor 1 - Moving To a Document DB

I'm building out a Node application - in this case a Blogging engine - and these posts are my adventures building this thing. This is part 7.

Hello Minty

Tekpub Has Been Acquired

For as long as I have been running Tekpub, my goal has been to expand things. Our subject matter, our market, and above all: Your Minds. Today I'm happy to announce that I'm joining forces with Pluralsight: Tekpub has been acquired. This is good news all around - for you, for me, and for the online learning industry.

Yes Bad Javascript Will Shut Your Site Down

Many people think client-side Javascript won't affect your server even if it's poorly-written. I think that's not the case, in fact I'm becoming more and more convinced that poor Javascript on the client is the problem that's plaguing healthcare.gov.

Are You Really Doing BDD?

I'm a fan of BDD, but I find that many examples (and codebases and default settings) fall short of the original philosophy. Here's Why.

Javascript Frameworks Are Amazing and Nobody Is Happy

When I read things like "Callbacks as our Generations Go To Statement" I’m like maybe we need that. Maybe we need some time where we’re walking around with a donkey with old rusty GO TO statements clinking on the sides.

Knowing More Programming Languages Will Make You Smarter

There's a thought in neuroscience/psychological circles that words are much more than sounds that represent things: they are the abstraction of our higher brain function. Words are language, code is language. Restricting yourself to one or two languages is limiting your cognitive abilities

Vim: The Alpha and Omega

I love experimenting with text editors and occasionally IDEs. In the last 6 months I've used no less than 5 different ones... each time I learn just how valuable Vim is to me.

  • 04/28/2013 | vim

Models and Services in Angular

It can be confusing when trying to structure a client-side application, especially when it comes to separating models from controllers and services. Doing this in Angular means diving into some details.

Ember... What If (Part 1)

The Ember guys are having a hard week. I promised Tom Dale I'd try and help by "arm-waving" an API together that I feel expresses a bit more about the main ideas behind Ember. It's Friday, I've had a beer or two... but I got inspired...

Hell... Is Other People

Get up from your desk or chair or floor and go for a walk. Right now - I challenge you to do this. If you can walk through a crowded place - that's even better. Go by yourself, and soak it in... all of it...

Ember: Baby Steps

If you read my blog, you know I've been goofing around with quite a few Javascript libraries. Some are easier than others. This time, it's Ember's turn.

Convention Over Incantation?

Convention over Configuration is now simply an assumed thing for modern frameworks - and this is (mostly) a good thing. Sometimes I wonder if it's being taken too far.

EmberJS Confuses Me

I've been teeth-deep in Client-side Javascript frameworks over the last 4 months for Tekpub. This month is Angular, last month was Ember's turn and I gave up. It's the first time I've given up - here's why.

Pair Coding With KnockoutJS

I was lucky enough to get some help from Ryan Niemeyer (KnockoutJS core contributor) recently, and, like I do, I asked if I could record it. I love stuff like this: I need this to work well for the Real World, and I want to do it right.

Customer Service vs. Serving the Customer

If you've ever sent a support email to Tekpub, you know I'm in the habit of asking questions. I think truly serving the Customer sometimes means asking questions, and sometimes even saying "No"...

Code Editor Thunderdome

Some people have a code editor they use all their life. Others, like me, jump around a bit depending on the need. I thought I'd share with you what I've found out, as I get asked about this a lot.

Screencasting Like a Pro: The Demos

Once the script outline is set and you have a skeleton of the words and tone you want to use - it's time to bake the demos. Yes: Bake.

Lost at Sea

It was exactly 1:32pm, HST, when the motor died. I stared at the throttle... hoping it was a joke. Land was 50 miles away, and the sea was building, and we were drifting. I thought: "This time dude... this time you really fucked up".

Screencasting Like a Pro: The Script

You have a solid idea of what you want to say - now you just have to say it. The uphill climb begins. This is part 2 of how to improve your screencasting skills.

Screencasting Like a Pro : Beginning, Middle, and End

I get asked a lot about my process, software, and microphone for the screencasts I do at Tekpub. I figured I'd blog about it because the world needs better screencasts. This is part 1 of more to come...

Avoiding Messy Situations With KnockoutJS and Javascript

Any tool can create a mess. Some seem more prone to messes then others - that's what I thought of KnockoutJS until recently when I had a chance to catch up with Steve Sanderson - Knockout's creator. We talked, I tried some different things. I've changed my mind.

PostgreSQL Rising

Postgres is gaining more and more attention - deservedly so. Open database systems like Postgres are standing up squarely against the massive, sprawling (and expensive) "Enterprise" systems like SQL Server and Oracle - usually with feature parity that works better. Of all these systems, Postgres is the smartest, fastest, and most capable.

Try It Quiet

At NDC 2012, I was set to give a talk on NodeJS, and what it's like to work with it. I dislike the quick "hey neat wow" demos - but how do you show what it's like on a daily basis to a room full of people who have likely never tried it?

Speeding Up Tekpub with Sam Saffron

Just pushed the latest drop for Tekpub - Speed: ASP.NET MVC Edition with Sam Saffron. I had a lot of fun doing this production and it's made a massive impact on our site.

Just For Consumption

For some reason I'm reading more and more how the iPad is "only for consumption". I tend to favor my laptop given that I do a lot of video editing and code - but recently I leaned heavily on my iPad for more than just watching movies.

Men In Tech

The tech industry, like many, is rife with sexual discrimination and muted policies towards equality in the workplace. I used to let it ride. No longer - this is my story.

The Weekend With NodeJS

I try not to work on the weekends and instead spend the time learning something new and, hopefully, different. To that end: Tekpub jas just released Hello NodeJS. What are you doing this weekend?

Leaving Your Mark

Don Syme makes a very interesting postulation over on his blog: "Is Javascript code always so full of bugs?" His post goes on to show what happens when you turn on script errors in IE - which is striking. But is it really that easy?

Cleaning Up Deep Callback Nesting With Node's EventEmitter

One problem people face when starting out with Node (and Javascript in general) is handling the asynchronous, deep callback nesting issue. EventEmitters help fix that.

Inversion Of Control: An Architect's Version of Global Variables

One of the tomes we live by: "Global Variables are EVIL!!!!!!" - so we abstract our stuff into patterns and build up highly ceremonial and ornate bits of dramaware called "IoC Containers". For what? To use Global Variables - That's Why.

If I Were Creating Rails.app

Nothing but respect for Yehuda, but I'm thinking the Kickstarter model for creating a tool might not fit terribly well in the OSS landscape. I could be wrong. Either way - I have an idea.

Loading Data From The API - How Much Is Too Much?

I'm really liking what's coming together with this Hypermedia-ish API. So many ideas and approaches are starting to come into focus. Like this one: how much structured data do I pass on the initial load of the API?

Alt.Tekpub: Working More With The Hypermedia (style) API

Continuing on with building out a NodeJS app with Express and other buzzwords - I decided to build out a page using my API, while I build the API.

CoffeeScript or Straight Up Javascript? It's Decision Time

One of the perils of riding blind into the Wild West of Web Programming: Everyone has an opinion on what you should do. What tool you should use, what language you need to flex. It's almost as if they don't want you here...

Alt.Tekpub: Consuming The API

The best way to build an API is to use it while you're building it. At least that's what I find the most effective. But how am I going to consume this API?

My Week With The Hypermedia Cowboys

I asked for help with the Alt.Tekpub API from the RESTafari because I grew incredibly weary of the constant talk and Fielding quotes. Here are my results.

Something Borrowed, Something New

Tekpub just pushed its latest production: Hello PostgreSQL - and I invite you to take a look at some of the very compelling and interesting features this Open Source system has. No seriously - it's worth a look.

Moving The Philosophy Into Machinery

The Alt.Tekpub site is coming together... all the pieces are starting to play nicely. But I still don't have an API. I have an *idea* what I want to do - but I'm waiting on a few more opinions.

Alt.Tekpub: Conceiving a RESTful API

Right from the start I've known this application would serve a number of clients over its lifetime: HTML, Single Page JS Apps, and Mobile. How do we lay this thing out? A touchy subject of late, to be sure.

Someone Save Us From REST

I made the mistake of publicly commenting on someone's idea of a RESTful API. And already - I've probably lost you. I don't know any single term more explosive and zeal-inducing than REST and "what it means to be RESTful". Oh - you say "it's quite simple?" You say "what's so hard?" Pedanticize away my pedantic pedant...

Testing Your Model with Mocha, Mongo, and NodeJS

Mongo is installed, our data is ported. Time to roll together our first model: the Customer. How do you model this stuff with MongoDB and Node?

NodeJS Callback Conventions and Your App

NodeJS has a pretty specific convention when implementing callbacks in modules - function(err,result). Does this always make sense?

Alt.Tekpub: Moving to MongoDB

I've chosen to use MongoDB - now what?

Alt.Tekpub - Installing and Setting Up Node

The data has been rolled into MongoDB - at least the first round - and now I need to get the API up and tested.

Alt.Tekpub - A Transparent Learning Process

I love learning in the open. The simple process of relaying what you see/do/think/learn/fear/love can, itself, be illuminating. So here we go again - I'm going to fuddle around live, with some edge technologies, and you get to laugh at me.

Hands On With MonoStudio 2015

I was given a copy of the fictional MonoStudio 2015 last week so I could pretend to write a review about it. In short, I'm impressed with what I dreamed up - and incredibly happy that the Xamarin team took this challenge on in my dreams...

Kiss The Ring...

... In which we reflect on my ego-mania and just how in the dark Enterprise Devs using OSS really are...

Understanding the Rails Asset Pipeline

Rails 3.1 marks a strange turning point in the evolution of Rails: many hard-core fans are feeling the framework is losing its edge and becoming over-engineered. That might be a premature opinion.

Rails Has Turned Me Into a Cannibalizing Idiot

Some interesting posts flying around about how ActiveRecord is rotting people's brains and how Rails is "pants on head retarded". I figured I might as well respond.

A Little Bit of My Soul Went Into This One

OK maybe the title is a smidge dramatic - but it's the truth. I sweated over each and ever second of Tekpub's latest production and I really believe that it's the best work we've done to date. It's basically a This Developer's Life, in video.

JavaScript Is Your Buddy

I've always marveled at the geeks who can write good, clean Javascript. Not jQuery - Javascript. I've never cared much for the language - but my mind has been changed with all the great stuff coming out.

Fucking Your Way Out

I'm not opposed to swearing in presentations, or anywhere for that matter. I don't cringe when I read F-bombs nor do I care if you have the word "Fuck" embroidered on your Calvins. Swearing says more about your abilities as a speaker then it does your content... that's the problem.

How To Backup Your Postgres DB To Amazon Nightly

We just recently pushed Tekpub over to Posgres and all in all, it was very simple. I won't talk about the reasons we moved from MySQL - that's another post. This one is all about making sure your backups go off nightly.

The Hubble Blew My Mind

Last night, around 8:30pm, I was sitting in my backyard with my 9 yr. old daughter, Maddie. We were looking at stars, trying to identify constellations, when one of them started moving...

Empty Charsets in IE 9 Causing JSON Parsing Errors

My last post was a bit of a pulpy, prosey trope about a problem I had debugging an issue in IE 9. It was supposed to be a fun read - but it turns out I might have actually uncovered an issue with IE 9... so giving the team due respect, here's a bit more detail.

A Fun Little JSON Murder Mystery With IE9

This was a multi-day bug with 10 deployments behind it. I was tired, frustrated and hateful of the incessant problems Internet Explorer brings to the world. I was about to give up. To hack in Yet Another IE Workaround, when I noticed something strange in the response headers...

Rails, Models and Business Logic

I get asked, quite often: "Where do you put your business logic in a Rails model?" This question typically comes from .NET developers who are dabbling with Rails/Ruby and trying to wrap their heads around it. A bit of a slippery-slope - I'm no expert here - but I'll tell you what *I* do...

Tekpub Update, October 2011

Thought I would take a minute or two and update Tekpubbers out there on what's happening in the near future....

Flex The Power of Your Mac Terminal: Aliases

Many developers own Macs as their primary development box, yet they don't fully flex the Unix OS that powers OSX. I was one of them - used to my Windows GUI and clickity-click experience. I've since changed that ...

Pretty Little Ruby

One thing I really like about Ruby is the ability to refactor to one line. Note that this isn't some spartan thing I have going, nor some geek-macho :) "look what I can do". Instead, I find it a lot more readable. Here's why...

The Specialist

One of my favorite movies of all time is Pulp Fiction. There are so many lines... so many scenes that it's hard to describe one as your favorite - but one that comes to mind often is Harvey Keitel as "The Wolf". When Ving Rhames says "I'm sending in the Wolf", you knew something good was about to happen.

Massive's Dynamic Query Syntax

I've been meaning to write this post for a long time and finally today have gotten around to it. I just read Scott's post on fixing up Hanselminutes and looking at his examples of using Massive... eek! There's a better way - let's see how.

How's About We Walk Down There and F**ck Em All

The startup world has an exaggerated sense of competition - almost as if each "player" is a puppy struggling for access to the funding teet. This serves the VC puppet masters just fine, but can ultimately destroy the very business you're trying to start.

Deploying a Site With Git Hooks

This blog runs on Sinatra, using a CMS called Nesta (inspired by Topfunky). I love the control it gives me, but publishing a post meant deploying an update using Capistrano. I like Capistrano, but not as a post publisher... here's how I got around that.

Killing Joke

Time for another music post - this time one of my all-time favorites: Killing Joke. Yes, they're still around and yes, they still rock.

The Mac Is a Great Dev Box

Go ahead and write this off as a Fanboy post - just read this one point: when I bought a Mac as my primary dev machine, my work life became a whole lot easier. I know Macs don't resonate with a lot of people - and that's fine. I find it to be a highly versatile bit of hardware.

The Backbone.js Todo List Refactored - Part 2: Being Reactionary

In the last post I showed the basics of the Todo List app that I refactored from the original. I'll say it again - I'm fairly certain I don't know completely what I'm doing. I'm sort of following my nose a bit and trying to use what I've learned over the last few weeks. In this post - I'll wire up some events to make the Views dance.

The Backbone.js Todo List Sample, Refactored - Part 1

This is a long post with lots of code. I want to be complete, but I also don't want to bore you to tears. If you want to see the refactor right now - here it is. I'm fairly certain I don't know what I'm doing - and that I probably lack the experience to even be writing this post. All I can tell you is that I have a feeling… a not so good feeling… when reading the current Todo List tutorial up on Github. So I figured I'd refactor it and submit a pull request. Is this correct? You tell me…

The Wisdom and Magic of Strings

Magic Strings - they're bad right? What are these repulsive warts on good design? And why do they want to melt my code? The fear of strings drives otherwise talented and wise developers to do some extraordinarily ridiculous things...

The State of Tekpub, 2011

We've been running for a little over a year and a half and I'm happy to say that we're doing really well as far as startups and small business go. It's my goal to be as transparent and communicative as I can be - so if you're a Tekpubber (or are thinking about joining) - here's what's going on.

I Turned My Twitter Account Back On

TL;DR: I turned my Twitter account back on because as much as I like the silence and increase in my efficiency - Twitter helps me in a lot of ways I'm beginning to miss. Go ahead and crow. You were right.

Tekpub's Second Open House

In honor of pushing our newest series Mastering C# 4 with Jon Skeet, Tekpub is opening its doors once again for 24 hours for all people to come and check out the groovy content we have.

Massive Update Number 2

Having a lot of fun with this little tool - and more great comments are coming in. I've added some good stuff in the last few days - like Paging and streamed results.

Massive Update Number 1

I've been having a lot of fun with Massive and people are really giving me a lot to think about - and change/improve! I'm about to push an update today that will break stuff but that's OK, it's still newish.

Longs for 64-bit Applications, and Other Interviewer Gems

I read Scott's post today about Interview questions and it made me chuckle a bit. They're great questions - no mistake about it - but you could almost (just barely) hear an audible set of mouse-clicks as managers around the world copy/pasted those questions into their "What To Ask Developers" Word Doc. I'm not sure the problem is the developer...

Massive: 400 Lines of Data Access Happiness

In a previous post I showed some fun stuff with System.Dynamic and Data Access. I'm happy to say that I tweaked it, loved it, and pushed it to Github if you want to diddle with it. This post is a tad long and dives into Dynamics at the end - read it if you want a fun mental exercise. Otherwise the code is upfront.

New Tekpub Series In The Works: Mastering C# 4.0 With Jon Skeet

I don't normally use my blog to pimp Tekpub, but this is just too good. I've been holding my breath while we get this production together - and all the pieces recently fell into place. I'm giddy like a goose.

A Dynamic Data Utility for WebMatrix

I promised myself I'd never do this again: create an ORM-y/Data Tool for .NET. But I needed some utilities for some work I'm doing, and I extracted the databits because I can't help myself. I like to share - mom taught me right.

A Useful File Scraper Using Rake

I've spent the last 4 hours cleaning up my hard drive. 2 Tb of space fills up rather quickly when you do video/audio work - and today was the day to flush all the stuff I didn't need and organize the stuff I want to keep.

Simple Deployment using Git (or Mercurial) and DropBox

You would think that someone would have tried this before - but I haven't seen anyone blog on it yet. I'm sure I'm not the only knuckle-dragging mouth-breather who eschews High Concept for Dumb-simple solutions when available. Today I think I might have broken my own record for ugly: I deployed a site using Git and Dropbox. And I love it.

Stop Thinking About It. Let It Happen.

I read K. Scott Allen's post today on The Great Rewrite and how it's "wankery" - the wrong answer to solving a business problem. I see his point, but I disagree. I don't think you can plan this stuff. You can try - but it will end up late and uninspiring.

Thoughts on WebMatrix

I was incredibly skeptical when I heard about WebMatrix. I was dismissive and snotty about the WebMatrix data access story. I called the WebMatrix IDE a "MySpace Code Editor". I was wrong. They got it right, and I'm really impressed.

Marla Singer Didn't Exist

Fight Club is one of those movies that you can take at face value and have a great time, or dig a bit deeper into David Fincher's directorial excellence and unravel some crazy stuff. The shifting reality of the film leaves a lot to be discovered.

Creating a Video For Your Team

Haakon Langaas Lageng asked me the other day "How do you make your videos?" His question was less technical, more procedural. I answered him and thought that I would share this with you. You might be thinking "why would I do such a thing?" - the answer is that a well-made screencast saves everybody time and is 10 times as effective as a book.

Twitter, You're Fired

Many have noticed that I've shut down my Twitter account. No, I wasn't suspended and no, I'm not having a mid-life crisis meltdown. I finally "got smarts" and did the math: Twitter costs me a lot more than I get from it.

How To Replace a $600 Piece of Software with 100 Lines of Ruby

Believe it or not - this title isn't link-baiting. I have to deal with encoding video on a near-daily basis and it can be mind-numbing, frustrating, and time-consuming. I finally got fed up and rolled my own. It took 5 hours and 100 lines of Ruby. This is my story.

Using Rails 3 to Build Tekpub

We just pushed the latest build of Tekpub - and it's a pretty massive rewrite. I bounced between frameworks during this rewrite, eventually settling with Rails 3. A few people have asked why. Here's why.

Prepping For Mouse Freedom

I'm working on my keyboard-fu a little bit more today, making sure I know my shortcuts and how to get around. A lot of "oh... yeah!" and "oh wow!" as I'm discovering ways to turn my mouse off. You'll know some of these... some you won't. Either way I thought I'd share what I'm putting together.

Open ID Is A Nightmare

I've always been a major proponent of Open ID. I love the idea and the intention - it's a great solution to a long-standing problem and solves a lot of issues for developers. Unfortunately it creates a ton more for business owners.

Some Thoughts on HAML

I made a rather strong comment about HAML the other day and I think I regret it a bit. I was feeling cheeky - so I thought it might be worth it to ... uncheekify that comment and add some code for context. I love HAML - it helps me do the right thing. Here's why.

Adopt an Open Source Project

When I was at Microsoft I had an idea that I thought would help Open Source projects: prodding employees to ask for a percentage of their time (aka "commitments") to put towards an Open Source project. There were some issues to work out (mostly legal) - but I found an ally in DPE and it almost took off. Unfortunately I left (and so did he) and the idea died. But I think it's a good one - and it doesn't have to belong to Microsoft alone.

If You Learn Only One New Thing This Year, Make It Rack

Rack is something most people have heard of yet don't really understand. If you're a Rails/Ruby dev, you most likely know the basics of it. If you're a Microsoft developer, chances are you have no clue about it. Understanding Rack is not only important for you as a web developer - it's also eye-opening and fun.

Restraining Order Granted for Microsoft's C-Sharp Compiler

A judge from Microsoft's .NET County submitted a 00110101 year restraining order on Friday against Microsoft's C-Sharp development community. The stay-away order bans Microsoft developers from using the compiler's services as a development tool, forcing them to find other means to support their claims they "they are done" with features they are developing.

Flexible Method Arguments in C# 4.0 Using Dynamic Trickery

An idiom that I really like in Ruby is the ability to use a Hash to send arguments to a method. It's not something you would expect - the method calls tend to be quite verbose, yet they are incredibly clear and concise. In VB (back in the day) - passing arguments in an Array was considered a good thing. In C# 4.0, we finally have the flexibility to do this properly.

Moving Your Mind Into Vim Mode

I read a great post today from Yehuda Katz - Everyone Who Tried to Convince Me to use Vim was Wrong. I liked this post - it reminded me of a conversation I had just the other day - trying to explain what I like about Vim.

  • 07/29/2010 | vim

Why I Like Ruby, Part 2: Blocks

It's great to see people so interested in Ruby and what makes it work. My last post sparked a great discussion and I'm happy I did it (thanks for the prod Jon!). In that spirit I thought it would be fun to add some more to it: this time with the nebulous Ruby code block.

The Reasons I Like Ruby

Last night my friend Jon Galloway suggested that perhaps if I could elaborate more on why I like Ruby, then it might help people to understand a bit better why they might want to look into an alternative language (rather than just take my word for it). I sort of believe this leads to arguments. We'll see.

NoSQL In The Wild: How We Do It at Tekpub

I've received a flood of emails since we launched the revamped Tekpub site (using Rails and MongoDb) a few months back. Many people have been surpised to find out that we use both MongoDb *and* MySQL. Here's the story of how we did it and why.

Do Androids Dream of Modal :Sheep?

I don't know how I got on this weird tangent - but I'll warn you now: it's weird. It has something to do with Gary Bernhardt, my brother, and Vim - but I can tell you this much: I'm a changed guy and I'm kind of hooked on Vim.

  • 05/04/2010 | vim

Tekpub MVC 2.0 Starter Site

Steven Sanderson and I just wrapped up our last episode for Tekpub's ASP.NET MVC 2 series. I don't particularly like to write "pimp posts" - but I'm making an exception in this case as we've decided to Open Source the code and I wanted to talk about what's in it.

Reporting In NoSQL

I’m a big fan of giving relational systems the boot when it comes to persisting application data. The more I work with document (or OO) databases, the more I feel really, really dumb for doing it any other way. One question that comes up a lot in conversation, however, is “dude what about reporting – you can’t do that with NoSQL very well now can ya?” and the answer is “yes, correct. You can’t”. As with all things programming: right tool for the right job.

Hello Tekpub

James Avery and I have just launched a new site, Tekpub.com, that is focused on helping developers kick ass in their jobs. There have been a lot of questions about this after our “soft” launch yesterday, so I thought I would address them here.

Thinking About Hawaii? I Got Some Tips For Ya

This post is way off-topic and if you aren’t planning to come to Hawaii, or if you don’t even care about this place and want to see some code – well move along. This post is for people who are thinking or are planning on coming out to the Aloha State – my practical tips and ideas for having an awesome vacation. If you aren’t or don’t care, this post isn’t for you :)

I Suppose I'll Just Say It: You Should Learn MVC

I’m never shy about my opinion – why start now? I’ve been reading a lot of posts flying about on whether you should learn MVC, Summing up the differences so you can decide when to use it, I even found a post that offers a scorecard approach!

5 Secrets To Ninja Writing

Sometimes I find myself with absolutely nothing to say and yet decide to write a post anyway. Do you ever have that problem?

How To Spend a Day on the Islands for Christmas

Last night I was watching the sunset here at my house, watching the lightning ripple across the sky as mellow slack-key tones twanged in the other room. Work can get .

Saimin: Hawaii in a Bowl

This is an off-topic Saturday post that came to mind as I was eating lunch. I haven't written an off-topic in a while, so I thought today might be the day I write about something that is very close to me: one reason I live where I do.

Creating IN Queries With Linq To Sql

Props on this one go to Scott Hanselman who pulled me back from the edge of the cliff last night. I was particularly distraught in getting a MIX demo together where I had to do some queries using LINQ, and I couldn't for the life of me figure out how to fashion an IN query!

Me Gusta Los Angeles

Just got done reading Phil's post about Leaving LA and it made me homesick. The odd thing is, I'm in LA right now, on vacation with my family, sitting in the house I grew up in, visiting my momma and I'm still homesick, but I'm very happy because it's right outside my door, and when I get done I'm headed out into the sights, smells, and sounds of the city that I love.

New SubSonic Provider: LOLCode.NET

Just finished putting the wraps on a new provider for SubSonic using the new LOLCat.NET coding engine.

Microsoft, SubSonic, and Me

This is the sixth rewrite of this post. It's not that I don't know how to write a thought, nor that people are telling me what to write.