torsdag 5 november 2009

Öredev Torsdag

x Driven Design

Rebecca Wirfs-Brock talked about the various -DD:s out there. Coming from Smalltalk she's been writing several books on object orientation design, RDD being her baby.

RDD - Responsability Driven Design

  • Roles
  • Responsability
  • Collaborations
informed tools and techniques
localize responsability
CRC - Candidate Responsabilities Collaborations

FDD - Feature Driven Design

Feature lists --> Feature by feature:
  1. Domain walktrough
  2. Design
  3. Design inspect
  4. Code
  5. Code inspect
Design first week, code second.

TDD - Test Driven Development

  1. Write simplest test
  2. Run test and fail
  3. Write simplest code that will pass
  4. Run the test and pass
"Design between the keystrokes"

BDD - Behavioural Driven Development

Given context
When event occurs
Then outcome

DDD - Domain Driven Design

CDD - Contract Driven Development

Making the sausage

Intresting walkthrough on the work of BDD-framework in Clojure. BDD and Clojure is interesting in itself, but also interesting how they worked out their ideas.

NoSQL

ACID doesn't scale out. Problems:
  • Data size
  • Connectivity
  • Semi structure (modeling and sparse data)
4 types of new types
  • Key value
  • Big table
  • Document
  • GraphDB
DYNAMO-paper by amazon very influential.
BASE
  • Basically Available
  • Soft state
  • Eventually consistent
Examples:
  • Voldemort - key-value store
  • Cassandra - BigTable
  • Google Bigtable
  • Apache Hadoop HBase - Bigtable
  • Couch DB - Document (REST)
  • Mongo DB - Document
  • RIAK - Document (REST with DYNAMO scaleout)
  • Neo4j - Graph
  • Allegiograph - Graph

The Productive programmer: Mechanics

Kul session om hur man blir effektivare på det personliga planet. NealFord.com.
[slides]

Acceleration

clcl Clipboard enhancement
mousefeed Eclipse-plugin to help learn keyboard shortcuts

Focus

Flow takes 20-30 minutes to reestablish.
TweakUI To turn off windows balloon tips
jedi concentrate Screen dimmer
Turn off notifications like email, phone, etc
Office "quiet time" for example 9-11, 13-15.
Google desktop to find things efficiently, plugin for indexing any filetype.

Productive programmer

Out of the frying pan into the fire
Fun scrum-lover sharing real life anectodes.

onsdag 4 november 2009

Öredev Onsdag

Accomplishing more by doing less


Alltid kul med mjuka inslag, det är en av anledningarna att jag gillar Öredev. Började med några övningar: Tyst minut och 2 minuter att svara på tre frågor medans grannen tyst skulle lyssna: Vad skulle du vilja undvika att göra på jobbet? Hur kan du åstadkomma det? Körde övningen med en cool äldre kille från Oslo som visade sig vara Trygve Reenskaug.

Ytterligare frågor: Vad vill du åstadkomma här på jorden? Hur kan du åstadkomma det?

When less is more

söndag 25 januari 2009

JSF and Seam-notes

Seam and JavaServer Faces(JSF)

MVC-framework used: MyFaces (An implementation of JSF)

Struts, Tapestry, etc all evolved from shortcomings of JSP.
JSF evolved from shortcomings of Servlet.

Other MVC:s
Tapestry - Pages are iPage, not POJO
Spring MVC - not as robust as the other 2
Struts - 1.x popular, but 2.x not widely used
Is seam now widely used?

JSF is a JSR-standard part of JCP

Seam is the glue that gets rid of a lot of xml and backing beans, which makes development faster, code less, maintenance easier.
In effect, the presentation tier talks directly to the business tier.

Sample code from the JBOSS Seam book can be found at http://www.integrallis.com

For components that are missing in MyFaces, like date and calendar, check tomahawk at http://myfaces.apache.org/dowload.html

xml-files
  • web.xml is the standard web deployment descriptor for any Java EE web container. More on page 53.
  • faces-config.xml is the JSF-specific configuration file. Parsed by the StartupServletContextListener specified in web.xml. Specifies backing beans, navigation rules, customized components and renderers used for those components.
  • components.xml

måndag 12 januari 2009

Konferenser

• Jfokus, http://www.jfokus.se/jfokus/, 27-28 Januari 2009
• SDC, http://www.scandevconf.se/, 24 Mars 2009, 3000:-/pers
• JavaZone, http://jz09.java.no/, 9-10 September 2009
• JAOO, http://www.jaoo.dk/, Aarhus, 4-9 Oktober 2009
• Øredev, http://www.oredev.org/, Malmö, November 2009