Joe Moore's blog



Joe MooreJoe Moore
Standup 02/15/2007
edit Posted by Joe Moore on Thursday February 15, 2007 at 06:52AM

Interesting Things

  • Subversion Tip: We were reminded of a handy tip: when saving shell scripts in subversion, you can save them as both executable and also in a 'native' end-of-line style, which will run on any platform.
<code>
   $> svn propset svn:executable ON somescript.sh
   $> svn propset svn:eol-style native somescript.sh
</code>
  • If you want some easy but very effective charts, check out WebFX's Chart Javascript library. Clients love them! Chart the number of users signed-up per day, etc.
  • Another handy plugin we've used many times: QueryTrace. It helps you find slow database queries, but it really floods your logs with data, so make sure to turn it off in production!
  • We're using appable_plugins for several projects but having problems with dependencies between the plugins, especially in fixtures. This might be caused by our fancy-dancy fixture loading extensions.

Ask for Help

  • One project is doing another round of profiling and is looking at the the latest profiling tools for Ruby and Javascript. They are checking out Firebug's JS profiler, ruby -r profile, and our own custom ruby test benchmarker, amongst others.
  • One project is seeing a very strange memory leak that causes 100MB of memory loss per second (guh! guh!). It started when they begin using ActiveRecord.connection.execute("some sql") to build some reporting statistics, but it seems too early to blame that. Coincidental, though.

Brown Bag Lunch Topic: Rails 1.2 features, ideas, and gotchas.

Total Stand-up Meeting Time: 25:00 minutes

Joe MooreJoe Moore
Interesting/Ask for Help for 02/14/2007
edit Posted by Joe Moore on Thursday February 15, 2007 at 12:12AM

Interesting Things

  • We'll be sending 6 people to RailsConf, so say 'hi' if you see the Pivots!
  • We have a fix to our Amazon S3-causing-mongrel-to-hang problem: you can tell the connection not to be persistent by passing in :persistent => false:
<code>
    AWS::S3::Base.establish_connection!(
        :access_key_id => access_key,
        :secret_access_key => access_key,
        :persistent => false
    )
</code>

Ask for Help

Total Stand-up Meeting Time: 14:00 minutes

Joe MooreJoe Moore
Interesting/Ask for Help for 02/13/2007
edit Posted by Joe Moore on Tuesday February 13, 2007 at 08:43PM

Not much of interest today beyond project updates.

Total Stand-up Meeting Time: 17:00

Joe MooreJoe Moore
Interesting/Ask for Help for 02/12/2007
edit Posted by Joe Moore on Monday February 12, 2007 at 04:47PM

Interesting Things

  • Jetbrains has released their official Ruby and Ruby on Rails plugin for IntelliJ IDEA. Many of us have been using this and it has some nice features: structure view, code completion, open class/symbol, and other Java-IDE style features. Now if they only had a fast debugger... oh sweet, sweet debuggers...

Ask for Help

  • RMagick: One project is having new RMagick problems. Some image uploading and transformations are hanging the Mongrel process. Some are suggesting explicitly calling GC.start after heavy RMagick use. We'll also check the version and insure that it's 1.13.

    Follow-up: Actually it looks like we were hanging connecting to Amazon's S3 service.. Once we figure out the details we'll let you know what the problem was.

    Total Stand-up Meeting Time: About 19 minutes.

Joe MooreJoe Moore
Interesting/Ask for Help for 02/09/2007
edit Posted by Joe Moore on Friday February 09, 2007 at 04:57PM

Brief project reports, and that's it!

Total Stand-up Meeting Time: 9:30 (a new record!)

Joe MooreJoe Moore
Interesting/Ask for Help for 02/08/2007
edit Posted by Joe Moore on Thursday February 08, 2007 at 09:44PM

