Warning: include_once(/home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/wp-super-cache/wp-cache-phase1.php): Failed to open stream: No such file or directory in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/advanced-cache.php on line 10

Warning: include_once(): Failed opening '/home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/wp-super-cache/wp-cache-phase1.php' for inclusion (include_path='.:') in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/advanced-cache.php on line 10

Deprecated: Return type of WP_Theme::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-theme.php on line 554

Deprecated: Return type of WP_Theme::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-theme.php on line 595

Deprecated: Return type of WP_Theme::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-theme.php on line 535

Deprecated: Return type of WP_Theme::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-theme.php on line 544

Deprecated: Return type of WP_REST_Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/rest-api/class-wp-rest-request.php on line 952

Deprecated: Return type of WP_REST_Request::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/rest-api/class-wp-rest-request.php on line 972

Deprecated: Return type of WP_REST_Request::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/rest-api/class-wp-rest-request.php on line 984

Deprecated: Return type of WP_REST_Request::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/rest-api/class-wp-rest-request.php on line 995

Deprecated: Return type of WP_Block_List::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 151

Deprecated: Return type of WP_Block_List::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 175

Deprecated: Return type of WP_Block_List::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 164

Deprecated: Return type of WP_Block_List::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 186

Deprecated: Return type of WP_Block_List::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 138

Deprecated: Return type of WP_Block_List::offsetExists($index) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 75

Deprecated: Return type of WP_Block_List::offsetGet($index) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 89

Deprecated: Return type of WP_Block_List::offsetSet($index, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 110

Deprecated: Return type of WP_Block_List::offsetUnset($index) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 127

Deprecated: Return type of WP_Block_List::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/class-wp-block-list.php on line 199

Deprecated: Optional parameter $criteria declared before required parameter $revision_history is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.media.php on line 290

Deprecated: Optional parameter $post_url declared before required parameter $height is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/class.jetpack-post-images.php on line 781

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2397

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2415

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2446

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2471

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2489

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2631

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2660

Deprecated: Optional parameter $value declared before required parameter $param is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/_inc/lib/class.core-rest-api-endpoints.php on line 2678

Deprecated: Optional parameter $slug declared before required parameter $attr is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/class.jetpack-gutenberg.php on line 690

Deprecated: Optional parameter $type declared before required parameter $args is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/modules/widgets/rsslinks-widget.php on line 175

Deprecated: Optional parameter $type declared before required parameter $required_field_text is implicitly treated as a required parameter in /home/sankarshan/sankarshan.randomink.org/blog/wp-content/plugins/jetpack/modules/contact-form/grunion-contact-form.php on line 3279

Deprecated: Return type of Requests_Cookie_Jar::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Cookie/Jar.php on line 63

Deprecated: Return type of Requests_Cookie_Jar::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Cookie/Jar.php on line 73

Deprecated: Return type of Requests_Cookie_Jar::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Cookie/Jar.php on line 89

Deprecated: Return type of Requests_Cookie_Jar::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Cookie/Jar.php on line 102

Deprecated: Return type of Requests_Cookie_Jar::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Cookie/Jar.php on line 111

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 40

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 51

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 68

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 82

Deprecated: Return type of Requests_Utility_CaseInsensitiveDictionary::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/Requests/Utility/CaseInsensitiveDictionary.php on line 91

Deprecated: register_widget_control is deprecated since version 2.8.0! Use wp_register_widget_control() instead. in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/functions.php on line 4861

Deprecated: register_sidebar_widget is deprecated since version 2.8.0! Use wp_register_sidebar_widget() instead. in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/functions.php on line 4861

Deprecated: ltrim(): Passing null to parameter #1 ($string) of type string is deprecated in /home/sankarshan/sankarshan.randomink.org/blog/wp-includes/wp-db.php on line 3031
Random thoughts and serendipity | A collection of jottings on various issues that excite no one else | Page 48

Built to Last

Am currently reading Built to Last : Successful Habits of Visionary Companies. It is an interesting read primarily because of the fact that the conclusions drawn from the study can be easily applied to those companies who are trying to make their mark in the Free/Libre Open Source Software Development sphere.

The following paragraph would summarise what the book tries to get across using the various examples.

The core myth, according to the authors, is that visionary companies must start with a great product and be pushed into the future by charismatic leaders. There are examples of that pattern, they admit: Johnson & Johnson, for one. But there are also just too many counterexamples–in fact, the majority of the “visionary” companies, including giants like 3M, Sony, and TI, don’t fit the model. They were characterized by total lack of an initial business plan or key idea and by remarkably self-effacing leaders. Collins and Porras are much more impressed with something else they shared: an almost cult-like devotion to a “core ideology” or identity, and active indoctrination of employees into “ideologically commitment” to the company.

A collection of jottings on various issues that excite no one else