tag:blogger.com,1999:blog-87108932024-03-07T17:57:57.809-05:00The Mossy BlogThis blog is shared between Linden and Rachel, who are cousins. The purpose of the blog is to share interesting information, links, and events. We share interests such as Apple Computers, Gaming, SciFi and Fantasy, computers in general, Programming (yay Python), websites and building them, and cool things in general.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.comBlogger166125tag:blogger.com,1999:blog-8710893.post-18253667758572736082012-05-17T10:51:00.003-04:002012-05-17T10:51:59.551-04:00IntelliJ syntax highlighting tip for JavascriptIntelliJ IDEA 10's default highlighting of an unknown variable/symbol is annoyingly non intrusive. It took a while to find, but the setting to change it is "Weak Warning" under Editor: Colors & Fonts: General. I find IntelliJ's scoping/variable finding (what do you call that?) to be excellent, so why an unknown symbol is only a Weak Warning is a little confusing, but here you have it.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-92187404287964137702010-01-14T15:06:00.003-05:002010-01-14T15:27:51.822-05:00Upgrading to FlexUnit 4 for larger projects using FlexUnit .9<span style="font-family: trebuchet ms;"><a href="http://flexunit.org/">FlexUnit 4</a> is a much more powerful solution to unittesting in Flex than <a href="http://opensource.adobe.com/wiki/display/flexunit/About">flexunit .9</a> was, but the documentation is a little sparse for right now. I've found over an over again the promise that it's backwards compatible with .9, and only one place that showed </span><a style="font-family: trebuchet ms;" href="http://www.totalworldannihilation.org/blog/2009/06/22/startusingtheflexunit4betatoday/">an example</a><span style="font-family: trebuchet ms;">. Unfortunately, the code in that solution doesn't really work for larger projects that have many test classes. It took me a minute to realize that FlexUnit 4 doesn't need to be told specifically how to run a given test case, it will take a look at it and try to guess whats needed. The solution, then, because quite simple. Build a Suite like so:</span><br /><blockquote><pre><br /><span style="font-family: courier new;">// Metadata tells FlexUnit4 that this is a Suite and<br />// specifies a runner </span><span style="font-family: courier new;">to use with it</span><br /><span style="font-family: courier new;">[Suite]</span><br /><span style="font-family: courier new;">[RunWith("org.flexunit.runners.Suite")]</span><br /><span style="font-family: courier new;">public class FlexUnit4TestSuite</span><br /><span style="font-family: courier new;">{</span><br /><span style="font-family: courier new;"> //simply make public variables inside the suite<br /> //with the test cases or suites that you want<br /> //run.<br /></span><span style="font-family: courier new;"> public var baseMediatorTest:BaseMediatorTest;</span><br /> // ...<br /><span style="font-family: courier new;">}</span><br /></pre></blockquote><span style="font-family: trebuchet ms;">Then you pass this suite into the test runner like so:</span><br /><blockquote><pre><br /><span style="font-family: courier new;">public function onCreationComplete(evt:Event):void</span><br /><span style="font-family: courier new;">{</span><br /><span style="font-family: courier new;"> core = new FlexUnitCore();</span><br /><span style="font-family: courier new;"> core.addListener(new UIListener(uiListener));</span><br /><span style="font-family: courier new;"> core.addListener(new CIListener(1028, "localhost"));</span><br /><span style="font-family: courier new;"></span><span style="font-family: courier new;"> core.run( FlexUnit4TestSuite )<br /></span><span style="font-family: courier new;">}</span><br /></pre></blockquote><br /><span style="font-family: trebuchet ms;">Much more maintainable.</span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-55173064727877179352009-05-29T10:45:00.002-04:002009-05-29T10:54:46.077-04:00Google finally revived collaborative note takingYes!! It took longer than it rightly should have, but Google has finally <a href="http://googleblog.blogspot.com/2009/05/went-walkabout-brought-back-google-wave.html">re-enabled the world</a> to do collaborative note taking, my hands down favorite part of my early PyCons. <a href="http://www.sauria.com/%7Etwl/conferences/pycon2005/20050325/Python%20at%20Google.html">See this for example</a>. I miss SubEthaEdit all the time. I hope that the SubEthaEdit guys aren't forgotten, now that Google's picked up the collaborative editing torch.<br /><br />This is a very, very powerful, useful tool. Thanks Google!Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com2tag:blogger.com,1999:blog-8710893.post-72036601166607216292009-04-29T08:07:00.003-04:002009-04-29T08:15:40.950-04:00Soda.. or Airline?I knew it! Pepsi changed their logo last year, and when they did it, they put up all these crazy viral ads (for lack of a better term), that just had the logo a couple times in random words. One had like two or three on one bill board. I'm a little behind the times, not having TV, nor really being a soda drinker (Coke, when I do, thankyou), and I was trying to figure out why in the world any airline would advertise like this. I spent a good week wondering which airline it was.. Northwest? A new American Air logo? Finally, I see a new Pepsi can. Oooh, it's for Pepsi. That's the worst soda logo I've ever seen in my life. Here's an <a href="http://www.mcwade.com/DesignTalk/2009/02/does-pepsis-new-logo-work/">excellent breakdown</a>, and they agree with me, it looks like an airline logo. Ahh, satisfaction.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-14406943454830951832009-01-20T12:55:00.003-05:002009-01-20T13:01:42.653-05:00Obama == Hope?<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaJ6aQwzCgK3NxCWN4FS9MSD2jb-SIsY8Y_MXm6ZdmrAXSAGUheKesLWzlhonEVQkfb4lLeS9CLsGN1iz1f_hGknTxFxBvWYrKglgozbEhynqcohEnpXIC4UFn-3IImmu2Izpu_Q/s1600-h/ObamaFlickrTags.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 202px; height: 320px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaJ6aQwzCgK3NxCWN4FS9MSD2jb-SIsY8Y_MXm6ZdmrAXSAGUheKesLWzlhonEVQkfb4lLeS9CLsGN1iz1f_hGknTxFxBvWYrKglgozbEhynqcohEnpXIC4UFn-3IImmu2Izpu_Q/s320/ObamaFlickrTags.jpg" alt="" id="BLOGGER_PHOTO_ID_5293437616622199330" border="0" /></a><br /><div style="text-align: center;">Stumbled across this.. on Flickr, a related tag to "Obama" is "hope".</div>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-25177192488145494912008-08-26T15:49:00.002-04:002008-08-26T15:58:59.715-04:00PureMVC Gotcha<span style="font-family: trebuchet ms;">Don't send notifications that you're expecting a response to in your mediator's constructor (or during construction). Instead, override the onRegister() function and call them there. Your Mediator won't receive notifications it's interested in until after the registration process is finished. Seems pretty obvious, but you can loose track real quick of what's going on in the background when you're using a system like PureMVC that just seems to work.</span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-55432482925175482722008-08-21T15:55:00.005-04:002008-08-21T16:23:58.335-04:00Crazy Flex DateField Insanity<span style="font-family:trebuchet ms;">So, I've been busily putting together a Flex application at work, and we ran into a curious issue where Flash would infinitely loop and crash itself/the browser. (Not tested in Air) To give a little background first, we're following the convention of keeping our data in data objects (or data models), and binding both the visual component to the data model field and the data model field back to the visual component. All of our code is dynamic, so it's written in Actionscript, not MXML.<br />The problem occurred when we had two DateField interface components pointing to the same data model field. The two DateFields would be hooked up to a single data model field, and we saw the following behavior:<br /></span><ul style="font-family: trebuchet ms;"><li>If we bound the DateField.selectedDate to the model.birthday (as an example), with one DateField Instance, all would work. Underneath, it set off the bindings twice when you changed the selectedDate, but that was OK. With multiple DateField Instances, it would crash as it tried to create the second DateField. (This happened when we preinitialized the DateField and without preinitializing the DateField) Underneath, it would set off the bindings between the three items infinitely.<br /></li><li>If we bound the DateField.data to the model.birthday, it would never infinitely loop, but model.birthday wouldn't get updated when DateField was changed. I think that the code for DateField.data is screwy, but according to the documentation, it seems like this is the property you should bind to.<br /></li><li>If I tried binding the DateField.data to the model.birthday and the model.birthday to the DateField.selectedDate, it would also loop infinitely.<br /></li></ul><span style="font-family:trebuchet ms;">Finally, I created a ChangeWatcher on the DateField for when the selectedDate changed. On change, it would call a function that checked to see if DateField.data == DateField.selectedDate, and if not, it set DateField.data = DateField.selectedDate. At first, this didn't work quite right, but I changed it to check the DateField.data.time, which is just the number of seconds since Epoch, and that magically worked. </span><br /><br /><span style="font-family:trebuchet ms;">My theory is that Date comparisons are broken or behave oddly, and if you just compare Date.time, it works as expected. I'm assuming this is why the binding went forever, but I can't be sure.</span><br /><br /><span style="font-family:trebuchet ms;">Hope this helps someone else..</span><span style="font-family:trebuchet ms;"> some also possibly helpful links:<br /><a href="http://devel.teratechnologies.net/steve_examples/Flex_BindingProblem/DateTest.html">http://devel.teratechnologies.net/steve_examples/Flex_BindingProblem/DateTest.html</a><br /><a href="http://bugs.adobe.com/jira/browse/SDK-15618">http://bugs.adobe.com/jira/browse/SDK-15618</a><br /></span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-16697905149286588462008-07-23T16:15:00.003-04:002008-07-23T16:34:06.082-04:00Ant Property Trickery<span style="font-family:trebuchet ms;">I needed to change a property in my ant build task. (Backstory: Flex has poorly documented ant tasks, and they seem to require that you set FLEX_HOME as a property so that the tasks know where to find the Flex compiler. I have 2 sdk's that I want to use, one has a code coverage tool called FlexCover built in, but I can't pass in something like FLEX_COVERAGE_HOME, since the ant task silently uses FLEX_HOME anyways.) Ant properties cannot be changed once they are set. </span><br /><br /><span style="font-family:trebuchet ms;">My solution? Import the build.properties file which does not set my target property (FLEX_HOME), then in my tasks, set the target property depending on which one I need (FLEX_REGULAR_HOME or FLEX_COVERAGE_HOME).</span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-37662560944283746312008-06-12T09:49:00.003-04:002008-06-12T09:56:29.425-04:00PureMVC Documentation<span style="font-family: trebuchet ms;">So, at work we're doing a </span><span style="font-style: italic; font-family: trebuchet ms;">big</span><span style="font-family: trebuchet ms;"> Flex project in PureMVC. (I don't know anything about ActionScript, nor Flex, so this should be interesting). We chose PureMVC over Cairngorm because it looks like it might support the huge code base we're going to have cleaner. Plus, I can wrap my head around the framework a little easier.. probably from my Python MVC roots. I think people just think Cairngorm is simpler because they're used to it. </span><br /><br /><span style="font-family: trebuchet ms;">Anyways. I just wanted to point out that PureMVC has some of the best documentation I've ever seen. I printed out the pdf of the Framework overview, double sided to conserve paper, and it has exactly one page of written text and one page of diagrams per section, so you get the text about the view, and on the facing page, all the UML.</span><br /><br /><span style="font-family: trebuchet ms;">The little things make me happy.</span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-80041034753955194952008-04-16T11:49:00.002-04:002008-04-16T11:52:15.295-04:00Regular Expressions<span style="font-family: trebuchet ms;">Does it ever strike anyone else as odd that regular expressions are like Microsoft Office? (Except much more useful and less aggravating)</span><span style="font-family: trebuchet ms;"> I mean, 95% of regular expressions use only 5% of the regular expression syntax,</span><span style="font-family: trebuchet ms;"> meaning that there's enough time between looking up a particular syntactical construct that you forget it and have to look it up again. My two favorite reg exp tools out there, though I'm sure there are more:<br /></span><ul><li><span style="font-family: trebuchet ms;"><a href="http://www.tote-taste.de/X-Project/regex/syntax.html">http://www.tote-taste.de/X-Project/regex/syntax.html</a></span></li><li><span style="font-family: trebuchet ms;"><a href="http://mochikit.com/examples/mochiregexp/index.html">http://mochikit.com/examples/mochiregexp/index.html</a></span></li></ul>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-64586966598784505762008-04-07T13:01:00.002-04:002008-04-07T13:06:13.571-04:00Internet Explorer 7, Clears and Floats?<span style="font-family: trebuchet ms;">Working on a project, I'm have a form, where labels (containing fields) are all floated. In order to force a label to a new line, I put a class on it with "clear: left", but that, for some reason, causes the words to be smushed to the left. If there's a label text with a space in it, IE7 renders it as </span><br /><blockquote style="font-family: trebuchet ms;">first<br />second</blockquote><span style="font-family: trebuchet ms;">instead of </span><br /><blockquote style="font-family: trebuchet ms;">first second</blockquote><br /><span style="font-family: trebuchet ms;">Anyone run into this before? I'm not css problem savvy enough to know what to Google for. I ended up just putting br's with a "clear: both" class on them in between rows, but it's not as clean as it was before. </span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com2tag:blogger.com,1999:blog-8710893.post-80290284837820407702008-03-14T10:12:00.002-04:002008-03-14T10:38:11.306-04:00PyCon 2008: Collaborative Notes?I'm in the keynote at PyCon 2008, and I'm wondering if there are going to be people doing the SubEthaEdit Collaborative note thing this year. The last con I went to (2005), we took quite a few of these notes, and it was really a lot of fun. If you guys are out there, drop me a note: I'm Linden Wright on Bonjour and Kusmeroglu on AIM.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com2tag:blogger.com,1999:blog-8710893.post-45805995958754471632008-03-06T17:16:00.003-05:002008-03-06T17:23:24.847-05:00Grails Date Trick<span style="font-family: trebuchet ms;">If you have a Date field in one of your domain classes, for instance:<br /><blockquote style="font-family: courier new;">class Person{<br /> String Name<br /> Date Birthday<br />}</blockquote>and you're struggling to figure out a way to get stuff into it without explicitly creating a date and converting strings or integers into it, Grails provides a handy (yet not documented?) set of properties for you. In our example, I could set birthday_year, birthday_month, birthday_day, birthday_hour, etc.. I found this by digging in the scaffolded views and figuring out how they render the <g:datepicker> tag. Now, maybe you don't have to dig.<br /></span>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com4tag:blogger.com,1999:blog-8710893.post-27179042461287798152008-03-02T09:50:00.002-05:002008-03-02T09:54:16.023-05:00Font choices, anyone?I've run into this a couple times, and I find it quite handy, so I'm sharing it for all. It's a list of common windows fonts, their mac equivalents, and the fall back font-family specifier. Plus, everything is in it's own font, so you can see what you're choosing.<br /><br />Just another css developer's link. I'm on a roll here.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-95779707913156872008-03-01T23:08:00.002-05:002008-03-01T23:16:13.766-05:00Color Scheme Generator by WellStyledPerhaps one of the best <a href="http://wellstyled.com/tools/colorscheme2/index-en.html">color scheme tool</a>s I've run across. Simple clean interface, great set of options. I like the rest of WellStyled's website as well, an interesting way to deal with multiple languages.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-52213330069697345512008-03-01T22:22:00.003-05:002008-03-01T22:49:44.037-05:00Lorem Ipsum Dolor Sit AmetI took latin in high school and college (after a failed attempt to take Chinese.. love drawing the characters, hate trying to translate spoken Chinese), so the latin text popular to layout designers and typesetters always appealed to me. <a href="http://www.lipsum.com/">Here</a>'s a useful site that will generate as much of the text as you need, in paragraphs, lists, bytes, etc. I've used it a couple times before, just thought I'd share it with everyone. (Hint, View Source to copy/paste the useful stuff). Ah, good old Lorem Ipsum. As an aside, someone took thequickbrownfoxjumpsoveralazydog.com. Is it strange that that phrase reminds me of my childhood?Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-28305782998015871442008-02-29T10:51:00.001-05:002008-02-29T10:53:25.844-05:00Gotcha: Grails Auto Recompile Doesn't Do GSPGrails does the auto recompile thing, much like Turbogears etc., but it doesn't seem to work for gsp pages, in particular, main.gsp. Which can trip you up, if you're trying to make a couple simple changes to your first Grails app.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-12002624752269896222008-02-27T16:03:00.002-05:002008-02-27T16:09:00.581-05:00Gotcha: Grails CapitalizationSo, apparently Grails doesn't like Controllers starting with multiple capitol letters (i.e. TLAcronym). If you create a domain class with all lowercase, it will capitalize it for you, but if you try to create TLAcronym, it happily plays along. Then if you generate-all or do scaffolding for that domain class, you won't be able to access your controller. I've raised an issue for this here: <a href="http://jira.codehaus.org/browse/GRAILS-2541">GRAILS-2541</a>.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-11524799142934004432008-02-14T16:30:00.004-05:002008-02-14T16:41:32.816-05:00Acegi on Grails Tutorial<p>So, neither the information on the Plugin Page for the <a href="http://www.grails.org/AcegiSecurity+Plugin">Acegi Security Plugin</a>, nor the info in the <a href="http://grails.org/Acegi+on+Grails">acegi tutorial</a> actually work completely. Here's a real tutorial for doing this. (Step 6 is where the existing documentation fails)</p> <p><b>Step 1.</b> Install Grails</p> <p><b>Step 2.</b> Download the Acegi Security Plugin. (I downloaded version 0.2 it as a zip file, to %GRAILS_HOME%/plugins/)</p> <p><b>Step 3.</b> Create a new Grails Project, and cd into the new project folder:</p> <div class="preformatted"><div class="preformattedContent"> <pre>grails create-app SecurityTutorial<br />cd SecurityTutorial<br /></pre> </div></div> <p><b>Step 4.</b> Add the Acegi Security Plugin. Note that you can install plugins by name using some lookup service, but the Acegi plugin won't be found.</p> <div class="preformatted"><div class="preformattedContent"> <pre>grails install-plugin %GRAILS_HOME%/plugins/grails-acegi-0.2.zip<br /></pre> </div></div> <p><b>Step 5.</b> Installing the Acegi Plugin will add some new scripts to your project:</p> <ul><li>create-auth-domains [PersonDomainName] [AuthorityDomainName: this creates the domain model needed by the plugin, Person, Authority, and RequestMap classes, login and logout controllers, as well as the login view. You can give optional names as arguments to replace Person and Authority.</li><li>generate-manager: creates the scaffolding controllers to add new Person, Authority, and RequestMap object in your database</li><li>generate-registration: create a register and captcha controller, as well as matching views, and an emailer service.</li></ul> <p>Run each of these commands.</p> <div class="preformatted"><div class="preformattedContent"> <pre>grails create-auth-domains<br />grails generate-mapper<br />grails generate-registration<br /></pre> </div></div> <p><b>Step 6</b>. Setup BootStrap.groovy to contain some sample data, as follows:</p> <div class="preformatted"><div class="preformattedContent"> <pre>// ProjectFolder/grails-app/conf/Bootstrap.groovyclass BootStrap {<br /><br /> def init = { servletContext -><br /><br />// get a AcegiSecurity AuthenticateService<br />def authenticateService = new AuthenticateService()<br />// use it to create an encoded password<br />def md5pass = authenticateService.passwordEncoder("pass")<br /><br />// Create two sample users<br />// NB: you must specify all the Person attributes, otherwise<br />// Grails will fail quietly to add these to the database<br />def user_root = new Person(username:"root",<br /> userRealName:"Root User",<br /> passwd:md5pass,<br /> enabled:true,<br /> email:"root@example.com",<br /> email_show:true,<br /> description:"Desc").save()<br />def user_admin = new Person(username:"admin",<br /> userRealName:"Admin User",<br /> passwd:md5pass,<br /> enabled:true,<br /> email:"admin@example.com",<br /> email_show:false,<br /> description:"Desc").save()<br /><br />// Add some sample Roles, add the users to those roles<br />def role_superuser = new Authority(description:"Superuser",<br /> authority:"ROLE_SUPERUSER")<br />role_superuser.addToPeople(user_root)<br />role_superuser.save()<br /><br />// See AcegiConfig.groovy, at the bottom, there's a defaultrole<br />// setting, you must make one to allow registration to work.<br />def role_user = new Authority(description:"User Role",<br /> authority:"ROLE_USER")<br />role_user.addToPeople(user_admin)<br />role_user.addToPeople(user_root)<br />role_user.save()<br /><br />// Create some Request Maps<br />new Requestmap(url:"/captcha/**",<br /> configAttribute:"ROLE_SUPERUSER").save()<br />new Requestmap(url:"/register/**",<br /> configAttribute:"ROLE_USER").save()<br /><br /> }<br /> def destroy = {<br /> }<br />}<br /></pre> </div></div> <p>We also have to edit the RegisterController.groovy to fix a bug.</p> <div class="preformatted"><div class="preformattedContent"> <pre>// ProjectFolder/grails-app/controllers/RegisterController.groovy // Line # 159-161<br /> person.save(flush:true)<br /> def parMap =['j_username':person.username,'j_password':params.passwd]<br /> // change this line:<br /> // redirect(controller:'login',action:'../j_acegi_security_check',params:parMap)<br /> // to this:<br /> redirect(controller:'login',action:"auth")<br /></pre> </div></div> <p><b>Step 7.</b> Run the application</p> <div class="preformatted"><div class="preformattedContent"> <pre>grails run-app<br /></pre> </div></div> <p><b>Step 8.</b> Play around. Notice that you when you try to go to the register controller, it asks for a login, then, since you're already logged in, the register controller just shows you your info with a redirect(action "show"). Go delete the RequestMap for the register url, make sure you logout, then try again. See how the captcha is broken? Go remove the captcha RequestMap, and try again.</p>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com2tag:blogger.com,1999:blog-8710893.post-89379812450392134592008-02-14T11:19:00.002-05:002008-02-14T11:28:57.191-05:00Thankyou Markmail<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://grails.markmail.org/images/markmail_red_white_150x47.png"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 165px; height: 51px;" src="http://grails.markmail.org/images/markmail_red_white_150x47.png" alt="" border="0" /></a>So, I've been trying to dig through codehaus's mail archives for the <a href="http://archive.grails.codehaus.org/user">Groovy Lists</a>. Oh wow, what a terrible interface, and miserable search. A lucky Google search later, and I stumble on <a href="http://grails.markmail.org/">Markmail's Groovy Site</a>. Not only do I find the mail thread I was hoping for which solved my problem, but a fantastic interface to some of the larger tech mailing lists that has a fantastic interface and great search. The date restraints and graphs are nice, but even nicer: Awesome, awesome thread display, really nice interface for checking out attachments, perma-links, and powerful search features. Good job guys, I saved enough time to write this :)Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-2397467234864575142008-01-15T14:54:00.001-05:002008-01-15T16:30:17.978-05:00It's not easy being dorkySo, I was hanging out with some of my friends the other night, and we watched the 2nd ep of the new Terminator show, which they had DVR'd. I didn't see the first one, because I don't really watch TV, but it was a pretty good episode. It was odd seeing Summer Glau playing a robot, but not surprising somehow. Anyways, as John leaves the store in the mall, the address of the store is '1337', so I say "haha, leet" (obviously, what else would you say?). No-one in a room full of guys, including the one I'm dating, had any idea what the heck I was talking about, even when I tried to explain. I'm not even sure how to take that.<br /><br />o.OLindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com4tag:blogger.com,1999:blog-8710893.post-66469581832051012972008-01-09T10:38:00.000-05:002008-01-09T10:50:35.006-05:00Rock Band is AwesomeSo, I've been playing Rock Band like a mad fiend since late last year. I never got into the Guitar Hero thing, but I truly love drumming. Singing is also fun. My crowning achievements so far: 621 note streak on Medium with The Strokes song, and singing hard Say It Ain't So while playing the drums on hard for the first time without redlining.<br /><br />Anyways, the fun stuff for you: I made a list of the music videos for the standard Rock Band <a href="http://en.wikipedia.org/wiki/List_of_songs_in_Rock_Band">songlist</a>. (At least all of the ones I could find) Here's the <a href="http://del.icio.us/Kusmeroglu/rockband+musicvideo">html</a> and <a href="http://del.icio.us/rss/Kusmeroglu/rockband+musicvideo">rss</a> feed from my del.icio.us account, and here's the list (not in any particular order):<br /><ol class="posts"><li class="post" key="07b25f7ef1cbe4002a765f5d7327a3c1"> <h4 class="desc"><a href="http://uk.youtube.com/watch?v=ZQxDW_-pz1o" rel="nofollow">You Tube - Van Halen- Won't Get Fooled Again (Live 1993)</a> </h4></li><li class="post" key="3cbe5ae2d8d9fdcd13b06826094fe799"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=EVCkSMwaGGc" rel="nofollow">You Tube - The Killers - When You Were Young</a> </h4></li><li class="post" key="86617816d83fb444752f42fb40a3c3c7"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=ZEsnX4utdyQ" rel="nofollow">You Tube - welcome home - coheed and cambria</a> </h4></li><li class="post" key="1318698ce0604193921bc15ec567aa58"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=5V3_u9i2vEc" rel="nofollow">You Tube - Pixies - Wave Of Mutilation</a> </h4></li><li class="post" key="ec16863fc82e50694844847800f34303"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=k99h5aikc4g" rel="nofollow">You Tube - Bon Jovi - Wanted Dead Or Alive</a> </h4></li><li class="post" key="e4d58337a1a7eb06dec952746045eff3"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=z7ekpbbdz8M" rel="nofollow">You Tube - Stone Temple Pilots Vaseline, Vasoline</a> </h4></li><li class="post" key="439601578a4c1c3d4296b9476e985cb5"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=_hge_il6COU" rel="nofollow">You Tube - Aerosmith - Train Kept a Rollin'</a> </h4></li><li class="post" key="b31ab46068cdc63bee4b5d40003b5cf6"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=A3dQDPNHtbY" rel="nofollow">You Tube - bowie, tokyo 1978: suffragette city</a> </h4></li><li class="post" key="ceb3fd313bd00d8a5d5fb9786ca8286d"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=0Ag8J2NMYmc" rel="nofollow">You Tube - The Clash - Should I stay or should I go</a> </h4></li><li class="post" key="813be27aa06777d304ded4db1c4bc316"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=YU7LZts87Zg" rel="nofollow">You Tube - Weezer - Say It Ain't So</a> </h4></li><li class="post" key="f78fa7b08cfd296047db3689318d62d4"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=-sbqIyeed4g" rel="nofollow">You Tube - Beastie Boys- Sabotage</a> </h4></li><li class="post" key="be205d602992194b2b7be49c2e0ab1eb"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=u5Snehl2bAk" rel="nofollow">You Tube - Iron Maiden: Run to the Hills</a> </h4></li><li class="post" key="ef2bc39f93162a321fdec534ee6268a9"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=RM2Ssne97ek" rel="nofollow">You Tube - The Strokes - Reptilia</a> </h4></li><li class="post" key="a4aa61eab57afe9bc051eb275412b7f8"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=SRwwYWlbP2U" rel="nofollow">You Tube - Black Sabbath - Paranoid</a> </h4></li><li class="post" key="4c48b0aed034aa712c4f372bc729989d"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=5aMVwsEhebs" rel="nofollow">You Tube - R.E.M. - Orange Crush</a> </h4></li><li class="post" key="53173fda01ba1c04832999bc851ebfe5"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=Q12EoUKb4pQ" rel="nofollow">You Tube - The Police - Next To You (Hamburg 1980)</a> </h4></li><li class="post" key="7a8233c10054ea15ad537ef157130745"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=KszD_MfB798" rel="nofollow">You Tube - Mountain - Mississippi Queen - 1970</a> </h4></li><li class="post" key="35fb75531f588177fb1dc1f6828b9083"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=bjY0dU0yELk" rel="nofollow">You Tube - The Hives - Main Offender</a> </h4></li><li class="post" key="0335eb8e0f624629bcdbc2b13af9dd57"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=PxoD_Ca8W9M" rel="nofollow">You Tube - Foo Fighters - Learn To Fly</a> </h4></li><li class="post" key="ec31a818d05c174fee474914cfcc4a06"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=wY3oEvaq71A" rel="nofollow">You Tube - Nirvana - In Bloom</a> </h4></li><li class="post" key="c1adf5aba1f1d66ce899037b6044c9c4"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=rpRiSb_Ir-s" rel="nofollow">You Tube - Garbage - I Think I'm Paranoid</a> </h4></li><li class="post" key="fd67e69ef572ef2c7d7b5ec1fa6ec8be"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=4FjBylFNA6k" rel="nofollow">You Tube - Deep Purple - Highway Star</a> </h4></li><li class="post" key="87fc9240d3b5393263d26944de647aa8"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=pv5zWaTEVkI" rel="nofollow">You Tube - OK Go - Here It Goes Again</a> </h4></li><li class="post" key="4259dc30a46473043eba0ba1cfb5bd7d"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=kk7SKP4PJ2w" rel="nofollow">You Tube - Nine Inch Nails - The Hand That Feeds</a> </h4></li><li class="post" key="6e3cecd6321f354697a1069572450f9d"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=8IGsDYotzTE" rel="nofollow">You Tube - The Outlaws - Green Grass & High Tides - Part One</a> </h4></li><li class="post" key="1d3d987668b86f2d10538a33c0c9ec47"><h4 class="desc"><a href="http://www.youtube.com/watch?v=9nz6Rq1Pvh0" rel="nofollow">You Tube - Queens Of The Stone Age - Go With The Flow</a> </h4></li><li class="post" key="3452d69814e80e35b76bf71a9a944d3d"><h4 class="desc"><a href="http://uk.youtube.com/watch?v=3wmcxqsO8rY" rel="nofollow">You Tube - The Rolling Stones Gimme Shelter</a> </h4></li><li class="post" key="cf95035c7be920a81a0533130be7d3dc"><h4 class="desc"><a href="http://www.youtube.com/watch?v=6Wz1FJqloWc" rel="nofollow">YouTube - Boston - Long Time (11/13/06 at Boston Syphony Hall)</a> </h4></li><li class="post" key="025fb837d0505398503aecac067f3629"><h4 class="desc"><a href="http://www.youtube.com/watch?v=sFs8G0yOtfc" rel="nofollow">YouTube - Molly Hatchet - "Flirtin' With Disaster"</a> </h4></li><li class="post" key="172a566e64b7ef68f475048de90c1047"><h4 class="desc"><a href="http://www.youtube.com/watch?v=nsETamxkT9E" rel="nofollow">YouTube - Faith No More: Epic</a> </h4></li><li class="post" key="d02e38e03a2019b8a981cc022514b2d8"><h4 class="desc"><a href="http://www.youtube.com/watch?v=jRYDetbwegs" rel="nofollow">YouTube - Metallica- Enter Sandman</a> </h4></li><li class="post" key="2cde38742c880d226dc0258dea2e9f3c"><h4 class="desc"><a href="http://www.youtube.com/watch?v=ZdXfkkyI1nQ" rel="nofollow">YouTube - Don't Fear the Reaper - Blue Oyster Cult</a> </h4></li><li class="post" key="d320249950e8a18d66be2e252d7f904b"><h4 class="desc"><a href="http://www.youtube.com/watch?v=TgsoJrzplUI" rel="nofollow">YouTube - Kiss - Detroit Rock City</a> </h4></li><li class="post" key="6750fb6feaa09f3d190a22e6649b4541"><h4 class="desc"><a href="http://www.youtube.com/watch?v=qL02p9KhABo" rel="nofollow">YouTube - FALL OUT BOY: Dead On Arrival</a> </h4></li><li class="post" key="6a2d5e6775904f6547fa5ad1a1acc806"><h4 class="desc"><a href="http://www.youtube.com/watch?v=JiC_qw4LMhM" rel="nofollow">YouTube - Red Hot Chili Peppers - Dani California</a> </h4></li><li class="post" key="9a800d62a7f41de7994ed7b7630d766f"><h4 class="desc"><a href="http://www.youtube.com/watch?v=nxpblnsJEWM" rel="nofollow">YouTube - Radiohead - Creep</a> </h4></li><li class="post" key="29b34978901c3e0fad364c214e480596"><h4 class="desc"><a href="http://www.youtube.com/watch?v=t1N_qX_r4Iw" rel="nofollow">YouTube - Smashing Pumpkins - Cherub Rock</a> </h4></li><li class="post" key="ea22bda7251d4a6e6118bb311eb18322"><h4 class="desc"><a href="http://www.youtube.com/watch?v=8hCn1XXKLNY" rel="nofollow">YouTube - Hole - Celebrity Skin: Video</a> </h4></li><li class="post" key="a96dbed585d4782d617f8863455ffc48"><h4 class="desc"><a href="http://www.youtube.com/watch?v=QLWGSRQrbQs" rel="nofollow">YouTube - Ramones - Blitzkrieg Bop</a> </h4></li><li class="post" key="43a7dbbe5ac5b9583e821821f5327abe"><h4 class="desc"><a href="http://www.youtube.com/watch?v=qiSkyEyBczU" rel="nofollow">YouTube - Soundgarden - Black Hole Sun</a> </h4></li><li class="post" key="81effdc29ce613c0b2a344bc52bdb7d3"><h4 class="desc"><a href="http://www.youtube.com/watch?v=ZrBDivsSe3k" rel="nofollow">YouTube - The Sweet - Ballroom Blitz</a> </h4></li><li class="post" key="39a02feb35881c0eade884533e3e4d61"><h4 class="desc"><a href="http://www.youtube.com/watch?v=DYbZNamJQ5g&feature=related" rel="nofollow">YouTube - Jet - Are you gonna be my girl ?</a> </h4></li><li class="post" key="0d90847db425b7bd239f7a3c601b384e"><h4 class="desc"><a href="http://youtube.com/watch?v=SYJjHCZN46U" rel="nofollow">YouTube - Yeah Yeah Yeahs - Maps</a> </h4></li></ol>Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-13674221516552584792007-12-07T16:04:00.000-05:002007-12-07T16:08:15.625-05:00Documentation stuck in the 90'sI'd just like to put this out there: It's high time that in-application documentation systems adopt tabs. They're obviously using web browser technology, and since we're so familiar with that model, and using tabs, it's highly irritating that they don't follow suit.Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com0tag:blogger.com,1999:blog-8710893.post-60373951619101449752007-11-20T10:31:00.000-05:002007-11-20T11:07:23.732-05:00Fuel! Cell! Consumer! Model! ....!!!!<span style=";font-family:verdana;font-size:85%;" ><br />I'm almost embarrassingly excited about this.<br /><br />Last night, I saw this IMHO <a href="http://www.youtube.com/watch?v=a26C6jiHTcw">awful commercial</a> with the most amazing ending ever - a fuel cell car that will be commerically available!<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://upload.wikimedia.org/wikipedia/en/e/e0/FCX_Clarity.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://upload.wikimedia.org/wikipedia/en/e/e0/FCX_Clarity.jpg" alt="" border="0" /></a><br /><br />Wikipedia had this to say about the <a href="http://en.wikipedia.org/wiki/Honda_FCX_Clarity">Honda FCX Clarity</a>:<br /><br /></span><blockquote style="font-family:verdana;"><span style="font-size:78%;">In 15 November 2007 at the Greater Los Angeles Auto Show, Honda unveiled the FCX Clarity, the first production model, and announced that the car would be <span style="font-weight: bold; font-style: italic;">available for lease beginning in the summer 2008</span>. Initial availability will be limited to the Southern California market, with availability expanding as hydrogen fueling stations become available...<br /><br />...The new FCX utilizes several interesting new features. The new V Flow fuel cell stack can operate at temperatures as low as −30 °C. This is achieved by allowing the gas to flow vertically in the fuel cell stack. The tanks can store up to 5 kg (171 litres) of hydrogen at a pressure of 350 atmospheres, thanks to the new hydrogen absorption materials used. This allows a <span style="font-weight: bold; font-style: italic;">longer range of up to 350 miles (570 km)</span>...<br /><br />...To support the hydrogen fuel-cell technology, Honda also introduced the Home Energy Station (HES). This home solution can convert natural gas to electricity, heat and hydrogen to refuel fuel-cell vehicles. This allows consumers to refuel vehicles with hydrogen at home, important until hydrogen stations become widespread. Alternatively, the hydrogen can be used in the HES's built-in hydrogen fuel cell, providing up to 5 kW of normal or <i><b>backup electricity and/or hot water for the home</b></i>.</span></blockquote><span style="font-size:85%;"><br /><span style="font-family:verdana;">Apparently there are 20 already-leased 2002 prototypes, some of which are here in New York. What especially excites me is that they've come up with with a home refueling solution! With a range up to 350 miles that sounds like it might be a practical enough solution to make up for the lack of hydrogen fuel infrastructure. </span><br /><br /><span style="font-family:verdana;">I wish mass production might get started sooner than 2018..</span></span>Rachelhttp://www.blogger.com/profile/13103391475924814709noreply@blogger.com1tag:blogger.com,1999:blog-8710893.post-58207208932066350652007-11-15T10:14:00.001-05:002007-11-15T10:17:53.091-05:00Best Gaming News All YearI'm super duper stoked about the <a href="http://arstechnica.com/journals/thumbs.ars/2007/11/13/move-aside-lego-star-wars-lego-batman-details-surface">news</a> that they're going to be making Lego Batman games. I love Legos, I love Batman, and I love the Legos Starwars Games. (My awesome sister bought me the complete saga for the Wii as a birthday gift this year) Life doesn't get any more exciting than this. :)Lindenhttp://www.blogger.com/profile/14514124262988508852noreply@blogger.com2