Jul 12

Preparing Yourself for Modern JavaScript Development

There is a lot going on in the JavaScript world these days, both in and out of the browser. Talk about script loaders, client side MVC frameworks, minifiers, AMD, Common.js, Coffeescript, can quickly get your head spinning. And for those people who are completely immersed in that world, it can be easy to forget that the vast majority of JavaScript developers today haven’t heard of any of these tools, and in fact, they likely aren’t even equipped to try these tools.

This post is going to be an attempt to simply address some of the low hanging fruit out there, and try to bring together a few different concepts that a developer should understand before they go out and try to tackle something like Backbone.js or Ember.js. Once you understand most of the concepts in this post, then you can go out and approach more advanced JavaScript topics with a bit of confidence. This post does assume that you have developed with JavaScript before, so if you haven’t, then you might be better off starting with something a bit more basic. With that out of the way, here we go!
Continue reading →

May 12

Big Changes Are Afoot!

The last 6 months have been quite the whirlwind for me! My wife and I had our first child just over 6 months ago, and I’m starting to realize how much free time I had before that! He is wonderful, but it has forced me to push a lot of things aside in order to focus my time on him. I’ve been attending less conferences, writing less, and reading less. I still do way too much work after hours, but hey, I can’t just quit cold turkey!

Besides having my first child, the other big change that I am finally ready to announce is that Al Tenhundfeld has agreed to partner with me at Ecstatic Labs! I’m truly excited about working with one of my best friends, and at the same time I am also excited about what we are going to be able to accomplish. I am going to be rebranding CodeThinked to be the “official” blog of Ecstatic Labs, and both Al and I will be blogging on here. Hopefully that will bring the number of posts back to an acceptable level.

We can’t wait to see what the future holds! Thank you for all of your support!

Apr 12

Developers, Go Forth And Cross Pollinate!

If there is one thing that I have learned in my life, it is that you never learn anything by surrounding yourself with people who agree with you. Putting yourself in a giant echo chamber only serves to amplify and reinforce all the the ideas and beliefs that you hold. And at the same time, it amplifies and reinforces all of your prejudices, stereotypes, and superstitions that you hold.

The same holds true for your career as a developer, you’ll never learn anything new if all you do is surround yourself with other developers who are using the exact same tools and patterns as you. Unfortunately, it is really hard to not do that. How do you surround yourself with developers that don’t use the same tools and patterns as you? I don’t know about you, but most of the teams that I have worked on mostly use all of the same tools and patterns. They solve problems in the same way, and they rarely stray from the tools and patterns that they are most familiar with. And there is a reason for that! A high performing team will leverage the tools and patterns that they know work well, while bringing in additional tools as patterns only as they need them. This allows them to reliably and predictably deliver quality software. This is often an ideal case though, many teams rarely, if ever, bring in new tools and patterns for fear that they will introduce too many unknowns.
Continue reading →

Dec 11

A Case For Using CoffeeScript

If you’re interested in CoffeeScript, then I’m sure by now you have read Ryan Florence’s blog post titled “A Case Against Using CoffeeScript”. In this post, Ryan explains that he uses CoffeeScript at work, and he likes the language, but in his opinion it is too difficult to comprehend and too difficult to debug. My response to this, in the immortal words of Dwight Schrute, “false!”

Before we get started, let me just say that this article is more about disagreeing with some of the statements made in Ryan’s post, its purpose is not to “sell” you on CoffeeScript, but merely point out that CoffeeScript is not something to be scared of. If you want somewhere to show you how awesome CoffeeScript is, I would recommend checking out the official CoffeeScript site and CoffeeScript is for Closers by Brandon Satrom.

Continue reading →

May 11

What ASP.NET MVC Could Learn From Rails

Most developers that are interested in bettering themselves really do want to hear both sides of the story. They want to understand the strengths of other platforms, not so they can move, but so that they can understand how to make their own framework/platform better. When you read this post, I hope you will read it with that in mind. I hope you will see this not as me criticizing your platform, or someone else’s work, but instead as me saying “here is what I think is cool about this other platform, how can your platform get in on that?”

A Tale Of Two Frameworks

There was a time when Ruby on Rails was the hottest thing on the block, and many ASP.NET developers pined for the day when we could leave behind controls and viewstate and move into the glorious world of web development. Cause what we were doing wasn’t web development, don’t kid yourself. Then ASP.NET MVC came out, and a lot of people (myself included) jumped on that bandwagon and have never looked back.

Continue reading →