Posterous theme by Cory Watilo

Producteev launches new apps for Android, iPhone, Web and Windows!

NEW YORK, NY, January 24, 2012 Producteev, a leading cross-platform task management provider for teams and individuals, today unveiled a slew of new apps that are more hyper-connected through cloud services, desktop OSs and mobile devices. Now available as a web app, iPhone and Android mobile app, and Windows and Mac desktop app, Producteev is moving closer to its goal of enabling universal task management. Today, people need to create and store tasks across a multitude of platforms, devices, services and locations from email and IMs to voicemails and notes, traversing cloud services and sites on work-based PCs to personal laptops, tablets and mobile phones. Leveraging the cloud, Producteev's new apps sync, capture and manage tasks and to-do lists across the broadest list of platforms, devices, cloud services, and locations.  

 

Android App : Download here : https://market.android.com/details?id=com.producteev.android.alpha22

Note: it's a public beta, we know the app is not full featured yet, but it's already a VERY good start, and will keep improving from now on.

Pdt_android_taskdetail

 

iPhone App : Update here (waiting for Apple's approval, should happen any time) : http://itunes.apple.com/us/app/producteev/id306289289?mt=8

New UI, new back synchronisation engine (no more sync issues!), new features!

Pdt_iphone_tasklist

 

Windows Desktop App : Download here : http://hostedapps.producteev.com/windows/producteev-windows-v1.zip

First app on Windows Desktop, let us know what you guys think!

Pdt_windows_overview

 

New Web App

New UI, new features like sub-tasks, printable task lists, integration with TaskRabbit, cross-workspace notifications, cross-workspace search, new onboarding process for teams, and so on and so forth. Just log on and try it out!

Pdt_web_overview

 

This is what we've been baking for you guys for the past few months, hope you like it!

Don't Waste Your Weekend! #HowTo Stay Productive

Weekends are generally meant to be a time to unwind, rejuvenate, and focus on the other aspects of life that matter- but do you find yourself wasting valuable weekend-time?

For those of us who don't have weekend jobs, or plans to visit family/friends, and all household errands have been completed; there are still ways you can be productive during the weekend!

 

Give in to Your Creativity

Write out a list of creative things you would like to do, but don't quite find time for during the work-week. Teach yourself to sing/play/dance to a favorite song. Create something thoughtful for loved ones. Experiment bold new recipes. Post some how-to videos on YouTube. It'll feel so good to cater to the side of you that you normally set-aside. You may learn more of yourself in doing so!

Give in to Your Inner Child

Go ahead and relive the joy of filling the pages of a coloring book! Disregard your grown-up diet, and indulge in your favorite childhood treats! Go to the park with a child, and play to your hearts content! Or maybe you can play with slime, or clay. Nothing wrong with it, no one will judge you. It's all quite humbling.

Give in to What You've Abandoned

Come on now. Don't let 'writers block' be your excuse for not finishing your novel, or posting new entries to your blog- you know you want to continue, but you've become too comfortable with not! You may have many messages waiting for you in one of the social media accounts you signed up for and later neglected- revisit those!

 

Surely there are tens of hundreds of thousands more ideas that can be added to this list. What are some of your suggestions?

You are Stronger Than Twitter!

Don't let Twitter snatch you away from your tasks!

Failwhale
What is it about Twitter that gets us hooked? According to Twist Image President, Mitch Joel:

 

  • The short messages (tweets) happen in bursts. This is both addictive to watch and so "snackable" that it's hard to resist.
  • It's easy to bang out a tweet in a couple of seconds... and it feels good to let people know what you're thinking/what you're up to.
  • It happens in real-time, so whenever you're engaged with Twitter, you are "in the moment."
  • People say, do and share interesting things.
  • It's the ultimate in reality programming. What's more interesting: to watch the story of people we don't know (or those that are made up) verses the story of people we do know or are interested in?
  • It's highly mobile. Tweeting or following Twitter is something that's easy and mindless to do when you're standing with one arm wrapped around the pole in a subway or have a handful of minutes while in-between meetings.
  • It's an easy way to follow and connect with new and interesting people.

 

Be cautious of your Twitter activity- don't get sucked into the vortex of multiple endless exchanges! You would be so much better off if you were to take that very same energy, enthusiasm, and zest, and place it towards your own tasks!

How good are you at resisting the temptation?

 

Stay Focused at Work With These #TipsAndTricks

Regardless of the size of your office setting, it is sometimes difficult to remain focused at work. One may typically find other co-workers to blame, but we each have the ability to greatly reduce the disturbance factor by tweaking our own actions. Entrepreneur Dave Cheong came up with a fantastic list of tips and tricks that are sure help you make the most of your day and get stuff done!


  1. Write out a daily task list and plan your day. There’s nothing like a task list sitting next to you to keep you focused. When you have a list of the things you need to accomplish in a day, having that close to you constantly reminding you of what needs to be done is a great way of keeping on track.
  2. Allocate time slots colleagues can interrupt you. In a busy work place, people are moving and talking all the time. If you play a role in a team where others need to interact with you, try allocating a time slot they can interrupt you. Instead of having people stop by your desk every 10 mins and asking you questions, let them know of a time in the day, say between 2-4pm you can be interrupted. At all other times, you can really get some work done.
  3. Apply time boxing. Instead of working at something till it is done, try working on it for a limited period, say 30 mins. By that time, the task is either completed or you allocate another time slot, perhaps in another day, to pick it up again. This way, you keep your work fresh and engaging throughout the entire working day.
  4. Setup filters in your email. If you spend a lot of your time communicating and planning in front of your computer, chances are you deal with emails on a frequent basis. Setting up filters in your email client can be a great way of sorting out what’s important and urgent from personal stuff which can wait. Instead of dealing with a single Inbox with hundreds of unread email, you only need to deal with smaller folders categorised by project, priority and context.
  5. Do not check personal email in the morning. Checking personal emails can be very distracting even with filters setup. This is especially true when your friends send you links to interesting articles, jokes or videos on YouTube. If you’re not careful, you can get side tracked for hours. Instead of checking your personal email as soon as you get in, try starting work straight away. This will build up some momentum as you ease into your work day. You should check your personal email only after you have a few tasks completed or underway. Also, if you don’t want to perpetuate a particular distracting email thread, just don’t reply to it until after work.
  6. Set your IM status. If you use Instant Messenger, when you don’t want to be disturbed, make use of the status and set yourself as being away or busy. Your friends and colleagues will honour that. They can either send you an email or look you up later when you aren’t as busy.
  7. Listen to the right types of music. Music is a great way of settling into the working routine. In addition, having music can drown out office noises like printers and background chattering. Be careful though, depending on personal preference, some types of music are not particularly conducive to productive work. For me, I can’t work when listening to songs with lots of lyrics because the words interrupt my thinking process.
  8. Use the headphones but leave the music off. Some people prefer to have absolute silence when working. I think that also depends on what kind of work you are doing. If you’re doing some serious planning or something computational, having music blasting in your ears may not be the best thing for keeping focused. Try using headphones or ear plugs to block out the background noise but leave the music off.
  9. Fill up a water bottle. Keeping yourself hydrated is pretty important for all sorts of health reasons. Instead of going to the water cooler with your glass every hour, try filling up a water bottle at the start of the day. This does a couple of things – firstly, it limits the starts/stops associated every time you get up for water and secondly, it avoids being sucked into lengthy discussions around the water cooler.
  10. Find the best time to do repetitive and boring tasks. No matter how much you try to avoid it, you’re going to have to face doing things which are either repetitive or boring. For these tasks, I find it is best to choose a time in the day to work on them. For example, I’m more alert at the start of the day, so it’s better to work on things which require brain power early. Working on boring tasks that can be done via auto-pilot are better left towards the end of the day when I’m usually tired.
  11. Bring your lunch and have it at your desk. I’m not suggesting you do this every day, but if you really have to focus and are trying to meet a deadline, having your lunch at your desk really helps. The normal one hour lunch break can really interrupt any momentum you might have built up during the morning. I find when I’m eating lunch at my desk, my lunch breaks are shorter and I can get through a few emails while I’m eating. After I’m done, I’m straight back working on the next task.
  12. Don’t make long personal calls. Most of us have a good separation between our working and personal lives (or a least try to). I think we can all agree we should avoid having work intrude on our personal time as much as possible. The reverse of this also applies. Try limiting the time you spend doing personal things during work as they can be distracting and draining on your motivation. For example, you do not really want to be thinking about your weekend away with your spouse when you really need to get things done.
  13. Clean up your desk. Some of you may have desks which can only be described as ordered chaos. That’s not necessarily a bad thing as long as you can find what you need without too much digging around. However, if you can’t, I suggest cleaning up your desk. That doesn’t mean having an empty desk, it just means having neat stacks of paper, all filed in the correct location. It also helps tremendously having all the things you need easily within arms reach. For example, if you need a place to write, having your pen and notepad close by and easily accessible is incredibly useful.
  14. Get a good chair. If you sit for long hours at your desk and I’m sure some of you do, you might find it helpful to get a good chair. I find it’s pretty hard to stay focused when my neck and back are sore because I have a bad setup at my desk. A good chair can eliminate this, allowing you to work for long stretches without breaks and physical distractions.
  15. Use shortcuts on your computer. If you find you do the same thing with your computer more than once throughout the day, you might find it helpful to look for ways in which you can do them without too much manual repetition. For example, if there’s a project folder you access all the time, try adding a shortcut to your Explorer or Finder so you can get access to it with a single click, instead of expanding folder after folder in the tree panel.
  16. Close programs you’re not using. Instead of Alt-Tabbing constantly and fighting the computer to locate the program you need, try only having the applications you need open. Close everything else. For example, if you have already located a file and no longer need a particular Explorer or Finder instance open, close it. There’s no reason to leave it around at all.
  17. Limit time on Digg, Delicious, news sites and blogs. Digg, Delicious, news and blogs are great from an interest perspective, but they can really take you away from the work you should be working on. Try to limit going to these sites during the working day. If you really have to, try doing it during your lunch time. No, you don’t need to have your finger on the pulse every single minute of the day.

What else would you add to the list? Is there anything here you strongly agree, or disagree with? Sound off and let us know!

Don't Use the Internet for Personal Reasons at Work! #Infographic

Have you ever been caught red-handed, using the Internet for personal reasons at work? Well you're not the only one (you sneaky sneaky thing!) After breezing through this interesting infographic from CareerBuilder- get back to work!

 

Internet_at_work_infographic

 

Does your workplace block the access of certain websites? Are you free to post whatever you wish about your company via social media? Let us know in the comments below!

The Producteev iPhone app : status, and more.

Hi everyone, Ilan here.

 

I just wanted to take a minute to talk about the iPhone app. A couple of people complained about the fact that our app is getting old, and doesn't alway sync. You're right on both fronts.

 

Getting old : why is it getting old? The reality is that we only have one (brilliant) iOS and Mac developer (for now), and he's been working on the (successful) Mac app ever since the iPhone app has been released. The good news is that he started again baking the brand new, shiny and fast iPhone app V2 for a couple of months already, and it's simply going be out of this world. Sneak peek :

06_tasklist

I can't give out any release date (even though it's set), for PR purposes. More about this soon.

 

