One of my favorite web publications, A List Apart, has pushed an article about a new CSS layout technique that the author, Eric Sol, calls Faux Absolute Positioning. Up until now, I’d always relied primarily on floating divs. Other folks preferred using (real) absolute positioning, but that required the use of JavaScript to keep the footer from smooshing things.
For gridtastic designs, this new technique appears to be the best answer CSS has to offer yet. The benefits of absolute positioning, but using relative positioning + negative margins so as not to break the layout. I plan to try this out on future sites I work on, so I withhold final judgment, but as things look right now, Eric Sol will end up as my new CSS rockstar hero.
My response to Michael Arrington’s ignorant story blaming the recently departed Blaine Cook for Twitter’s problems.
Criticizing Twitter and crucifying a departing Twitter engineer are two entirely different things. Taking one of his presentation slides out of context, conjecture, supposition, lack of any credible witnesses or evidence… This isn’t news, it’s a snipe at a guy who knows a hell of a lot more about his job than you and your 2 Rails buddies. What do you have to gain from attempting to soil Blaine’s reputation?
“Sitting next to” Rails developers does not equate to knowledge about scaling the highest-traffic Rails app there has ever been, any more than my having John Resig’s JavaScript book sitting on my shelf makes me a JS ninja.
This story is a blatant smear job, nothing more. We’ll see who looks a little dumb when Twitter’s problems - which you don’t understand - continue long after Blaine’s departure.
I particularly liked Jeremy McAnally’s well-worded responses in the comments. They sum up everything that is wrong with Arrington’s post:
Wow, this is the most unnecessarily vitriolic articles I’ve ever seen. Twitter and Blaine took Rails to places it hadn’t been before in terms of scale and traffic (just as other sites did with PHP, Java, ColdFusion, and so on), and so acting as if he’s some unskilled hippie that didn’t know what he was doing just makes you look like an idiot. Sure, they had some bumps along the way, but no one else had even gotten on the same road as them to encounter the bumps. Being forced to figure out things along the way because no one has done them before doesn’t make you an “amateur.”
Even further, what the heck qualifies you to criticize someone’s ability to scale a website or doing anything remotely technical for that matter? You’re out of your league. Please stick to talking about business or whining about someone not giving you ad money.
and later:
If you think your Rails guys or gals have their “fingers on the pulse of the Rails community” and they think that Blaine is Twitter’s problem, then they’re lying to you. People who, like, actually know Blaine and other Twitterers can offer you much better information rather than baseless, ad money driven drivel. I can put you in contact with them if you drop me an e-mail (or I’m sure that Coda would be very happy to offer you any details you want).
Of course, investigation probably isn’t your thing since you don’t know much about journalism.
Indeed, it’s totally unacceptable that this kind of tripe passes for responsible journalism. Oh wait – it doesn’t. Perhaps people like Michael Arrington are part of the reason more legitimate blogs don’t get their journalistic kudos.
I don’t subscribe to TechCrunch, and frankly, after this display, I’m not about to. There are plenty of people Arrington could have asked to get the straight scoop, like, you know, a real journalist would have.
Some would say that exaggeration and overstatement is necessary to make an impact. Perhaps, but at what cost? A person’s reputation? For what purpose? To infuriate conscientious geeks? To generate a few hundred extra click-throughs? To wield power great and terrible?
Do your homework, don’t stomp on people who don’t deserve it, and the blogosphere will be a much more civil and harmonious place.
A List Apart, the famous online magazine “for people who make websites,” just published a pair of articles that help people who want to start out with Ruby on Rails: Getting Started with Ruby on Rails and Creating More Using Less Effort with Ruby on Rails.
No more than a day later, Digital Web responded with an Introduction to Django. I just find it interesting that we have all of this in the same week.
Ruby on Rails and Django are competing web application frameworks that follow the MVC pattern. Rails is built on the Ruby programming language, while Django uses Python. It’s friendly competition, of course… it all boils down to whether you’re a Pythonista or a Rubyist.
I am a huge fan of Rails, but I’d also like to learn more about Django… that is, if I can overcome my own Ruby vs. Python bias. One of my fondest memories of SXSW this year was hearing Michael Lopp ask from the stage, “What’s wrong with this Python code?” and someone in the audience called out, “It’s not Ruby!”
Oooh, snap!
These are instructions for how to install nginx (pronounced as “Engine X”, a high-performance open source web server) and PHP with FastCGI on a Mac for development purposes. I spent quite a bit of time figuring out how to do this on my own, so hopefully it will save someone else a little time. For the record, I was using Mac OS X 10.5 (Leopard) on a white Intel Core Duo MacBook at the time of this writing. There isn’t anything terribly non-standard about my particular setup that is worth mentioning, other than a larger-than-standard hard drive and 3rd-party RAM. Obviously, none of this will work on a PC running Windows or Linux, although there are a bunch of places you can go to find out how to install nginx on other platforms. This article, however, focuses only on the Mac platform.
I don’t have much to say about today’s frivolities, but I should that I avoided being rickrolled via Twitter an epic number of times.
Adactio has the full scoop on the April Fool’s pranks that went down on the Web in 2008. My personal favorite of the day was John Resig’s “release” of Classy Query, but then, as Jeremy intimates, I’m obviously a code nerd. I particularly enjoyed Gordon’s comment on that post, quoted here:
I’m glad that you’ve seen the light. Us old guys don’t want none of your fandangled duck-type magic fancypants crap.
The old ways are the best ways!
The other day, I received this clandestine note.
This is a reminder that there will be a meeting called tonight for the BSG-SS (Battlestar Galactica Secret Society) at ADDRESS DELETED. It is imperative that all attend, as there is limited time in which to watch Season 3 before the premier episode of Season 4 next week. We at the BSG-SS do not take this lightly.
There will be popcorn, soda and a festive atmosphere.
BSG Forever \\ //
Apparently, I am a cloak-wearing member of this group, and I may have been participating in some Season 3 episode-cramming this week. But only if it’s strictly off the record. After all, who would openly admit to liking a show called Battlestar Galactica?
Until today, I’d never written a blog post before that wasn’t in the online editor window of the admin interface. That’s a bad idea for a couple of big reasons: you can’t save local copies of drafts without copying and pasting into a file; the server could lose its connection, drop your session, and your current writing along with it. Writing online can be a great convenience, but it’s also risky in that a lost connection could throw the baby out with the bath-water while you’re working on a particularly lengthy post, and all that hard work would be lost.
Those well-crafted turns of phrase? Gone. Those painstakingly sly aphorisms? They’re in the Internet’s ever-expanding /dev/null receptacle. As Murphy’s Law dictates, these sorts of situations tend to happen not just at the most inopportune moments you can imagine, but especially the ones you can’t.
Online blog editing was the whole of my blogging experience until today. Sure, I knew it wasn’t ideal, and I got bitten a few times by dropped sessions while editing a post, but that never prompted me to change my behavior or investigate any solutions to the issue. You win some, you lose some. It was good enough, I thought. I had heard from a many people in my lifetime that the best way to write is to write drafts. A crappy, yet uncensored, first draft to capture the energy of thought, followed by subsequent revisions to harness that energy and make it actually intelligible.
I’m not saying I’ll ever be a great (or even good) writer by starting to write drafts of blog posts, but I think it’s a step in the right direction. One critical component of my blogging process has to change, though: I have to abandon the online blog editor. Blogging through an online form just seems wrong anymore, not just for reliability’s sake, but for posterity’s sake too.
I’ve been a proponent of plain text for a couple of years, thanks mainly to Merlin Mann’s pontifications on the subject. Plain text is the best data format. It’s ubiquitous, and very nearly infinitely backwards- and forwards-compatible (aside from the difference in Windows/Unix newline characters). A ton of other data formats are built on top of plain text: HTML, XML, YAML, CSS, CSV, JSON… but plain text is the key. You can pretty much rest assured that your data will be accessible 50 years from now if you store it in plain text.
When it comes to editing plain text on the Mac environment (my platform of choice), TextMate sits on the top of the heap. For me, it’s a Swiss Army knife of editing anything. TextMate’s awesome bundle API makes it totally extensible. I do nearly all my web development work on TextMate (in combination with Terminal and Firefox/Firebug), so why not blogging too? TextMate does have a Blogging bundle.
After configuring it with this blog’s XML-RPC script, I was able to post new articles and edit existing blog posts in TextMate. On top of that, I can keep and maintain a local record of all of my drafts for future blog posts in plain text! This post was, in fact, written in and posted via XML-RPC with TextMate. Too easy.
I’m never going back if I can help it.
After a pretty long hiatus from blogging, I’m finally starting anew. This time, I’m happy to announce that I’ll be writing as myself, rather than hiding behind hideously ’90s social constructs like screen-names and what-all. This time, WYSIWYG.
I won’t pretend to believe that very many people even knew about me, or missed me, but to those who did, thanks.
Now that that’s out of the way, I’d like to share one of my finest memories from Austin this year. My wife, Sarah, and I went to South by Southwest, she to the film festival and I to the interactive web nerd-athon. What made my week wasn’t the weather, which was downright frigid and damp at times. It wasn’t the food, which started out as this amazing novelty, but after a week of Tex-Mex and chicken-fried steak, I just wanted a good old PBJ. No, the highlights for me were, not surprisingly, the people I met (and almost-met), and the incredible panels I was fortunate enough to attend. OK, and maybe a party or two!
Some of the panels actually made some brave incursions into niche comedy, defying their very panel-ness. In particular, Merlin Mann’s pitch for the Worst Website Ever un-panel had a room packed with geeks eating out of his hand. Warning: If you’re not a web geek, you may not find this very funny. But if so… enjoy. You’ve probably seen this already, though.