2006-10-31

Directions to Lincoln Field #1, Lexington

Here are the directions to our field in Lexington, courtesy of the Lexington coach:

Directions are as follows:

- Rte 2 (West) to Rte. 128 (North)
- Take first exit Rte 2A East Lexington on to Marrett Rd. (Rte 2A - East)
- After 1/3 mile, take a left on Lincoln St.
- Take Lincoln for a mile and the fields are on your right. Lincoln 1 is the field on your left as you enter the main parking lot.

2006-10-24

Manipulating PDF files with Multivalent

I had a contract that I needed to sign and fax to someone, but I don't have a fax machine at home. Instead, I printed and signed the signature page, scanned it, merged it back into the contract in the right place, and send it via email as a PDF file. Here's how I did it.

Multivalent is an excellent Java toolkit for manipulating PDFs. I downloaded Multivalent20060102.jar from http://multivalent.sourceforge.net/download.html, which has a hyperlink to the SourceForge download page, saving the jar file to c:/opt/multivalent. The two Multivalent tools I used were Split and Merge.

Using OpenOffice, I saved the document as a PDF. I split the file into two parts, omitting page 5, the signature page:

$ java -version
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Client VM (build 1.5.0_06-b05, mixed mode)
$ java -cp c:/opt/multivalent/Multivalent20060102.jar tool.pdf.Split -page 1-4 contract.pdf
$ mv contract-x.pdf pp1-4.pdf
$ java -cp c:/opt/multivalent/Multivalent20060102.jar tool.pdf.Split -page 6 contract.pdf
$ mv contract-x.pdf p6.pdf

I printed, signed, and scanned the signature page, and saved as p5.pdf. Then I merged the contract back together:

$ java -cp c:/opt/multivalent/Multivalent20060102.jar tool.pdf.Merge pp1-4.pdf p5.pdf p6.pdf
copy pp1-4.pdf
+ p5.pdf
+ p6.pdf
$ mv pp1-4-m.pdf contract-signed.pdf

It was all set, and I emailed it away.

Update of 2008-11-12: PDF Split and Merge is a GUI-based tool that does the same thing.

Week 8 practice plan

This week's practice plan is the same as last week's: warm up, play small-sided games, and finish with a plain old scrimmage. This is a good practice plan because it's simple and it encourages fast decision making. We'll continue to emphasize passing, especially passes toward the sidelines and switching field.

2006-10-17

Week 7 practice plan

Here is an outline for this week's training. The goal is to reinforce the value of passing, especially away from the center of the field, and to encourage switching the field.

  1. Passing and juggling: Warm up in pairs. Encourage long passes.

  2. 1v1

  3. 1v1+1

  4. 1v1+2: Neutral players play on the side line to encourage passes to the outside. Award extra points for switching field.

  5. 2v2+2 or 3v3+3

  6. 8v8: Extra points for "switch field."

In small sided games, continue to show the defensive wall.

2006-10-13

Oportunistic Software Quality

In 2000, I presented a paper titled Opportunistic Software Quality at the 13th International Software / Internet Quality Week in San Francisco. Here it is, in my continuing hope that someone will find my old publications useful.

2006-10-12

How to add an icon to your web site

I wanted to add a mug shot of myself as this web site's icon. To create the icon, I started with an 8 megapixel photograph of myself that I had used for an ID card. Using the GIMP, I cropped it into a 2150x2150 pixel square, just barely chopping off the top of my head and the bottom of my chin. Then I scaled the image down to a 16x16 pixel square and made the background transparent. I saved it as favicon.ico, with these icon details: 4bpp, 1-bit alpha, 16-slot palette. I copied the file to the root directory of my web site's local staging area, applied chmod a+r to it, and uploaded it to the server.

My web server is Apache 2.0.54. To make Apache serve the icon with the right MIME type, I added this line to /etc/httpd/conf/httpd.conf:

AddType image/x-icon    .ico

To make my web browser load the icon, I cleared the browser's cache, visited the web site, and marveled as my tiny mug shot appeared in the browser tab.

Here are some of the resources I consulted:

Directions to Downs Field (5A), Brookline

Here are directions to Downs Field (5A), Brookline, courtesy of the Brookline coach:

Game time is 1:30PM. The field has changed from the original BAYS listing. We will be playing on a synthetic surface at Downes Field (5A). Directions @ http://www.brooklinesoccer.org/fields.htm

2006-10-11

Build Better Java Applications