Sync:  When such a technologically complex app gets older, you find out about 'bugs' over time, and sync is one of them. What happens is that when a Producteev account is getting bigger and bigger, the iPhone app is having a hard time to sync it. This issue is obviously fixed in the new version, since we built a brand new sync engine. Again, having one developer on this platform is not always easy to manage, but that'll change.

 

Overall, a lot of things will change in the next couple of weeks, since we're obviously working on something big that involves A LOT of improvements, more platforms supported, and a couple of surprises.

 

We'll open private betas seats soon, on a one-to-one basis.

 

Thanks all for your support in the meantime!

 

Ilan, co-founder and CEO

 

 

Does anyone actually use agile development or at least heard of it? ;) Agile Glossary ^AccuRev

Agile Term Definition

Agile Application Lifecycle Management

Also called Agile ALM, Agile Application Lifecycle Management is the integrated management platform of the entire software application lifecycle, from planning to the final release. Key components of the platform include the ability to handle change management, workflow, source code management, task management, testing and bug tracking, reporting and analytics.

Agile Practices

Agile practices are procedures that are defined as being highly efficient to productivity, and include the following practices: user stories, cross-functional teams, unit testing, refactoring, continuous integration, multi-stage continuous integration, planning poker, burnup charts, burndown charts.

Agile Development

