Invariant Properties

  • rss
  • Home

Playing Amateur Project Manager

Bear Giles | July 26, 2014

An artist does not just draw an ear on the first try. He or she will do a study drawing different ears, ears from different angles, etc., until he understands it.

Likewise a software developer should not write new code just once. He or she should play around with it a bit until he truly understands it. Few things are more scary than a magic configuration file that “works” but nobody understands. To me it’s a classic “pay me now or pay me later” situation – it’s better to invest the time to understand it when it’s convenient, not at 3 AM when the production server is down and your boss’s boss is screaming for answers.

Many of us expand these small studies into small projects as a way to self-document what we’ve learned. A small project in a github stash is often a better way to refresh your memory than a large pile of static documentation.

Two things happen over time: the small projects get larger and they get more diverse*. At some point it’s natural to start asking how they hook up, e.g., you might know how to write a persistence layer, a business layer, and functional tests. How do you wire them to create small functional tests that pull values from the database, perform calculations, and put the results back into the database?

These integrated projects will slowly become more and more complex. At some point it dawns on you that you’re spending more time thinking about what to do than actually doing it. In other words you’re acting as a project manager. A bad project manager, but a project manager.

The answer is to go to the dark side.

Well, at least visit it and bring back souvenirs.

If we’re in an agile shop we already have good idea about what we need to do. It’s easy to get the necessary software – starter licenses for Atlassian products are only $10/year (self-hosted) or $10/month (hosted) (prices subject to change). On the Microsoft side you can get SharePoint for as little as $3/month. For one user’s perspective see http://abovethelaw.com/2014/07/why-sharepoint-is-the-most-underutilized-legal-tool-that-microsoft-has-to-offer/ – it makes upper managements fascination with that product more understandable.

Good tools are important but we still need to know how to use them. This is where study guides for the Project Management Professional (PMP) are useful. We don’t need most of the material but it gives us a good conceptual framework to understand how to manage our own small projects and to be most effective at work.

All of this takes time – in fact it’s why I’ve been light on blogging – but it’s necessary as our projects get more complex. It isn’t fun but it’s a necessary skill that many people will consider more important than mastering a fourth javascript framework.

In my case I have about seven active projects and meta-projects in JIRA. Several side projects, blog ideas, professional development ideas, even tracking the time I’m spending learning Spanish and preparing for a half-marathon this winter. All told I easily have a year’s worth of weekend projects jotted down and it’s a lot easier to prioritize them when a new idea occurs to me. This would have been impossible a few years ago when I just jotted down notes on index cards that lived in a pile on the corner of my desk.

* I’ll discuss this further later but there’s a tension between being a specialist and being a generalist. Specialists tend to find it easier to land jobs in the short term but if they’re not careful they can hit career death tied to a dying technology. Generalists are more likely to be the unemployed “second choice” but they’re also more likely to have long careers. This may be changing as more companies look for “devops” or “full stack engineers”. Generalists should find it easy to knit different projects together and to see where they have gaps in their knowledge.

Categories
java
Comments rss
Comments rss
Trackback
Trackback

« Getting an Infinite List of Primes in Java Getting A List of Available Cryptographic Algorithms »

Leave a Reply

Click here to cancel reply.

You must be logged in to post a comment.

Archives

  • May 2020 (1)
  • March 2019 (1)
  • August 2018 (1)
  • May 2018 (1)
  • February 2018 (1)
  • November 2017 (4)
  • January 2017 (3)
  • June 2016 (1)
  • May 2016 (1)
  • April 2016 (2)
  • March 2016 (1)
  • February 2016 (3)
  • January 2016 (6)
  • December 2015 (2)
  • November 2015 (3)
  • October 2015 (2)
  • August 2015 (4)
  • July 2015 (2)
  • June 2015 (2)
  • January 2015 (1)
  • December 2014 (6)
  • October 2014 (1)
  • September 2014 (2)
  • August 2014 (1)
  • July 2014 (1)
  • June 2014 (2)
  • May 2014 (2)
  • April 2014 (1)
  • March 2014 (1)
  • February 2014 (3)
  • January 2014 (6)
  • December 2013 (13)
  • November 2013 (6)
  • October 2013 (3)
  • September 2013 (2)
  • August 2013 (5)
  • June 2013 (1)
  • May 2013 (2)
  • March 2013 (1)
  • November 2012 (1)
  • October 2012 (3)
  • September 2012 (2)
  • May 2012 (6)
  • January 2012 (2)
  • December 2011 (12)
  • July 2011 (1)
  • June 2011 (2)
  • May 2011 (5)
  • April 2011 (6)
  • March 2011 (4)
  • February 2011 (3)
  • October 2010 (6)
  • September 2010 (8)

Recent Posts

  • 8-bit Breadboard Computer: Good Encapsulation!
  • Where are all the posts?
  • Better Ad Blocking Through Pi-Hole and Local Caching
  • The difference between APIs and SPIs
  • Hadoop: User Impersonation with Kerberos Authentication

Meta

  • Log in
  • Entries RSS
  • Comments RSS
  • WordPress.org

Pages

  • About Me
  • Notebook: Common XML Tasks
  • Notebook: Database/Webapp Security
  • Notebook: Development Tips

Syndication

Java Code Geeks

Know Your Rights

Support Bloggers' Rights
Demand Your dotRIGHTS

Security

  • Dark Reading
  • Krebs On Security Krebs On Security
  • Naked Security Naked Security
  • Schneier on Security Schneier on Security
  • TaoSecurity TaoSecurity

Politics

  • ACLU ACLU
  • EFF EFF

News

  • Ars technica Ars technica
  • Kevin Drum at Mother Jones Kevin Drum at Mother Jones
  • Raw Story Raw Story
  • Tech Dirt Tech Dirt
  • Vice Vice

Spam Blocked

53,793 spam blocked by Akismet
rss Comments rss valid xhtml 1.1 design by jide powered by Wordpress get firefox