In 2000, my friend Spencer Marks and I summarized some best practices for building Java applications in a presentation that Spencer presented at Software and Internet Quality Week Europe in Brussels. We would have presented it together, but I was in the room next door giving another presentation. Here are our slides, Building Better Java Applications, and here is fresh criticism of some of the points we made, based on six more years of experience building Java-based applications:

  • Best practice: UML: Together/J is now Borland's Together. I used the high end version of Together for a few years, and it completely changed the way I developed software applications. The aggregate set of tools in Together made me look smart. Unfortunately, it was very expensive, and it was too difficult to convince my subsequent employer to pay for it, so I stopped using it. I still haven't found a better overall design tool, although some of the tools in IntelliJ IDEA cane make you look just as smart.

  • Best practice: Jikes: I still admire Jikes' adherence to the Java Language Specification. With the advent of ant, some of the other arguments (fast compile time and cross-platform builds) don't hold up as well.

  • Best practice: Builds: make never was a good way to build Java applications. Ant is great for cross-platform builds. Some of my friends advocate Maven for large projects.

  • Best practice: Check in often: This should be called "Integrate early and often." I now use subversion; it is clearly better than CVS.

  • Best practice: Standard library: This could be expanded to a diatribe against the antipattern, "Build all your own infrastructure." Jakarta Commons contains many of the tools application programmers need every day.

  • Best practice: Java idioms: In the Java 5 era, the idioms are a little different. We like for loops again—foreach is the best way to iterate over a Collection. Generics are great for type safety—use them! Just by adding generics to your legacy code, you'll find and fix lots of bugs. java.util.concurrent is great if you need low level synchronization—don't roll your own!

  • Methodology: Refactor often: Today, tools like Eclipse make refactoring easy and painless. I don't know how we got any work done without it.

2006-10-10

Week 6 practice plan

Here is an outline for this week's training. The goal is for the players to continue improving basic skills, especially the possession game. We'll review throw ins and introduce the defensive wall.

  1. Passing and juggling: Warm up in pairs

  2. Throw in wall pass: Player stands at first cone, throws the ball in to his partner, and runs to the second cone, where he receives a pass from his partner. Partner practices ball skills receiving the throw in and attempts to pass back with 1 or 2 touches.

  3. Shield-steal

  4. Right angle passing

  5. 2v2+2 or 3v3+3

  6. Four small goals

  7. Triangle Goal Game

  8. 8v8

Encourage possession (stealing, shielding, passing) and shooting from distance. In small sided games, teach the use of a defensive wall to block a free kick.

J2ME provisioning

In 2004, Boston Mobile hosted a comparison of BREW and J2ME, focused on mobile application provisioning. Here is the presentation I gave on J2ME provisioning.

2006-10-06

J2ME Fundamentals

In 2003, Altisimo built a day-long J2ME training course called J2ME Fundamentals. It's a little outdated, but it's always good to share, so here it is.

Accented characters, Dvorak, and Windows XP

Windows XP has a US-Dvorak keyboard layout, which I use, and a US-international layout that makes it easy to type accented characters like the é in résumé, but it doesn't have a US-Dvorak-international layout that combines the two. Fortunately, someone solved the problem. You can download the "Dvorak International Extended Keyboard Layout" here.

(Of course, when you're posting HTML, don't forget to use é for é, otherwise it might not look right in all applications and on all platforms.)

2006-10-05

Java ME articles

Way back in 2003 and 2004, I was doing a lot of work with J2ME, now known as Java ME. I coauthored a few articles to help people get started developing Java ME applications:

Directions to Leary Field, Acton

Here are directions to Leary Field in Acton, courtesy of the A-B coach:

directions from our web site are a bit misleading The field is located behind the Acton/Boxborough R.J Grey Jr High Take Rt 2 West Through the Concord Rotary (just past the State Police Barracks and MA Correctional Facility) staying on Rt 2, you will go through a traffic light and then take a left exit onto Rt 111 Mass Ave

Follow Straight, after passing through one traffic light the school campus is on your right. Turn right (Charter Rd) just before the tennis courts. The Jr High is the first building on your left. The field is behind it. There is limited parking close to the field but there are lots all along the Jr High on the left.

Leary Field is a new artificial turf field. Please NO FOOD OR SPORTS DRINKS on the field. Water is fine. No cleats on the track use the rubber nats to cross over. There is a bleachers section and some grass areas that can be used for halftime break/snack. Spectators should be in the bleachers.

LinkWithin

Related Posts with Thumbnails