Agile development is a way of thinking about software development as expressed in the Agile Manifesto, and acts as an “umbrella” for a group of methodologies. The methodologies are based on process-centric and iterative development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. Agile development is a conceptual framework that promotes evolutionary change throughout the entire life cycle of the project and represents a new, more flexible approach to development than the traditional methods that have previously been the norm for software development.

Agile Development Life Cycle

The complete software development process including Agile practices such as user stories, cross-functional teams, unit testing, refactoring, continuous integration, multi-stage continuous integration, planning poker, burnup charts, burndown charts.

Agile Manifesto

Principles of Agile software development: "We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more."

Agile Processes

A software development methodology based on process-centric and iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams and is collectively regarded as highly efficient to productivity. Specific processes include user stories, cross functional teams, unit testing, refactoring, continuous integration, multi-stage continuous integration, planning poker, burnup charts and burndown charts.

Agile Project Management

The process of planning, organizing, and managing the necessary resources in order to complete project goals while adhering to Agile practices.

Agile SCM Tool

Software Configuration Management tool that supports Agile Software Development Lifecycle requirements differently than requirements involved with traditional software development. These supported features and requirements of Agile SCM include feature-oriented development, sandboxing with private build before check-in, ability to revert to last good working version when integration testing fails, staging hierarchy, ability to revert and retarget changes, refactoring support and support for geographically distributed development.

