What's life without a little pepper and spice? Sometimes there are things that need to be said, and I have no problem saying them...
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.
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?
Someday, this war's gonna end
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.
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...
... In which we reflect on my ego-mania and just how in the dark Enterprise Devs using OSS really are...
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.
I was reading HackerNews today and saw a really neat service: StackRocket.com. They allow you to create and share a development VM really easily. Unfortunately their introductory screencast is very poorly done, and left me more confused than interested. So I decided to be constructive - here's my redo.
If you're running a startup there's some kind of cliche that you need to be up all hours of the night and working on weekends. While it's true that this can happen, it shouldn't. That's how you lose.
Sitting here during the Fall Holidays in the US and I read a nice post from my friend Phil. I have more respect for that man than many of my other idols - and as usual his simple post made me reflect a bit.
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.
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.
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.
Good Lord Above I am going out of my mind with these "tutorials" that murder javascript at the alter of KnockoutJS. It's a dandy little tool - one that apparently leads people to get drunk on HTML Markup, causing them to puke javascript out their noses and into their examples.
Scott and I were talking yesterday about his compromised Apple ID. I was telling him I didn't understand why he was so upset about it - it seemed perfectly reasonable (as MG Siegler said) that Occam's Razor applies here: Scott has his login/password hacked somehow. But that's not the problem - turns out there's a lot more going on here.
Thomas Holland had some criticism for our latest This Developer's Life - click the link and have a read. In short: he took a bit of exception with the point of view of one of our story-tellers. He doesn't have comments enabled, so I figure I'll respond here.
Sometimes I link to controversial stuff and a weird thing happens: it's as if I wrote it myself! I linked to a post by Ken Egozi earlier today and pretty soon I was being told that I'm feeding the troll mill, that "I know a guy who left .NET and came back" etc.
One of my last posts essentially picked on someone else's work so I figured this time, to balance things out, I'd pick on myself a bit and share with you the complete debacle that was the latest push of This Developer's Life. I really screwed up - I mean big time - and since we learn from mistakes: here's mine. Lot's of them.
I'm in the middle of a 26 hour travel day, on my way to NDC 2011. On the plane to New Jersey (red eye from Hawaii) my daughter and I watched Harry Potter - The Goblet of Fire. There was a scene towards the end where Dumbledore told the students that one of their own had died - and he told them how. Defying the Ministries orders to remain quiet:
Every time I try to bring a bit of "simplicity love" to ASP.NET I get the same response (summarized):
My ex-brother-in-law was your prototypical slimy used-car salesman. He was one of those guys that you really like as a kid, but as you get older your realize that he's actually a douche-bag slimeball. Ironically he taught me something at a pretty young age that I carry with me today: Know when to shut up. That's how you make a sale.
I deploy Tekpub, on average, 3-5 times a week. This used to scare me every single time I did it - for various reasons: no rollbacks, I'd overwrite some of Avery's changes, I'd forget something. Imma go ahead and say it: ASP.NET Deployment is a joke.
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...
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.
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.
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.
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.
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.
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...
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.
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.
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.
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.
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.
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.
"BizSpark" - drop that word in a group of developers and the room will divide immediately: some for, some against. Never in between. It's a fascinating subject, incredibly incendiary, and causes minor detonations on Twitter on a weekly basis. But what is this program, and why is it offered?
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.
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.
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.
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.
One thing that you can count on if you read anything online - you will be insulted at least once or twice a day. Or hour. If you have a blog or Twitter account - it's likely going to be more than that. Sometimes I laugh at it. Sometimes I introspect a bit. Sometimes I put on my headphones and shut off the stream. And then sometimes I write a post.
This really happened: I spent the last weekend with my college/post-college friends at a cabin in Northern California. We do this every year - a way to keep up with each other as the years go by. This is our 8th trip to the Sierra Nevada and there are usually 10-20 guys that show up - from all over the country. We spend the weekend catching up, tuning in and "tuning out" so to speak - and this weekend I had a really funny experience: I realized that one of my friends is the physical incarnation of Ruby - and another is C#. Yes, I was sober. Sort of.
It's been almost a month since I posted anything and it's for a pretty good reason. I've been really busy finishing the Tekpub EF series and also getting ready for NDC 2010, where I gave A bit of a challenging talk. I thought I should explain it a bit, since I'm getting some interesting reactions.
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.
It's Rob picking on someone again! I've been goaded into this post, to be sure, but it's all in the name of good, clean Twitter fun because what came out of it is probably something worth your time. If you're an MS dev it's likely you're hooked on Visual Tooling - and you're paying the price. Get faster, make more money, and get all the [chicks|dudes] using some command line love.
I have this huge monitor in front me, nice and clear. In fact I have two. I have Twitter open in the corner of one of them and from time to time I chase links off to blogs that sound interesting. It's making me blind. Let's discuss the basics of readability and typography mmmkay?
I’ve just turned on comment moderation for my blog – the first time I’ve done so, ever. I had a policy that I won’t delete a comment unless the author was a spammer, used racial/gender/preference slurs, or verbally attacked another commenter. Lately – since I’ve been writing some cheese-moving posts no doubt – I’ve had to read comments that would rather attack me personally than discuss the issue at hand. I even had one commenter suggest that we could chat on Skype so he could explain why I’ve “become an asshole”. A generous offer, no doubt, but I’m not into troll bloodsport and moreover I’m trying to help out the community without derailing the topic into my personal failings. Maybe I am a dick, perhaps I don’t know a thing. It’s OK if you think so, but you have to be a bit more skilled about telling me about it now.
I enjoyed reading Ian Cooper’s post on CodeBetter about the state of Alt.NET, pondering if it’s still got a pulse. I’ve thought the same thing myself and judging by some of the reactions in Twitter and in the comments – no one really seems to care – or at least have decided Alt.NET could use a good thrashing. I’ll spare you my take on it as I agree – “the cause” as it were seems a bit overplayed of late and I don’t think I can add anything new to the “state of affairs”. I don’t really consider myself an Alt.NET person, however I enjoy a lot of the things I’ve learned from people on that mailing list. But I, too have wondered if the whole thing has become completely deflated. If so – I think I have an idea for a way to pump some life back into its veins: Leave. And blog it.
It’s Javier Lozano’s fault – he sent me to http//webformsmvp.com where I read up on the latest efforts on working ASP.NET Webforms into the Model/View/Presenter pattern. The pattern is fine - but it's sort of against the grain when it comes to the web. Didn't we cover this a few years back? I don't mean to sound negative - but there are so many other cool things to do in the Open Source world with all the mojo!
This will be hard to believe, but you have to believe me. You simply must. I have to get the hell out of here as fast as I can and so far everything I’ve tried is failing. I don’t know how this happened but I’m trapped here in 2009 on New Year’s eve, condemned, it seems, to relive this new year’s eve in Ground Hog Day perpetuity – arguing about data persistence, yet again.
I posted this yesterday and violated a prime rule of mine: don’t blog when frustrated. I’ll admit it – this conversation frustrates me as it has derailed so many architectural discussions I’ve had over the years. Sometimes, when frustrated, I spend a bit too much time on the negative. I’ve revisited this post with a bit more thought after a rather “short” conversation on Twitter with my friend Rick Strahl, who had some good points which I crapped all over ;).