Tuesday, 5 August 2008

JoNtE.Nu Updated, now using Blogger

Finally I updated http://jonte.nu, no using Blogger as CM tool.
Please stand by for great articles about .Net, Ruby on Rails and iPhone.

Regards
// Jonas Montonen

Friday, 7 March 2008

Minimal Product and Sprint Log App Coming Up

Next week we will release the first beta of out minimal product and sprint log application.

More to come...

Sunday, 2 December 2007

The LCD - WLAN Incident

Since a have worked a lot at home lately I decided to use
my old Dell 20" LCD monitor with my Mac Book.

I didn't know that this particular display disrupts W-LAN connectivity.
Even with only a few meters between my D-Link and the Mac Book I didn't get my W-LAN to work.

After several reconfigurations, WEP password verification, still no luck.
Before tossing the laptop out of the window I sat down next to the W-LAN router och everything started to work again. But as soon as i sat down before the Dell screen, the W-Lan connection barfed. I moved the screen to the floor and bingo, W-LAN heaven.

I guess I should not have agreed upon letting my dear Eva use my "Non WLAN disrupting" 22" Benq LCD Screen ;(

Back to using my Targus Ergo Laptop Stand.
Better than having CAT-5 cables all over the living room.

Friday, 30 November 2007

Centralized "Admins Only Deletions": Link_to Helper

I wanted to make sure that only the admin users could delete stuff in one of my Rails applications.

Since I used the scaffold_resource generator all my controllers had destroy action defined. I moved all of them to a single admin/DeletionsController, adding the class name as suffix to the 'destroy' action name. So SnippetsController's "destroy" action becomes "destroy_snippet".

Now I have better control over the before_filters and upcoming user roles.

I created this application helper to create links to the new actions in the admin controller, REST resource look alike.

ApplicationHelper

def deletion_path(da_object)
url_for :controller=>'admin/deletions',:action => "destroy_#{da_object.class.to_s.downcase}",:id => da_object.id
end


Example Usage: Snippet Show

<% if is_admin?%>
<%= link_to 'Destroy', deletion_path(@snippet), :confirm => 'Are you sure?', :method => :delete %>
<% end %>

Saturday, 24 November 2007

Pragmatic "Single Application" but "Multiple Sites" Using Domains or Subdomains in Rails

Needed:
- Site object that should control most other controllers data load, and default language etc..
- No Parameter or such to select "Site", preferable domain or subdomain.
- Needed to be flexible, new sites could be added in runtime.

Solution:
- Added a before filter that loops over the Sites in the system and matches the specified site_url against the current hostname.
- When/If a site is found, we set the @site instance variable that are used on the other controllers when loading stuff.
- If no sites site_url matches the current host, use the first one.

I guess we will add more things to the "Sites", the language_code is used to control the default Globalize Locale.

ApplicationController


before_filter :load_site

def load_site
@sites = Site.find(:all)
for site in @sites
if request.env["HTTP_HOST"].downcase.include? site.site_url.downcase
@site = site
end
end
unless @site
@site = Site.find(:first)
end
end


Site Configuration UI
The URL's below are the one used when developing, will be replaced in production with;
big-corp.com / big-corp.se etc
Is this approach Too Ugly you think? Please Comment?

Friday, 23 November 2007

Progress of and new name for Technical Project Repository

Renaming
The name Technical Project Repository felt kinda awkward after a while. The new name for the service is now "Project Backlog". In the days of Scrum this felt much better ;)

Progress
Well, quite a lot have been done since last time. Since the target is moving (aren't they always) we also have som new features, not in the product backlog in the first run.

Planned items:

  • Members, Projects, Technologies, Methodologies
  • Role per Member and Project
  • Check box matrix for editing Projects
    Works for now, but might need refactoring when the number of technologies nad Methodologies are increasing.
Unplanned:
  • Snippets per project
  • Attachments per project
  • Image per Member
Screen Shots



Tuesday, 6 November 2007

Technical Project Repository Tool

How do you keep track of what's been done before in your organization?

Below is a brief overview of a upcoming Rails applications that will be available at http://www.scrumfu.com. The focus will be on technical stuff, instead of keeping track of the customer and the project economical figures. Many tools for those things already.


Technical Project Repository Overview

  • Projects
    • Brief History/Description
    • Customer
  • How
    • Architecture
    • Hardware
    • Methodology
      • Scrum
      • RUP
      • Etc
  • Members
    • Project Leaders / Scrum Masters
    • Architects
    • Developers
  • Lessons Learned
  • Achievements
  • References
    • Repository
    • Live Site if any
    • Documentation
Design thoughts
  • Possible to use the plugin - Acts As Taggable On Steroids
  • Will a "Checkbox Matrix" be a suitable GUI for the editing, or do we need something else?
  • How do we index this thing for powerful search
  • Degree of flexibility when/if adding new entities
    • E g: Add new methodology allowed by anyone
  • Build powerful tool for merging entites
    This will allow the users to add users/methodologies and other things with the possibility of merging duplicates found afterwards.