Lots of our people have lots of opinions. Here are just a few of them

ThoughtWorks embraces the individuality of the people in the organization and hence the opinions expressed in the blogs may contradict each other and also may not represent the opinions of ThoughtWorks.

About The Book: #ProMa

Based on his popular blog, Dinker Charak brings a collection of tools, methodologies, and some unexpected approaches to Product Management. He also talks about his entrepreneurial journey from the eye of a Product Manager and discusses the strategy and its failures. Available as Kindle eBook

The post About The Book: #ProMa appeared first on Dinker Charak.

About The Book: #ProMa was first posted on February 21, 2018 at 1:50 am.
©2018 "Dinker Charak".

Dinker Charak
21 February 2018

Original Link

About The Book: The Murmurs of the Dawn

Deeply rooted in Indian philosophical, perplexing, soaring in imagination, wonderfully improbable, intelligently abstruse. In these stories, Dinker Charak weaves fifteen tales around characters whose insanity verges upon philosophical proclivity, whose simplicity only intensifies trifling incidents, whose circumstances rouses their dexterity, whose loneliness daunts and whose indiscriminate intelligence saves the day. Available as Kindle eBook | Paperback

The post About The Book: The Murmurs of the Dawn appeared first on Dinker Charak.

About The Book: The Murmurs of the Dawn was first posted on February 21, 2018 at 1:45 am.
©2018 "Dinker Charak".

Dinker Charak
21 February 2018

Original Link

About The Book: Absolute and None

After ‘The Murmurs of the Dawn’, Dinker Charak weaves eight more tales around clouded minds, science, scientists, science fans, science fiction and alien encounters. Along the way he talks about some interesting Physics concepts and Indian Philosophies. Available as Kindle eBook | Paperback

The post About The Book: Absolute and None appeared first on Dinker Charak.

About The Book: Absolute and None was first posted on February 21, 2018 at 1:38 am.
©2018 "Dinker Charak".

Dinker Charak
21 February 2018

Original Link

Using Product Management Canvas for Your Product

Your organisation Your org is one among these: 1) A startup or an SME company. Hopefully there is not much of hierarchy and ‘Individual Contributors’ in how most of you describe yourself. 2) A startup or a stable mid-sized org that is scaling up. You have great ‘Individual Contributors’ and a set of senior folks …

Continue reading "Using Product Management Canvas for Your Product"

The post Using Product Management Canvas for Your Product appeared first on Dinker Charak.

Using Product Management Canvas for Your Product was first posted on February 21, 2018 at 1:28 am.
©2018 "Dinker

Dinker Charak
21 February 2018

Original Link

Adding validation to a field and tested using mockMVC