Agile Software Development

Agile software development is a way of thinking about software development, as expressed in the Agile Manifesto, and acts as an “umbrella” for a group of methodologies. The methodologies are based on process-centric and iterative development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. Agile software development is a conceptual framework that promotes evolutionary change throughout the entire life cycle of the project and represents a new, more flexible approach to development than the traditional methods that have been the norm for software development.

Application Development Process Tools

Tools necessary to complete the application development process, such as Application Lifecycle Management tools, Software Configuration Management tools, Build and Release tools, security and defect tracking tools, etc.

Application Lifecycle Management (ALM)

Also called ALM, Application Lifecycle Management is the management platform of the entire software application lifecycle, from planning to the final release. Key components of the platform include the ability to handle change management, workflow, source code management, task management, testing and bug tracking, reporting and analytics.

Backlog

Also knows as "product backlog," the backlog is a prioritized list of user stories and defects in order from most valuable to least valuable for a system. Backlogs include both functional and non-functional user stories as well as technical team-generated stories.

Branching

Branching is the duplication of objects under revision control (such as a source code file, or a directory tree) in such a way that the newly created objects initially have the same content as the original, but can evolve independently of the original. Branching can take two forms, static or dynamic. In static branches, copy and label operations are used to duplicate a given branch. The duplicate then can evolve independently. With dynamic branches, usually implemented in streams, only the label operation is used, to flag the point in time that a stream diverged from its parent stream. Both branching forms support some form of merging, so that code changes made on a branch can be re-integrated into another branch, as is typical in parallel development processes.

Burndown Chart

Representation of the number of hours remaining for completion of a project; usually represented in chart form with points plotted on an x and y axis that map a downward trend of work left to do until burning down to zero.

Burnup Chart

Representation of the number of stories completed; usually represented in chart form with points plotted on an x and y axis that map an upward trend of work completed until reaching 100%.

Change and Configuration Management

Change and Configuration Management (also known as Software Change and Configuration Management or SCCM) combines aspects of both change management and configuration management to control a software development project as it evolves through the software development process. SCCM typically includes all technical aspects of the development process, such as version control, branching and merging.
Additionally, SCCM includes change related activities such as issue tracking, document tracking, and process workflows that enable development teams to control the overall process.

Change Control

Process in which changes to a product or system are introduced in a controlled manner with minimal disruptions to services and cost effective solutions involved in implementing the changes.

Change Management

Change Management enables development organizations to control, communicate and respond more effectively to rapidly changing business demands.

Change Packages

Change Packages enable developers and managers to group file changes together into a logical whole and enable release managers to work at the issue or task level, while still providing developers with full access to the underlying file contents of the Change Package. Once created, a Change Package allows users to move, copy, modify, merge or revert the change package.

Collocation

Collocation refers to development teams located and working in the same location. Collocation is usually applied at the cross-functional team level.

Configuration Management

Configuration Management refers to a set of practices around storing, tracking and releasing versions of a software product. Software products that enable development organizations to perform these practices efficiently are also referred to as Configuration Management systems or Configuration Management tools. Configuration Management systems will typically provide users with a variety of features, including but not limited to source code control, issue tracking, and change set management.

Configuration Management Tools

Configuration Management tools are the tools that make possible the practices around storing, tracking and releasing versions of software.

Continuous Integration

Continuous integration, one of the foundational aspects of Agile software development methodologies, is defined by Martin Fowler to be "a fully automated and reproducible build, including testing, that runs many times a day. This allows each developer to integrate daily, thus reducing integration problems." By getting changes into the main line as frequently as possible, preferably daily, and by extending the idea of a nightly build, continuous integration helps reduce integrations problems and identify and resolve problems more quickly.

