# Deprecated From Inception

DevFeed: [Deprecated From Inception](<https://devfeed.tech/articles/deprecated-from-inception-20932.md>)

Original publisher: [Read original article](<https://jakewharton.com/deprecated-from-inception/>)

Published: 2012-10-01T00:00:00Z

Content type: article

Language: en

Sources: [Jake Wharton](<https://devfeed.tech/sources/jake-wharton.md>)

Topics: [Library](<https://devfeed.tech/topics/library.md>), [Development](<https://devfeed.tech/topics/development.md>), [App](<https://devfeed.tech/topics/app.md>), [Boilerplate](<https://devfeed.tech/topics/boilerplate.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [code](<https://devfeed.tech/tags/code.md>), [development](<https://devfeed.tech/tags/development.md>), [library](<https://devfeed.tech/tags/library.md>), [open-source](<https://devfeed.tech/tags/open-source.md>)

## AI overview

The article argues that ActionBarSherlock was designed as a temporary compatibility library for applications targeting Android versions below API level 14. Because its APIs and themes mirror the native action bar, migrating to native components later should require only small, largely scriptable changes. It also recommends choosing small, modular libraries to reduce future replacement costs and avoid wasting engineering time on boilerplate.

## Source excerpt

Stop using ActionBarSherlock! Well... eventually. If you are writing an application right now with a minSdkVersion lower than 14 you should be using it. I am not saying this just as the developer of the library, but as someone who likes to minimize wasted time. Writing applications is hard and nobody wants to spend time writing boilerplate code. It sucks valuable engineering time away from what is most important in your app: the content. Throw in ActionBarSherlock and a slew of other open source libraries to bootstrap your development so you can make the best app possible. In order to have pleasant longevity, libraries you integrate into your application should be as small and modular as possible. Inevitably new libraries will be released and some will have features that you wish to integrate at the cost of others. If a library is small, these replacements can be seamless (and often times drop-in). ActionBarSherlock is very much the opposite of a small, modular library. When you decide to include ActionBarSherlock in your app you are committing to using it for the foreseeable future. Or are you? By design, ActionBarSherlock uses the native action bar API and theming. Yes you have to use types that exist in different packages and duplicate theme attributes but the names of classes, methods, and attributes mirror their native counterparts exactly. In fact, you have to go out of your way in order to find things that are not API-compatible with the native action bar. Some day, market saturation and the demands of your application will necessitate updating your minSdkVersion to 14 (or higher). If you are using a different action bar library or you have rolled your own then you will either have zero work ahead of you (which means you will still be using your crappy implementation) or you have a lot of work ahead of you (migrating to use the native components). Both of these situations are not ideal and I can think of handfuls of massively popular apps who will someday fin