The controller class ( has this code.

if (farmerIds.contains(farmerId)) {
farmerUnionRequest farmerUnionRequest = new farmerUnionRequest(farmerId, customerId);
                String encryptedRequest = encryptor.encrypt(StringUtil.toJsonString(farmerUnionRequest));
                response = redirectService.getConfirmAccountResponse(headers, ImmutableMap.of("encryptedUnionId", encryptedRequest));
 } else {
            LOG.warn("Unknown farmer id: {}", farmerId);
            response = new ResponseEntity("Unknown farmer id", BAD_REQUEST); 

I noticed that there is another main field called customerId and it is not checked for null or empty.
I changed the controller class like this.

if (Manoj Tharayil)
21 February 2018

Original Link

Integration Tests in the Pyramid

People find the notion of integration tests confusing, since they are ill-defined even by the standards of testing terminology. So they are a great topic for Ham's example application and explanation.


Martin Fowler
20 February 2018

Original Link

Squashing the merges

When you want to merge into master, sometimes you want to squash all your commits (for that branch), so that they appear as a single commit on master.
You will always go into master and pull the changes from the branch.
Here are the git commands for you to do it.
Say your bug fix branch is called fixedAllBugs and you want to merge it into master:
git checkout master
git merge --squash fixedAllBugs
git commit (Manoj Tharayil)
20 February 2018

Original Link

Setting up IntelliJ IDEA for the first time and connecting to github

After installing IntelliJ IDEA, if you try to access "Check out from Version Control - GitHub", you will get the following error.

"Unable to find git.exe

This is due to git not being installed as part of the IDE installation.
Go to this url =>
and download the file as per your operating system.

Afterwards, if you do the same action on IDE, you will be able to connect to GitHub. (Manoj Tharayil)
19 February 2018

Original Link

Unit Tests in the Pyramid

Ham now starts looking at the pyramid in earnest, beginning with the foundation of the pyramid - unit tests.


Martin Fowler
15 February 2018

Original Link

[news] Lean Inception book on

The Lean Inception book is finally available at (paperback and kindle): My special thanks to Martin Fowler and Pat Sarnacke for encouraging and reviewing this work. I hope your next project start with a great Lean Inception. “Build, Measure and Learn” as Steve Blank says: is much more elaborate than putting software into […]

The post [news] Lean Inception book on appeared first on

Paulo Caroli
14 February 2018

Original Link

The Practical Test Pyramid

The Test Pyramid has become a well-used part of software development. But many people still struggle with how to use it in practice. My colleague Ham Vocke has used it in teaching several teams about effective testing and has gathered together his experiences into an article that shows examples of different kinds of tests applied to a simple sample application using Java and Spring Boot.

In this first installment he introduces the notion of the pyramid and the structure of the sample application.


Martin Fowler
14 February 2018

Original Link

photostream 112

Melrose, MA (2017)

Martin Fowler
10 February 2018

Original Link

Saying ‘Yes’ with Imposter Syndrome

I hear the words somewhere in the background “Peter’s probably the best person”. Even before my nervous system can invoke my flight response someone is putting a photography rig, which bears more resemblance to the International Space Station than it does a camera, into my hands. “Would you mind taking a photo of The Family?” my friend asks.

Peter Gillard-Moss
2 January 2018

Original Link

Understanding OAuth 2.0 and OpenID Connect

I’ve spent a good amount of time trying to get to grips with OAuth 2.0 and OpenID Connect (OIDC).   First you must get over the confusion that OAuth 2.0 isn’t the same, or backwards compatible with OAuth, and that OIDC isn’t the same, or compatible, with OpenID.  Then you realise the unpicking doesn’t end there.  This is because the two terms are often used interchangeably when they are two quite distinct concerns.  It’s just that OIDC builds on top of OAuth.  This makes understanding where they separate, and where they join, difficult.

Peter Gillard-Moss
22 December 2017

Original Link

Webdriver io - Part 1

I have been using webdriverio to run selenium ui tests. When I joined the project, i found the code in the following format.
I will provide a brief overview of the improvements I did, to make the code more readable and maintenable.
It could help people who are joining projects with existing code bases and need to continue working on them.

The sample code provided below has been changed so that it is anonymous, but is still useful for instruction purpose.

describe('Loan Application UI', function () {
    var infoTextElement, YellowBtnElement, RedBtnElement, contactElement, landingPageTextElement,
        RedSignInBtnElement… (Manoj Tharayil)
7 February 2018

Original Link

Using git

In the current scenario of software development and testing, git has become a core component in many projects.
Being truly distributed and free, it is one of the best open source distributed version control systems.

Here are a few commonly used commands of git.

git status: Gives the current status.
C02VM0HWHTD8:Beepy manoj.tharayil$ git status
On branch 1712_Create_UI_tests_for_ledger_endpoint

git stash:  Saves all your changes so that you can work on a fresh ( current) copy which is in server.
C02VM0HWHTD8:Beepy manoj.tharayil$ git stash
Saved working directory and index state WIP on 1654_Create_api_tests_for_ledger_endpoint-review: 67635081 #1654: Review comment regarding formatting fixed.

IDE's have… (Manoj Tharayil)
6 February 2018

Original Link

The challenges of synchronous communication

I have been advocating for and helping clients with the use of written decision records in contentious areas of decision making. However, it is a big change for people who prefer to discuss things verbally over a meeting (face to face or over a call). They claim that it is easy to misunderstand intent over a written medium and that doing it in writing would slow things down.

The book weighed in on this topic in the chapter on communications. An excerpt:
"However, the discussions leading to these decisions are often flawed when conducted verbally. This is due to various

Sriram Narayan
5 February 2018

Original Link

Go-To-Market (GTM) Strategy in 4 Steps

To develop a Go-To-Market (GTM) Strategy, I suggest following four steps: 1 Know Your Product Well It is OK for Sales superstars in Dilbert world to know little about the product. But you have to know it very well to devise a successful Go-to-market strategy. Not only that, you should be able to describe it …

Continue reading "Go-To-Market (GTM) Strategy in 4 Steps"

The post Go-To-Market (GTM) Strategy in 4 Steps appeared first on Dinker Charak.

Go-To-Market (GTM) Strategy in 4 Steps was first posted on February 3, 2018 at 1:32 am.
©2018 "Dinker Charak".

Dinker Charak
3 February 2018

Original Link

Spending, Savings & Investments

When you open the newspaper in the morning, mostly the front page ad will be by some builder luring buyers with a remarkable investment offer that is bound to appreciate in value with unheard levels of return on investments. One question I always wondered about was ‘why don’t these people hold on to their assets instead of […]

Vinod Kumaar R
2 February 2018

Original Link

You say you want a devolution...

"This isn't to say that alternative approaches to management are dead, or that they have no future. It is to say that in the absence of serious upheaval - the destabilization / disruption of established organizations, or the formation of countervailing power to the trends above - the alternatives to the Freds will thrive only on the margins (in pockets within organizations) and in the emerging (e.g., equity-funded tech start-up firms)."

-- Me, September 2013

I wrote that nearly 5 years ago. That previous summer I cracked the spine on some management books I had last read a quarter… (Ross Pettit)
1 February 2018

Original Link