Cross-Functional Team

Team comprised of members with all functional skills and specialties necessary to complete a project from start to finish.

Distributed Development

Development teams that work on the same project but are located across multiple locations or worksites.

Enterprise Agile

The adoption of specific Agile practices in an organization that works in conjunction with other non-Agile practices. Enterprise Agile is a highly efficient and customized practice for large organizations that have difficulty making a complete transition to Agile, as well as for organizations that already practice efficient development processes.

Epic

A user story which describes a large amount of customer value and needs to be broken down into many smaller user stories.

Feature Driven Development

Feature Driven Development (FDD) is an Agile method for developing software based on an iterative and incremental software development process. The main purpose of FDD is to deliver tangible, working software repeatedly in a timely manner.

Hybrid Processes

Development process that uses both Agile and non-Agile practices in conjunction with each other and is proven highly effective for development teams

Inspecting and Adapting

Agile process where teams evaluate a project by looking, listening to each other’s feedback and ultimately improving the process or changing course.

Iteration

Microcosm of a traditional Systems Development Life Cycle (SDLC,) each of which produces working software. Iterations can be as large as 3 months but are more typically between 1 to 4 weeks. See sprint.

Kanban

Methodology that comes from Lean software development and has three main components: visual system for managing work, limits work in progress, and work is pulled rather than pushed through the system.

Key Agile Principles

See Agile Manifesto.

Lean Software Development

A programming concept that focuses on optimizing efficiencies for development and minimizing waste. According to Mary Poppendieck, 10 rules of Lean programming include: eliminate waste, minimize artifacts, satisfy all stakeholders, deliver as fast as possible, decide as late as possible, decide as low as possible, deploy comprehensive testing, learn by experimentation, measure business impact and optimize across organizations.

Merging

The process of incorporating branches back into the mainline.

Multi-stage Continuous Integration

Agile method allowing for a high degree of integration to occur in parallel while vastly reducing the scope of integration problems. Multi-stage Continuous Integration (CI) is an expansion upon Continuous Integration, where each developer works on his or her own task. As changes are made, CI is done against that team's branch. If CI does not succeed, then that developer (possibly with help from her teammates) fixes the branch. This way when there is a problem, only that team, not the whole development effort is affected.

One Piece Flow

Process in which each developer or development process works on only one piece at a time before pulling code downstream, one piece at a time, to the next process.

Pair Programming

Process in which two developers work together at a single workstation, where one is responsible for typing code and the other for reviewing each line of code as it is typed in.

Parallel Development

Parallel development occurs whenever a software development project requires separate development efforts on related code bases. For example, when a software product is shipped to customers, a product development team may begin working on a new major feature release of the product, while a product maintenance team may work on defect corrections and customer patch releases of the shipped product. Both teams begin work from the same code base, but the code necessarily diverges. Frequently the code bases used in parallel development efforts must be merged at some future date, for example, to ensure that the defect corrections provided by the product maintenance team are integrated into the major release that the product development team is working on.

Planning Poker

A consensus-based technique for estimating; mostly used to estimate effort or relative size of tasks in software development.  Planning Poker is useful for building team cohesion and for fostering self-organizing teams.

Product Backlog

The backlog owned by the Product Owner.

Product Owner

A role originating from Scrum, but has now been widely adopted independently of Scrum. A product owner manages the product backlog, addresses questions that arise during development and signs off on work results. The product owner guides the team with what should be done and when the final product should be shipped. The Scrum team then balances out the product owner’s decisions by deciding how much work should be involved in an individual sprint and estimating the amount of time necessary to complete the task.

Real World Agile

The adoption of specific Agile practices in an organization that works in conjunction with other non-Agile practices. Real World Agile is a highly efficient and customized practice for large organizations that have difficulty make a complete transition to Agile as well as for organizations that already practice efficient development processes.

Refactoring

The practice of continuously improving the usability, maintainability, and adaptability of code without changing its behavior. Refactoring makes it much easier to add new and unanticipated functionality. Refactoring has the disadvantage that it takes extra effort and requires changing the code. 

Release Management

Release management comprises a broad set of activities in software development organizations that center on ensuring that software is ready to be released to customers.

Release Plan

A document describing scheduling, activities, resources and responsibilities related to a particular release.

