API Writer

Exploring API documentation

Preparing a Technical Writing Portfolio

Organize writing samples

I organized my writing samples according to the company they were created. I created a nice cover pages to introduce myself and each company.

Standardize document format

I have written many documents in different mediums, i.e wiki, Word, Framemaker and hard copy. I decided to convert all of the writing samples into Word to make it consistent and easier to manage. If I wanted to show the document as it appeared in its original context, I took screen shots and then mounted the image inside of the Word document. The samples take a small hit in clarity but it achieves the desired end result.

Obscure confidential information

Not all information written in a document is “confidential”. To overcome the issue, I reviewed the document and obscured key information points such as IP addresses or key information captured in diagrams. Since I spent so much time gathering information and preparing the information, I think I understand what was confidential and what was not. The point is that a client can see how the document was organized, images placed and how information was written.

Skills

Each document sample should demonstrate the use of your skills.  Each document represents hours of effort and care. In the end, when a client opens up the document, it is important to realize what the document says about my skills.

Do I have to include the entire document? I believe the Sample should be just enough to get the point across. It is like a Reader’s Digest of what you did and should provide enough information for the client to understand. Since it is likely they won’t read a 100 page user manual–choose a chapter.

Visual aid

I also use a portfolio as a sales presentation. When in an interview, I can open up the document to support answers to questions. You can point out how you solved a particular problem and how it was done.

Publish

I created a Word file with the writing samples for each company. I kept the files separated by company to make it easier to assemble a final portfolio. package. I opened a new Word document and added document samples from each company according to a skill set that I wanted to emphasize. I generated the table of contents and then printed it as PDF. Now I can upload this for use on LinkedIn using their new slide show. I can create several different portfolios organized to show a specific skill set.

December 18, 2008 Posted by | SCJP | , | Leave a comment

Learning Java Head First

I purchased a copy of Head First Design Patterns. I read the first few pages and I was impressed by how accessible the content is, I actually remember what I read and I want to keep reading more.

Making information accessible is the first and most important step in good technical documentation. I love adding simple and easy to read illustrations to my own documents. A diagram, line drawing or even a simple model that shows how things connect together in context make a big difference.

Based on what I read, I ordered Head First Java, 2nd edition and Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D.  I didn’t intend to go on a book buying spree but I felt like it was the right thing to do.

January 30, 2007 Posted by | API, SCJP | , | Leave a comment

Whizlab SCJP 5.0 Preparation

I purchased a license for Whizlab’s SCJP 5.0 exam simulator. The simulator helps with exam preparation by presenting questions that mimic the SCJP test conditions. Questions are presented with a time limit and afterwards you can review each test question to understand the correct answer.

I took the diagnostic exam in two parts and I was overwhelmed. The test is intimidating. I learned that the diagnostic is actually harder then the real test. I believe it is a good investment. The exam simulation motivated me to study harder. It infused me with more enthusiasm for learning the Java API.

January 15, 2007 Posted by | SCJP | , , | 2 Comments

Java Language Specification

Java Language SpecificationI found some interesting blogs today and one of them led me to discover the Java Language Specification. I am very interested in reading about API development. I was surprised at how much I enjoyed reading this specification. It reveals many insights into whys and hows for creating Java. I quote from the introduction, “It is intended to be a production language, not a research language, and so, as C. A. R.
Hoare suggested in his classic paper on language design, the design has avoided including new and untested features.” The book was available for download as a pdf and contains 684 pages.

December 12, 2006 Posted by | SCJP | Leave a comment

Yellow Belt Passed

Earned Yellow Belt

I passed the Java SE basic test today. I persevered and succeeded. I attempted the test about 6 times before I passed it. Onward and upward! Now I will prepare to challenge Sensai for my orange belt; Namaste.

I studied the Sun Javadocs collections today. There are 9 different interfaces for handling collections of objects. I continue to study Java Certification chapter 3 (Sierra Bates).

