Tag Archives: Software Development

Actor Voice Overs for Apple’s Siri and Google’s AI Voice

There should be add on, for purchase, modification packs, for the smartphone’s Artificial Intelligence (AI) Voice Command module, e.g. SIRI, or Google’s AI Voice Recognition, this way any retired, or semi retired actor gets easy money going into a studio recording their well known voice, and royalties go to the companies that are selling the AI voice over modification package, so instead of the standard woman’s voice, you can get anyone who would sell their voice.  It should be extremely easy to implement, the voice is probably a vocabulary indexed with certain words.  The actors or actresses need to record their voices saying a specific set of words as defined by the library of words, and I hope the Android and Apple operating system companies thought ahead to make these libraries like plug and play adaptable.  If Apple or Google made the AI Voice API open so anyone can record their voice and interchange with the default voice, actors, actresses, musicians, or anyone can sell their voice in the Mobile Vendor’s marketplace as an add on module.

The Art of Playing the Hand You’re Dealt

Being a Scrum Master, in some ways, is harder than being a Project Manager, because the people on the project do not report to you directly or through a matrix management organization. A Scrum Master is charged; however, with keeping the team on task, setting up and facilitating team meetings according to Scrum methodologies, producing reports, and overall to help facilitate the removal of blockers to help the team to close sprint product backlog items, and deliver releases.  It was challenging enough not having direct management responsibilities.  Now add a new process, and few tangible, people management incentives, and you would think deploying systems would get more challenging.  However, the Scrum methodology, an iterative process, an agile software development framework for managing software projects, once thoroughly adopted by team members, should make the deployment process more dependable, enables your consumers to see incremental progress of products, thus allowing for a course correction, while enabling your team to provide more refined estimates on releases.

A scrum team is formed from all sorts, software developers, release, or configuration management staff performing deployments, infrastructure staff managing hardware, representation from business constituency, and Quality Assurance traditional test or use case validation staff, which seem to be junior developers these days, and they all come together to deliver for each sprint.

As the Scrum Master, depending on the level of process required or desired from your organization, your role may be diminished to a glorified facilitator, if that’s what you believe is glorious. It may be a bit of fun, if you choose to make it, and if you have a great Scrum Master, and elements of a talented team.

NOTE:

A release is a set of sprints, and the duration of each sprint time is constant,e.g. there may be 6 sprints in a release, each sprint lasting two weeks.  The duration of the of sprints should be static, and the Scrum master may even setup the calendar date and time in advance for the whole release.

I’ve dissected agile, scrum methodology into six major components, as it has been used in practice on several teams of the teams I’ve been a part of, using this methodology:

1. Meetings

For small or large corporations the agile team works, even if you have a very small team trying to deliver new functionality, and constantly in bug/fix mode, or a large team with a vast amount of resources.  If you feel you are always having fire-drill meetings, put down the fire extinguisher, and listen up.  There are fewer meetings with this agile process, in fact, if there are too many meetings, we might want to call the meetings themselves out as ‘Blockers’, which we will get to in a moment.

I recommend three types of meetings with agile teams that will help you both deploy and support your product: a daily stand-up meeting, a retrospective meeting, and a sprint open/close meeting, and the final sprint meeting may serve as your release end review.

The daily stand-up meeting, or DSU, should be at most a 15 minute session, which each member of the team says, what they worked on yesterday, what they plan on working on today, and any Blockers they might have.  The scrum master facilitates these meetings, and if he or she hears a blocker announced, they try to crawl the group to get some assistance from the rest of the team members to remove the blockers.  What can we do to remove the blocker, should be the resounding question, and anything that prevents your progress on the tasks assigned to you for your product backlog items (PBI) is a blocker.  To back up one moment, a clarification PBIs are similar to change requests, or modification requests that you’ve worked with before, however, they may be written in an abstracted way, and then there are tangible tasks, which are ‘children’ objects are associated with the Product Backlog Item (PBI).