Release Process

The software release process is the final stage in a typical software development effort, where the software product is made available for use. To ready a software product for release, the release process must ensure that all product requirements have been met, usually by executing test suites designed to exercise product functionality and correcting any defects found.

SCM Software

Software Configuration Management software is a software tool that enable organizations to perform the SCM practices of storing, tracking and releasing a product, and typically provide users with a variety of features including source code control, issue tracking and change set management, advanced configuration management, change packages, process management and integrated issue tracking.

SCM Tools

Software Configuration Management tools are tools that enable organizations to perform SCM practices and typically provide users with a variety of features, including source code control, issue tracking and change set management, advanced configuration management, change packages, process management and integrated issue tracking.

Scrum

Agile development project management framework based around sprints and is generally comprised of a Scrum Team, Product Owner and Scrum Master. The framework of Scrum leaves most development decisions up to the self-organizing Scrum team, where decisions are reached as a whole team.

Scrum Master

Person trained to facilitate daily Scrum meetings, remove impediments, oversee the team’s progress through the process and track Scrum team updates.

Self Organizing

A team, usually found in Scrum, that manages itself through various means of communication and reoccurring structured meetings. Self organizing teams solve development issues together as a whole and decide the best solution depending on the various team members.

Software Change and Configuration Management (SCCM)

Software change and configuration management (SCCM – mainframe and distributed) tools implement a set of disciplines used to stabilize, track and control the versions and configurations of a set of software items and also may include development change management, defect tracking, change automation, development release management, integrated test management, integrated build management and other related processes. - Gartner Research

Software Configuration Management (SCM)

Software Configuration Management (SCM) refers to a set of practices around storing, tracking and releasing versions of a software product. Software products that enable development organizations to perform these practices efficiently are also referred to as Software Configuration Management systems or Software Configuration Management tools. Software Configuration Management systems will typically provide users with a variety of features, including but not limited to: source code control, issue tracking and change set management.

Software Development

Development of software in a planned and structured process. See software development process.

Software Development Process

The software development process is the set of coordinated activities performed by engineers, managers and technical writers resulting in the creation of a software product. Various named software development processes are in use today, including Agile, XP, Scrum, Waterfall and Lean.

Source Code Control

Source code control is a common requirement in all modern software development projects that provides mechanisms for checking source code in and out of a central repository. This allows different developers to work on the same project, with reduced fears of lost code or overwritten changes. Source code control also implies a version control system that can manage files through the development lifecycle, keeping track of which changes were made, who made them, when they were made, and why. Finally, source code control also frequently involves the ability to group versioned files as a single release, maintain multiple active releases concurrently (branching), and join different releases (merging).

Source Code Management

Source code management refers broadly to the set of operations required to store, retrieve and version the files used to construct software applications. Development teams rely on source code management to organize the source code files for different releases of software, so that releases can be uniquely identified for testing, packaging and delivery to customers. Failure to do this properly results in poor quality releases and inefficient use of development resources.

Spike

Timeboxed investigation of feasibility via a bare bones implementation, which touches on all aspects of the full implementation.

Sprint

Scrum specific word describing iterations.

Sprint Backlog

Plan for development team to map out implementation of features for an upcoming sprint.

Sprint Planning

A meeting for Scrum Teams, Scrum Masters and Product Owners where the Product Owner describes priority features to the team. The Scrum Team gets enough of an understanding about the tasks discussed that they are able to choose which ones to move from the product backlog to the sprint backlog.

Retrospective

Meeting held at the end of every sprint review to reflect on what went well during the sprint and what can be improved upon during the next sprint. Sprint retrospectives are valued as necessary parts of inspecting and adapting, and allow development teams to plan for future output.

Sprint Review

In the sprint review, teams go over what stories were completed during the iteration and demonstrate those stories for stakeholders and the product owner.

Stand-up

Daily Meetings that are meant to quickly and efficiently resolve obstacles that any team members may be experiencing.

Story Points

Relative scale of effort required by a team to implement a user story.

Task Board

A physical or electronic board representing the state of tasks in a current sprint, often divided into "to do," "in progress" and "done."

Timeboxing

The practice of constraining the amount of time for performing any activity. Examples include iterations, spikes and stand up meetings.

Unit Testing

Tests that exercise small amounts of isolated functionality.

User Stories

Used with Agile methodologies for specifying requirements and presented as an informal statement of the requirement (usually fitting on a 3x5 index card).