December 11, 2006 Posted by | SCJP | | Leave a comment

Passed Object Oriented Test

Passed Object Oriented ExamI took the Java Blackbelt object oriented test and passed! I gained 3 points toward a yellow belt. I was surprised that I passed because most of the questions seemed so difficult. I still struggle to understand casting and inheritance.

The objectives and questions test object oriented concepts using Java programming elements. The exams consist of questions that have been beta tested by other users. Questions are added to the real exam after enough users vote for it and the exam moderator approves it. Feedback can be used to indicate that a question is not appropriate for the exam level or have other difficulties. As needed, questions go into a repair zone for rewrite and are then reintroduced for further beta testing. Each test has an exam moderator that reviews questions and has the final say in whether questions are inserted into the ‘real exam’ question base.

I have contributed by writing comments suggesting corrections to grammatical errors and misspellings. These tests are useful because they are helping me to prepare for the real test. I like experimenting  with the code snippets and exploring the Javadocs to understand unfamiliar code API. I still haven’t passed the Java SE basic exam yet. I take beta tests, read the SCJP Certification book, read Sun’s Javadocs and review Sun’s Java tutorials.

December 8, 2006 Posted by | SCJP | , | Leave a comment

A Java App of My Own

Programming toolsI continue to make the rounds each day visting JavaBlackBelt and Examulator. I have talked about my goal to learn Java and developers have recommended that I create an application. One of my friends recommended creating a “mad lib” application.

Requirements

  1. Read a file and display a paragraph of text.
  2. Insert words read from a file, insert the words where needed and display it.
  3. Add a user input to dynamically insert content.
  4. Add Junit code to test your code.

December 7, 2006 Posted by | SCJP | 1 Comment

Overloading vs Overriding

OverloadedDo I feel overloaded? You bet. We all have different roles derived from our relationships with each other. At work I’m told what to do; at home, I’m managing the well being of my family. Overloading a method means to use the same name as a method in a parent class and rearranging the order or changing the number of parameters passed into the method.

Ever had a decision overriden? I ask Dave a question about ContractPal (we have 3 Daves at work). Depending on which Dave I ask, determines what kind of answer I will get to my question. Each Dave is a competent programmer and has a work title with ‘developer’ in it. One Dave specializes in writing low level back end code, Dave two is a wiz at front-end technologies like Ajax and Dave three is an enterprise architect making sure everything works together. An overrided method will have the same name and parameters as its super class (parent) but its function is modified: it does something different. Java differentiates between parent and child methods using the this.method and super.method to differentiate the overrided methods just like I use a last name to differentiate between Dave A. and Dave M. and Dave W.

December 5, 2006 Posted by | SCJP | Leave a comment

Staring at the Wall

climb every mountainOk, so here I am staring at a wall again… I have wandered into javaBlackbelt and got my butt kicked. I’ve tried taking the “basic” Java SE test and failed twice with the same score of 50%. I keep finding that I’ve forgotten another yet “basic” fact about Java. The climb up the wall seems a bit tedious but I’m going over things again. It seems that I will not forget now that Constructors are named after the class it will ‘construct’, that it can use any access modifier including private. It can be chained together–wow, what a concept. Sometimes, my study of Java blows me away. Why did I ever think I could document code? Oh yeah, I didn’t know what I didn’t know.

Thank you Sensei, can I have my butt kicked again? Yasa! and everything spins out of control. Confidence? Well, I’ve got to pay the price–keep pushing.

December 2, 2006 Posted by | SCJP | Leave a comment

Constructors

legosJava constructors remind me of legos. Using the right shape, size and color you can create some fun and useful objects to play with. When you invoke a method, the arguments used must match the declaration’s parameters in type and order. 

  •  Parameters refers to the list of variables in a method declaration.
  • Arguments are the actual values that are passed in when the method is invoked.

A constructor may call other constructors of the same class

November 30, 2006 Posted by | SCJP | Leave a comment