Next is the retrospective meeting, what can we do better next time, what did we do well this sprint, and so on.  There is typically one of these retrospective meetings per sprint, just before sprint close.  Finally, there is a Sprint Close and Sprint Open session combined that serves as a PBI demo for the completed items, and an assignment portion for the next set of PBIs to be worked on for the next sprint.  This meeting is the bulk of where the processes takes place.

2. Product Backlog Items

In the initial Sprint Open meeting, you review all of the product backlog items, which may or may not have an associated business priority at the time.  Some teams use 1 to 1000, where 1 is the highest priority, up to the 100th priority may get ‘Committed to’ for the current sprint, and anything over 100, may get deferred to the next sprint, e.g. 200+.  Sometimes, if the team knows they won’t put a product backlog item in the current release, they set the business priority of the PBI to 1000, where it sits in the backlog to be reviewed for a future release.

During the sprint open, the business representative, with input from all of their sources, e.g. marketing, sales, assigns the highest priority to the PBIs they would like to go into the first sprint, second sprint,… and the entire release.  This process may actually happen before the Sprint Open meeting with the development leads, who may understand the dependencies of the PBIs to help guide the business people.  In attendance is also the scrum master, which is in most meetings to keep discussions limited on any particular item, for example.  If the Scrum Master during any of the meetings finds the conversation drifting into a long, and drawn architecture discussion, the team may decide to make a separate PBI for the discussion worth typically 1 point.

3. Points

The Scrum master will sort the order of the Product Backlog of Items by business Priority, 1 being the highest, and that’s the order in which the team goes through PBIs.  After each product backlog item (PBI) is assigned a business priority, the development team leads, in the Sprint Open, ‘commits’ to achieving them within the agreed sprint time. During the Sprint Open, the people on the Sprint Open (all team members) may add a bit of color to the description of the PBI, then it’s “Poker Time”.

4. Planning Poker

There are many free web sites, or utilities out there that help you facilitate planning poker. e.g., http://planningpoker.com/ or some teams just cut construction paper, and put a number on each page.  We will use the web site in our example.  EVERY team member logs onto the site, and sees a set of cards with numerical values 1/2, 1, to 100.  Different teams do poker in alternate ways, but what you are supposed to do is correlate the entire effort you think it will take to deliver a particular PBI, regardless of your role or intimate knowledge of the PBI.  You may ask questions to get an understanding of the request, but the idea is to vote on it, especially / even if you are not doing the work on the item.  This process is more physiological in nature, and should alleviate any deflation, inflation, or wild guestimates over time (e.g. multiple sprints, or releases).  There are natural habitual things people do when they provide estimates.  The person may want to impress their boss, and provide a deflated, or aggressive estimate.  The boss may in fact try to skew the inflation to the business representative(s) to put the product out ‘sooner than humanly possible’, or a person on the project may inflate their estimate to get more time than required on the project for whatever hedonistic reason.  All players put in their score of effort, e.g. 1 = 1 person day, for example, and each card is facing down until all team members enter their cards, then the scrum master presses the button to flip the cards, and the negotiation process begins.  The scrum master bargains with the highest and lowest scorers, “Can you come down from a 5 to a 3?” and “Would you be willing to go from a 1 to a 3?” to drive a consensus.  The team members talk about why they scored a particular item a certain way, and eventually some consensus is reached without using the heaving hand, or the boss persuading the vote.  This process helps over time give more predictable estimates from the team, and you may discover the average output of the team, with a few variable factors, such as blockers.  In the Sprint Close, the Scrum master may actually show a graph, here are all the PBIs we committed to in this sprint, here is their point value, and here is what we earned, and here is what we tried to earn.

5. Demonstration and Deployment