Velocity

The velocity of a team is the number of story points associated with stories that are finished over a given period of time, often 1 to 4 weeks. For instance, if the team completed 8 stories that were each 5 points during a four week period, then their velocity is 40 story points every four weeks.

Waterfall

Model of a software development process in which progress flows downwards through phases of conception, initiation, analysis, design, construction, testing and maintenance.

Whole Teams

Team comprised of members with different functional skills and specialties that work together during all phases of development in order to complete a project from start to finish. Also known as a cross-functional team.

XP

"Extreme Programming," one implementation of the Agile methodology that focuses on producing the simplest coding situation for application requirements and includes practices such as pair programming, incremental design and continuous integration.

 

How far ahead *should* we plan?! | The Case for Project Management ^LeadingAgile

The Case for Project Management

Last Updated on Saturday, 15 October 2011 01:21 Written by Mike Cottmeyer Saturday, 15 October 2011 01:21

 

How far ahead should we plan? I depends on what you are building, when you need to have it done… and if you aren’t going to get done… how soon do you need to know about it. If your goal is to build the highest value features possible, deliver continuously to market, get real time feedback… you might be able to get away with planning a sprint or two out… maybe less. If your goal is to deliver a specific set of predefined features, all of which need to be done by the end of the quarter, you may want to have all three months laid out. It’s not that we wouldn’t inspect and adapt and deal with reality, it’s just that we need to know if our velocity isn’t trending such that everything is going to get done. If we don’t know how we are doing against done, we don’t know what tradeoffs we need to make along the way.

I’ve worked with several clients recently that were trying to operate as if the software they were building was emergent. It wasn’t. They were being asked to deliver a specific outcome, with a pre-defined set of time and cost constraints. For these guys, it was absolutely silly to only plan their backlog two weeks at a pop. They had no idea how they were doing against the expectations of the business. They had no idea if they were on track or not or how they should approach the business to negotiate scope trade-offs. They had no means to determine if their approach was trending toward and acceptable outcome. The reality was that they were going to work really hard, probably deliver a great working product, and still have their stakeholders upset with them.

Having a plan doesn’t mean that we have to have a death march. Having a plan means that we have a baseline to measure against. Some way to determine if we are making the progress necessary to achieve our goals. Remember that line in the Agile Manifesto? We value responding to change over following a plan?  While we value the items on the right, we value the items on the left more? The plan isn’t the problem… it’s failure to respond to change… to deal with reality that is the problem. If I have a fixed time, fixed cost, fixed scope project… I damn well better be delivering incrementally using an agile approach… it’s the only way of knowing if I’ve got a shot in hell of being successful. It’s the only way we can confidently let our stakeholders know if we are on track or not.

Not every team needs a project manager… but I think many could benefit from some really good project management. I’ve been an agile project management guy from the beginning, but I am becoming increasingly convinced that we need to be teaching teams, not just how to self-organize, but how to effectively manage delivery… product or project delivery, I don’t care which. Self organized teams need to have everything necessary to deliver an increment of value… it’s my opinion that everything necessary to deliver an increment of working product includes someone that knows how to manage risk, validate assumptions, communicate with stakeholders, assess progress against the goal, and know when things are off track. That can be the PO, the ScrumMaster, or someone else on the team… again, it doesn’t matter.

What matters is that project management is happening… no matter who does it.

 

Make each day count twice (alt title: Think big, kick ass)

"Make each day count twice" - Bill Rancic, winner of the 1st season of The Apprentice and author of You're Hired: How to Succeed in Business and Life.

In startup life there's this saying that startup years are twice as long as regular years. The explanation, in most cases, has to do with longer hours. Although the thrill of being in a startup means learning new things at an unimaginable rate, the price means missing out on the comfort of a traditional 9-5!

In You're Hired, Bill Rancic gives entrepreneurial advice and covers an interesting concept with creating "psychological edge" from essentially working two shifts in one day. 

  • The first shift last from 7am-noon.
  • The second shift is noon-7pm.

*Lunch is ordered in and probably spent multi-tasking.

We've all heard about "the early bird catching the worm." But what about Rancic's "making each day count twice?" It might be what's holding you back from that million-dollar breakthrough! ;) As you can see from the following photo of Donald Trump, it's the kind of commitment required for entrepreneurs who mean business.

2045472156_aef9f15775_z

What do you think, worth a shot?

Photo credit: Ari Moore