Posts

Showing posts from 2011

Job Search: A Challenging Job

I've been in my new position for six months now so I have enough distance to write this posting. This past year I experienced unemployment for the first time. The why is not so important for this post (there are many good reasons in today's economy), but I wanted to record some tips that helped me through the experience.

1. Take care of yourself. Exercise regularly. Routine and ritual help you keep your balance. I have a meditation practice that was helpful. Get medical help if you need it.

2. Don't go it alone. Stay in touch with your family, friends, and religious community.

3. Focus. Decide what you want although it may very well change as you experience the ups and mostly downs of job search. Have target companies. They'll change too, but the world is so large that without a focus you'll feel lost.

4. Take a break. You can search for jobs all the time if you don't force yourself to take a break. It takes 48 hours to unwind (see Cortisol) though truthfully I…

Communicate the Status of Your Cloud Service!

For my primary email account I use FastMail instead of GMail. Why? FastMail is very fast, reliable, and feature rich. GMail is fast, reliable, and feature rich. I like the features of FastMail, but the primary reason I use it over GMail is the communication that they have with their user base when there is an (inevitable) problem. Here's a post about a recent problem:

http://blog.fastmail.fm/2011/05/15/outage-report-a-cascade-of-errors/

This is the kind of thing I have never seen out of Google or Yahoo and probably never will. It's an advantage of being a relatively smaller service. They have maintained a policy of rapidly communicating with their user as well with a status blog in addition to their regular blog.

SalesForce implemented a similar "communicate with the users" policy after they had a major outage. You can see what they tell you about their service at http://trust.salesforce.com/trust/status/. Google Apps has a similar page at http://www.google.com/appsst…

Video: One Hell of a Long Day (Work at the South Pole)

This was just a fun diversion of hearing what it's like to work at the South Pole. If you're footloose and fancy-free, have a craving for adventure, or are very driven to be cold you may want to try landing a position in Antarctica.

One Hell of a Long Day - A Summer Working at the South Pole
(David Pablo Cohn)
http://www.youtube.com/watch?v=eBaQtsft2bM

Pre-Agile Ideas: Jim McCarthy Videos

Image
I've been a fan of Jim McCarthy since I heard a recorded session of his talk at one of the Microsoft developer conferences back in the 90s. The thoughts represented are echoed in Agile practices today.

There is a nice set of short videos at:

http://www.mccarthyshow.com/the-23-rules-of-thumb/

which are also available on YouTube:

http://www.youtube.com/user/McCarthyShow#g/u

He also has a recent (Dec 2013) keynote at InfoQ:

Culture Hacking
http://www.infoq.com/presentations/culture-hacking-singapore

Some my selected favorites:

Rule 1 - Don't know what you don't know
Rule 4 - Don't go dark Rule 5 - Use feature teams
Rule 6 - Use Zero Defect Milestones
Rule 7 - Don't flip the bozo bit Rule 8 - Beware of a guy in a room
Rule 13 - If you build it, it will ship (daily build)
Rule 23 - Get the team into ship mode




Video: Learning from StackOverflow.com

Joel Spolsky has one of the higher rated programming blogs and goes into the thought behind StackOverflow.com. It's a site designed to share programming information efficiently. Some interesting timecodes:

01:00 he worked on FogBugz

05:00 some interesting discussion about competing information exchange approaches

16:00 he worked on Excel VBA (a source of consulting work for me for years)

25:00 discussion about .NET stack and performance of C# being great