Interesting Things

  • Trac is up and running, so hammer away at it. It's a candidate replacement for Twiki. If you have experience making the switch, feel free to let us know how it went.
  • We've compiled some amazing ActiveRecord benchmarks. Stay tuned, we might post them here soon!
  • We discovered a bug with RMagick v.1.13 on Linux: Image::change_geometry(geometry_string). In a nutshell, you can perform complex image transformations my passing change_geometry a string; for example, my_image.change_geometry("50x50>") will change my_image to a 50x50 pixel image, but only if it's larger than 50x50. For us, this exact line turned our 600x600 image into a 50x38 image. Weird. Only on Linux.

Ask for Help

  • None today!

Total Stand-up Meeting Time: 19:30

Joe MooreJoe Moore
Interesting/Ask for Help for 02/07/2007
edit Posted by Joe Moore on Thursday February 08, 2007 at 04:53PM

Interesting/Ask for Help for 02/07/2007

Interesting Things

  • We need to check out the differences between RMagick 1.13.0 and 1.15.2. Word on the street is that 1.14.x was wonky and required ruby 1.85.
  • Brown bag lunch today: Ruby caching and our own extensions to it.
  • Dealing with time zones have been a reoccurring problem for teams. One developer suggested checking out the tzinfo-timezone plugin, which works with (and requires) TZinfo

Ask for Help

  • CI can't find rmagick!: One project kept getting a gem error for rmagick
    • require rmagick won't work because the require statement case-sensitive. It has to be require RMagick, but neither the PC or Mac complained, only Linux.
  • Please keep all of the appropriate people informed about CI environment changes.
  • One team requested all of the JavaScript caching experts.
  • Brown bag lunch today... someone order lunch!

Total Stand-up Meeting Time: 22 minutes

Joe MooreJoe Moore
Interesting/Ask for Help for 02/06/2007
edit Posted by Joe Moore on Tuesday February 06, 2007 at 08:44PM

Interesting Things

  • CruiseControl - setup: We are still setting up individual instances of CC for the various projects. There is also a CruiseControl RB project specifically for Ruby, which we'll check out.
  • CruiseControl - branch: We have a custom version of CC that both fixes CC bugs and also runs our Rails CI environment. We've submitted our bug fix patches to the CC team, but they haven't integrated them or formally responded an any way. Bummer.
  • Checking into a 'red build?': At least one project has been 'red', or broken, for several days, while developers continue to check into them. This is considered a no-no, but this situation is rarely black and white: some checkins were supposed to fix the build, so developers checked in additional code, too. More discussion to be had later. Sounds like a great topic for this site.
  • Brown Bag Topic: Rails, Plugins, Etc: What's Supposed to Work but Doesn't. Perhaps we'll post our Brown Bag Lunch topics here. *Don't forget that ActiveRecord creates transactions when saving, and that associated objects are also saved, in transactions. Thus a transaction failure will 'unroll' all of the changes.

Ask for Help

  • More projects need help getting CruiseControl running for their CI environments.
  • One of our projects is using Java + Jetty + JSP + IntelliJ IDEA and a few developers wanted to get some expert advice from everyone. They are running into some weird issues that are not well documented.

Joe MooreJoe Moore
Interesting/Ask for Help for 02/05/2007
edit Posted by Joe Moore on Monday February 05, 2007 at 08:22PM

Interesting Things

  • RailsConf is happening May 17-20, 2007 at the Oregon Convention Center in Portland, Oregon. A contingent from Pivotal Labs will be attending and perhaps even presenting topics.
  • Our Blog is up, but still in stealth mode. We'll have a brown-bag lunch about Blog-posting etiquette, off-limit topics (such as client-specific things) and general common sense.
  • Common Code: several people are going to tackle out growing common code/code sharring issues and comparing the different options available, such as Piston and Appable plugins, against our current solution, which is base on Rails Engines and SVN externals.

Ask for Help

  • A few projects need help getting CruiseControl running for their CI environments. CruiseControl runs our ruby tests, JSUnit tests, Selenium tests... the works. Hopefully we'll post details about this soon.

Other articles: