-
"…most public objects – and certainly all municipal objects – should offer APIs. Furthermore, specifically with regard to public infrastructures like transit systems, I believe that this should be a matter of explicit government policy. What’s a public object? A sidewalk. A building facade. A parking meter. Any discrete object in the common spatial domain, intended for the use and enjoyment of the general public. Any artifact located in or bounding upon public rights-of-way. Any discrete object which is de facto shared by and accessible to the public, regardless of its ownership or original intention. How’s that for starters?"
-
Better than GetBundle, apparently – hunts down unofficial bundles on github and the like, as well. Nifty.
-
"What a wonderful idea," Jennifer noted. "We never get to see the people who make the games." Michael Abbott is talking about LittleBigPlanet.
-
Leanoard rounds up his favourite DS homebrew games. Some good stuff in here that I didn't know of.
-
"This is just one of many examples that show you can participate in online community without having to pretend to be something you’re not. In fact, participating with authenticity is not just morally good, it’s measurably more effective."
-
Powazek is right; this is definitely smart advertising, and full props to EA/W+K for just taking the credit and not trying to make it "viral"; it'll do that anyway. Although: it really is a glitch, you know.
-
"It’s easy to roll your eyes at the people who look at an Xbox 360 controller or Dual Shock and say it’s too complicated. “Left 4 Dead” proves there are hardcore experiences — not just Wii and DS games — that can draw them in…but the controller remains a challenge that won’t be easily overcome." I'd never roll my eyes; modern pads are very complicated, and twin-stick move/shoot is one of the hardest skills to acquire. Still, a nice piece of commentary on what learning to use a controller looks like, and a healthy reminder.
-
"So when I play Fallout 3, and I think this is probably true for most people who are over forty, some part of me is always wondering if this is what it really would have been like. Not in terms of enemies, but in the way that humans banded together into small groups to create enough order to survive." Bill Harris on a perspective on Fallout 3 that I'll never have.
-
Click "CM Gallery". Watch. In order to illustrate the xiao's ability to not only take but also print photographs, Takara Tomy really pushed their anthropomorphic metaphor to the limits.
-
"Yes, it's true that at no time while playing Prince of Persia did I feel any of the frustration that I felt on a regular basis in Mirror's Edge. But neither did I ever feel the joy of doing something right, of stringing together a perfect series of vaults and wall-runs and feeling like it was based on my own skill. Can one exist without the other? Is it impossible to create joy without difficulty? I don't know. But Prince of Persia lost something significant." I'm a bit worried about the new Prince, especially having read this; the challenge/reward balance is hugely important to it as a series, especially since the marvellous Sands of Time. Also, more worryingly: are developers shying away from letting players fail any more?
-
"The Facebook Republican Army, based on Brighton's tough Whitehawk estate, looks for parties on Facebook. The gang boasts it travels nationwide – and has even bought its own coach." Oh boy.
-
"As the about page says, if you live exactly 6 minutes from Sunset Tunnel East Portal, 8 minutes from Duboce and Church, and 10 minutes from Church Station you may find it useful too." Bespoke tools for yourself that might happen to be useful to others. I like this a lot.
-
"The Firefox add-on "Pirates of the Amazon" inserts a "download 4 free" button on Amazon, which links to corresponding Piratebay BitTorrents. The add-on lowers the technical barrier to enable anyone to choose between "add to shopping cart" or "download 4 free". Are you a pirate?" Almost certainly not the first example; perhaps one of the best realised.
-
"That's how I got here. How long will it be before someone builds a raft and sets sail in space? Bill Gates has over fifty billion dollars. What if Richard Garriott had fifty billion dollars? If he wanted to, would that be enough money to build a rocket to get him into space, and a self-sustaining environment in which he could live? Would he want to sail away and never come back? … No matter what happened in our future, [whoever built that raft] would forever be the first. A thousand years from now, people would remember his name." Bill Harris is awesome.
I’ve just had my first patch accepted on an open source project. Quite chuffed with that! As of this weekend, the Rails calendar_helper
plugin is now at version 0.21. My changes are very minimal, and only really to do with the markup.
Firstly, the default table markup’s had an overhaul. The date now goes into a %lt;caption>
tag, outside the <thead>
, as is appropriate. The <th>
‘s in the thead
now have scope="col"
applied to them, again, as is appropriate.
The only other change is optional. If you pass in an option of :accessible => true
, any dates in the grid which fall outside the current month will have <span> class="hidden"> monthName</span>
appended to them. It could be reasonably inferred that plain numbers are dates that relate to the caption of the table, but the numbers outside the current month should probably be clarified.
You can come up with your own method of hiding content marked as .hidden
; at NPG, we use the following:
.hidden {
position:absolute;
left:0px;
top:-500px;
width:1px;
height:1px;
overflow:hidden;
}
but really, use whatever you’re most comfortable with.
You can get the plugin from Geoffrey Grosenbach’s subversion:
http://topfunky.net/svn/plugins/calendar_helper/
via the usual Rails plugin installation method.
Handling IE specific stylesheets with a Rails plugin
10 December 2006
Time to announce my first published Rails plugin: ie-specific. And, more importantly, time to explain it.
I work as a front-end developer for a large scientific publishing firm. We’re very much committed to standards compliance and accessibility, as such, make every effort to ensure our sites work in as many browsers as possible. And that includes Internet Explorer 5.
Now, prior to IE7, we did this (by and large) by producing standards-compliant stylesheets, and then adding browser hacks where they were the only solution, in order to achieve consistent look/feel in many browsers. Fast forward to IE7, and we’ve now got a problem: many browser hacks (notably * html
) no longer work in IE7 and yet it still has its own raft of styling quirks.
So we’ve decided to change the way we implement browser-hacking. On the project I’m currently working on, we now have a main.css
which contains all the standards-compliant, “correct” CSS. We then place the IE-specific styles inside IE conditional comments. Each browser version gets a css file of its own where necessary, named for the name of the relevant IE conditional filter – eg, lte-ie-6.css
, ie-6.css
, lte-ie-5.500
, etcetera.
When I started work on the front-end integration for this Rails project, it was clear that this was obviously something that could be automated in Ruby – and, given that we were probably going to use it again, it made sense to package it as a plugin so that the next time I came to need it for a project, a quick script/install
would be enough.
Enter ie-specific, currently hosted at Google Code given that a) it’s open-source and b) it’s an easy way to get anonymous public svn.
It’s really simple. First, install the plugin:
script/plugin install http://ie-specific-rails-plugin.googlecode.com/svn/ie-specific
Now, place any IE-specific stylesheets into #{RAILS_ROOT}/public/stylesheets/ie_specific
, named with the appropriate conditional filter (eg: lte-ie-6.css
). Similarly, you can place IE-specific javascript into #{RAILS_ROOT}/public/javascripts/ie_specific
. We use IE-specific Javascript to simulate min/max-width capabilities in Internet Explorer.
Finally, in the <head> of your layout, include the following ERb:
<%= ie_specific_styles_and_scripts %>
Each file in the ie_specific
directories will be automatically included inside appropriate conditional comments – CSS files will be imported via an @import
directive, and JS files will be appropriately escaped as CDATA
(important for us, because we write XHTML 1.0 strict). There’s no unnecessary duplication, either – lte-ie-6.css
and lte-ie-6.js
will automatically be placed inside the same conditional comment.
That’s it, really – it’s very simple, but it’s also a convenient way to keep markup and styles clean and let other developers know exactly what’s a hack and what’s not. For more info, check out the README. And let me know what you think!