37:40 Things You Should Never Do (don't rewrite a software product from scratch)

44:00 stackoverflow.com is #1 resource for new programming technologies

http://www.youtube.com/watch?v=NWHfY_lvKIQ

PMBOK: Lots of Great Ideas -- Don't Reinvent the Wheel

Regardless of your thoughts about Agile and Waterfall and the amount of process overhead that is appropriate for a project, the PMBOK Guide is an invaluable resource for project management practices that can be adapted to your project. Note that many practices and artifacts fall outside of the areas covered by Agile development processes. For example, project initiation tasks include creation of a project charter and methods for gathering requirements are all covered in the PMBOK Guide.

Besides the Project Management Institute, which is the keeper of all things PMBOK, there are many great examples on the web including one from the state of Oregon at:

http://www.oregon.gov/DHS/admin/pmo/publications/pmo_templates.shtml


With a concise Word document summary of the various templates with links at:


http://www.oregon.gov/DHS/admin/bpm/pmo/docs/PCoE_PMBOK_4TH_EDITION_TEMPLATES.doc



PMBOK: Risk Register

Another useful tool -- see the PMBOK Guide for more information.

The Risk Register is used to help identify and plan for risks on a project.

Some tips:
If you have a PMO there is probably has a template or system you should use.Columns may need to be customized with each project.It needs to be kept updated over the life of the project.Much of the value comes from thinking through the risks to the project and incorporating that understanding into the day-to-day management of the project.It's a useful onboarding tool for other project members. Keep that in mind when creating/updating.

PMBOK: Stakeholder Register

Image
The Project Management Body of Knowledge Guide (PMBOK Guide) defines stakeholders as "persons or organizations who are actively involved in the project or whose interests may be positively or negatively affected by the performance or completion of the project." Stakeholders may include customers/users, the project sponsor, portfolio/program managers, PMO, project manager, project team members, functional managers, operations manager, vendors or other business partners.

An important tool for stakeholder analysis is the Stakeholder's Register. Here's an example:


Some tips:
If you have a PMO there is probably has a template or system you should use.Columns may need to be customized with each project.It needs to be kept updated over the life of the project.Much of the value comes from thinking of the project from each stakeholder's perspective and incorporating that understanding into the management of the project.It's a useful onboarding tool for other project me…

Managing Programming Projects: Don't Lose Sight of Reality

If you're a project manager who came from a programming background it's amazingly helpful to dig back down into code for a day just to remind yourself of how the process really works. Regardless of the approach to project management (Agile, Waterfall, etc.), at the most basic level the development process remains an exercise in code / test / repeat. It's a very satisfying exercise, but it makes you appreciate that there is a lot of detail behind each feature or requirement.


It's my belief that the greatest productivity gain for programmers individually is to have as rapid a code / test loop as possible. This is one of the biggest advantages of interpreted script languages (e.g. JavaScript) over compiled languages. There are obvious productivity benefits to being able to see your work quickly and there are psychological/motivation benefits as well.

Obtaining the PMP Credential

While between jobs Nov/Dec/Jan 2010/2011, I prepared for and passed the Project Management Professional exam to obtain the PMP credential (#1385079). One of the Project Management Body of Knowledge Guide's (PMBOK Guide) best practices is writing up a "lessons learned" as part of closing a project or phase. What follows are some notes and lessons learned from my experience.I felt it would be valuable to obtain the PMP to broaden the number of positions that I could apply for and that has definitely panned out to be a benefit. The credential did not significantly enhance my earning potential, but for many project managers it may do so. I enjoyed the process as a review/capstone of the project management I've done over the years.NJ One-Stop Center Part of unemployment support in New Jersey at the present time includes possible retraining grants. There are evidently a bunch of different programs and the "One-Stop" counselors understand the details. I found them…

JibberJobber: Career Tool

If you're on a job search or looking for a tool to help manage all the bits and pieces of information you have related to your network of contacts check out JibberJobber.com. Spreadsheets can be used for tracking, but quickly become unwieldy after a month of intense networking around a job search.


JibberJobber keeps information in Network (contacts), Companies, and Jobs and lets you interlink between them easily. It's SaaS, has good import/export capabilities, and a way to add log entries by copying to an email address. I also like that it has a free option so you can keep your information around between transitions.

Have you done Agile?

Have you done Agile is a common interview question these days if you're applying for a position related to software development. A few quick thoughts:
When C++ came along many of its features formalized practices that skilled C programmers were using already. For example: encapsulation. Of course C++ introduced many new concepts.
Similarly, Agile (however you define it) formalizes some practices that development groups had been using before the term Agile was coined and added more. For example, timeboxing of releases was a common practice at Dolphin (1984-2005). The concept of a daily build was in use at Microsoft as described in the book ShowStopper (Windows NT development). Zero defect milestones were described by Jim McCarthy in The Dynamics of Software Development. Pair programming was around before XP was coined.
The point is that Agile builds on the past and many of us have done Pre-Agile in various forms and should use this experience to adapt to Agile in whatever form it take…

NSBasic App Studio for HTML5 Prototyping

A great product for prototyping HTML5 apps. It's oriented around the Visual Basic metaphor and has an active development community. A fun way to experiment with HTML5 mobile development: www.nsbasic.com

The "ns" stands for "nice and simple". I've kept in touch with the product since I used it for an NCLEX exam prep Palm prototype project back at Dolphin.