If you say all sprints are two weeks, rain or shine, you have the sprint close meeting, demonstrate the PBIs that were achieved, and theoretically, each sprint can and may be deploy-able to every environment, including production, if required.  Typically, you would wait till the final sprint close before deploying to production, but it doesn’t always happen that way, especially if we have a support bug/fix along the way.  That’s why each PBI is discrete and deploy-able on each Sprint Close, so when you assign the item after the points are agreed to, and close the PBI, it must be thoroughly tested (by whomever), and ready for production, that’s why you may associate several tasks to a PBI, such as unit, module, and system integration test case creation and execution.  If PBIs that are assigned to staff do not get updated with a status from Assigned to Closed, then those items during Sprint Close get reviewed during the second half of the meeting, in the Sprint Open, and the team decides if they want to move them forward to the next sprint, release, or to the backlog for a future release.

6. Incentives and Detractors

One incentive mechanism for the team is awarding team bucks.  This can be a great way to award team members.  Each person on the team gets imaginary team dollars, and they are to award monthly their allotment of team dollars to co-team members, and the team member should state some reason, however abstract, why they are awarding their allotment of money to this individual.  So for example, the Scrum Master at the end of each sprint, month, or some frequency which makes sense for the release(s) will say to the team staff, it’s the closing of the sprint/month, and you should allocate your, let’s say five dollars, to your co-team members.  Team members may divide their abstract money across a few of the team members.  At the end of the release, the senior staff, it would be a business sponsor, who is funding the project, would do some conversion, and allocate a monetary value correlation.  If it’s a large organization, there may be an internal store that sells company logo labeled supplies, so you might get a company mug, or tee shirt.  I have used this technique in at least one place, and it is mildly effective.  Depending upon team morale, they can be enthusiastic about it, or feign enthusiasm.  Either way, win, win.

One infamous detractor to coming late to meetings or swearing during meetings is “The Penalty Jar”.  I’ve used this technique, and heard about it in quite a few places.  It’s a basic premise, your late to a meeting, put a dollar in the jar, change, or whatever.  A collective donation, which is then used to perhaps buy pizza on the night of releases.  Jokingly some managers might off hand swear lightly and put a fiver in the jar, just to uplift morale.  It is a physiological counterweight effect, that depending upon the team attitude and company policy, some may say enforce swearing, but it’s light handed, and the fiver is meant to imply the manager is ‘paying forward’ to encourage the team toward the end goal, the release.

Conclusion:

I hope this was an easy read.  Many teams are using these methodologies today, but surprisingly, some have yet to adopt this process.  At times, this process may be challenging when interacting with on and offshore teams that have great differences in time zones because teams prefer to have the DSU in the morning or midday the latest, while the blockers are fresh in their minds, and able to help others get un-blocked after the call.  I’ve seen it work well with a 9 AM <->12 PM timezone delta although it could be done with a middle person playing the role as the off shore liaison.  However,  even if there are no language differences, the lack of full team interaction may inhibit team members to unblock someone for some cases, which require direct peer to peer team staff interaction.  Alternately, staff sometimes work off-shift to solve some blockers.

Hold on, a Paradigm Shift is here: From Browser to Operating System

In short, with Windows 8, the Internet Portal, Jump Page, or Home Page paradigm shifts toward the operating system being the gateway.  What will this do to the Search and Browser based companies?  It pulls the rug right from under their feet, and thus the push for Google Chrome Operating System to compete.  Read on for an exciting twist of fate.

I was read an article this morning that said Google’s going to start charging usage of its applications. Is Google really trying to challenge Microsoft? Does Google think it is really ready? Using Google’s applications is free is one thing, paying is another. For example, Google+, don’t get me wrong, has a lot to offer, although, how long has it been around? 17 months, that’s a long time, let’s be frank…

Facebook, even in the early days, kicks Google Plus [BLANK] current platform, from the functionality and sexual appeal standpoint. Google has tons of money to catch up and kick Facebook’s but, right? 1 year, and 5 months, and this is the piece of garbage they produced. Wow, I guess Google isn’t made of money, hiring people like we seem to think, by the bucket load.

Then, why do we think they are trying to compete with Microsoft, an established player in the marketplace, and wisdom to evolve with human needs? I would most certainly use Google’s products for free, and I use their search, but to charge for more? I think Google is good to approach.

