Wednesday, February 3, 2010

Gene project frustrations

One of the issues I have with the design of Genentech site is the incredibly messy UI (html and jsp). Vignette Portal has a framework of "Grids", "Themes" and "Styles" to deal with different layouts and templates required. Instead all of that is being done in code with tonnes of "if else statements". The resulting code is complex and difficult to understand. Any changes required will take a lot of extra time because of it and will break things and otherwise throw up lot of unwanted errors.

I do not like how Bob just shifts blame on client for changing their mind too much! Anyone who has worked on web development project needs to know that there is an element of educating the client and acceptance of change throughout the project, especially UI. That is the reason people have tried to make it easier to change stuff with frameworks and such. The mentality of doing a requirements then design then code then test then client just accepts the result does not work.
I foresee a great deal of problems with this implementation and it wont be far fetched that the client (Genentech) will decide to just rip apart the implementation and do this from scratch again. Because it will just be too hard to make any changes/adjustments.

I am particularly not impressed with developers on the team (nothing personal). I am not impressed with Bob at all. I think any sizeable implementation project he leads has very little chance of succeeding due to him being too steeped in the old model of software development not suited to web projects at all.

Wednesday, January 13, 2010

Keyword listener questions

  1. Can we make the attribute in CTD searchable so we can use SearchQuery (faster) Ans: No
  2. From Email:
    1. This is a create *and* update listener for CTDs that have a "keyword" attribute. Assume: Yes
    2. Content instances are created if a keyword CI does not exist, but if it does (query case sensitive?) then nothing is done for that keyword. Assume: Yes
    3. What happens if a keyword is deleted in a particular content instance? We can't go on checking every content instance to see if they are not using a particular keyword. Assume: Yes

Tuesday, January 12, 2010

Audience attr listener

  1. Test each content type that had the attr added (Article, form, faq, faq_list, tout)
  2. Test a content type that did not have the attribute added (replacement)

Wednesday, December 30, 2009

Glossary Replacement

TODOs 01/04/2010 10pm
  • Added back boundary together with ^|\W\|\b + phrases + $|\W
  • Removed word boundary from the regex, not sure the impact
  • Is there a need to escape parenthesis, full-stops etc.?
  • Testing - long texts with tags, scripts etc., sizeable sample of terms
  • Tagged item requirement in sec 2.20, use :term: in title and use the same in content, don't use tag? May need a list of valid tags to match
  • Exceptions (while parsing html, while replacing text (regex), error retrieving cache, invalid channel
  • Product channel required instead of infered (can be changed).
  • Case sensitivity - will cause issues with look back and or condition
TODOs 01/04/2010
  • Refactor into smaller classes and methods
  • Loading of cache needs revisiting
  • If time permits look into OSCache for loading and refresh

HTML Parsing
  • Appending tags, attributes
  • Calling replace function
  • Using Jericho parser
Load
  • Servlet
  • Own class, singleton
  • Caching
Regualar expression
  • looping through HashMap for terms
  • Regex
  • Cleanup definition (strip html tags)? Since we have the parser already