Although, how many evolution’s of Microsoft have we had of Windows and applications from Windows over Google with all their offerings? Microsoft Windows initial release11/20/85, 15 years. Microsoft Word has the wisdom and product, joined with human evolution, released in 83, two decades ago, generations of human and symbiotic evolution. Two decades of man and the machine, the technology evolving together into an interoperable, interchangeable, systems. Every generation the User Interface and system has had a change, to fine tune to the dynamics with human change. Now Google, just founded on 9/4/98, less than a decade ago, when did they start to show productivity? Also, how long were they focus on their core, Search? Until when? How mature are these tools you will blindly acquire, because guess what, you’ve ‘grown up’ with Google, evolved with it, and the organic tools created, such as document writing, versioning, photos, and so on.

Now Google wants people to PAY for an analogous Windows Word Version 2.0, in exchange for Word 11.0?! Seriously? That’s fourteen versions of evolution, and yes I counted. Now don’t get me wrong, if Google was rolling in it, had enthusiasm and drive like Apple did under Steve Jobs, the resources to do it. 17 months,this? http://bit.ly/QMQYnE People think I went around the bend, Is it the ability to lead a multinational, such as Google wouldn’t you think Google Plus would be stellar after 17 months. Is Google too ‘diversified’? Personally, I look at Google + as the red headed stepchild, which I feel bad about adopting, so I throw it some trinkets. But pay for it, really pay? That statement almost made me smirk. Are you nuts? It is competitive shopping time, oh yes, there are robust freeware and shareware products, cheap, and better. I wonder why we have so much robust free software. Maybe people with jobs, have lots of time on their hands to create products rivaling commercial ones, yeah, that must be it. So why in the bloody hell, G-d forgives me, are we going to pay up to Google? Only game in town to find the products? Google search is our page to go places, right? Now how about the new design of Windows Surface, or RT? Is it a complete game changer from a User Interface Standpoint. Has Microsoft really pushed the envelope of it’s creativity to actually produce a kick a$$ product, and make jump point, portal, or gateway the browser. Oops. Sorry Google. Actually, Microsoft may eventually go back to a monopoly for this is if wasn’t for Android tables, iStuff, and even little Google Chromebook. Microsoft Windows 8 no longer makes a flood gate to the world, in fact, the world is you, as natural and direct as to the applications you want. No more jump page, no more stop gap, or flow control. Our jump pages, or home pages have been the portal to everywhere. Google has been primarily our home page because it is simple. Our portals, jump pages, home pages, same stuff, control where we go, what we buy, and what we see.

Anyone remember a few years back, there was so much competition for the portal to the Internet, the jump or home page? Simply a text box and a picture, got you started, and it was like you evolved with a User Interface. Google began slightly to add on features, such as email, photos, but they were so minute, so undetectable. Google built an evolutionary platform literally from the ground up, a picture and a text box for a home page. Based on this assumption of human and machine evolution correlate to one another through user interface, ease of use, and paying it in kind. So then, primates, homosapiens, whatever, how long will you think it will take to evolve Google? George Carlin style answer: as long as it takes for humans to evolve, a 1:1 correlation. Are you going to really wait for Google to catch up, and since Windows 8 has entirely redesigned the paradigm of the machine, the portal may be superfluous, hence the push for Cromebooks. Hey, Android has a huge market share now after they by passed iOS, and Android help them do that. There are lots of Androids out there, as I told Ms. Whitman, and her predecessor, but you have to practically give away your Windows 8 OS, and mobile phones, and it’s an instant game changer. You don’t roll the dice; you sit out from the game. How would you react if you were at the helm of Microsoft, or Google?

Look, I am not trying to take sides, just state the obvious.  Also, I don’t care who threw which spear first, Google Chrome, but what I do care about…What I do care about…?The Doctor Who episodes.  Yep, maybe the kids, sometimes the wife.