プログラムの仕事をしていると、jQuery やフレームワーク、ライブラリなど、他人の作ったプログラムを利用するということがよくあります。
これらを使うと、(開発工数が減るかどうかはともかく)開発の効率がよくなり、特に複数人で開発しているときは便利です。
ところが、これらが使えない仕事もあります。

それは、国や地方自治体などの仕事。
契約の段階で、第三者の作ったプログラム、ライブラリ、フレームワーク等の使用は禁止されていることがほとんどです。たまに民間の企業でも禁止されることがあります。
禁止の理由はいろいろあると思いますが、一番の理由は、それらのプログラム等に問題があった場合、直せない(ことが多い)から。
オープンソースの場合、攻撃対象になりやすいので、早急な対応が必要になってきます。
国や自治体の場合、機密情報を扱うこともあり、基本的にフルスクラッチでの開発を要求されます。

また、国や自治体は予算で動いているので、突然バージョンなどが変わって見直しが必要になったりしても対応できません(個人的に、あまりやりたくない作業の一つですが)。

大手ベンダーなどは、オリジナルのライブラリやフレームワークを持っていたりするので問題ないのですが、普段からサードパーティーのライブラリやフレームワークに頼っていると、フルスクラッチでの開発は難しいかもしれません。


最近は、特定のライブラリやフレームワークを使わないとプログラムが書けないという人もよく見かけるのですが、それは単に「技術力が足りないだけ」です。
ライブラリやフレームワークが存在しているということは、同じものを作ることも出来るということです。
普段からフルスクラッチで開発していれば、オリジナルの関数なども増えてくるので、他人の作ったものを使わなくても省力化できるし、知識や経験にもなります。

ライブラリやフレームワークを使うことは悪いことではありませんが、使わない場合の実装も考えておくと、幅が広がります。
趣味のプログラムであれば、予算や納期を気にする必要も無いので、ライブラリやフレームワークを使わない開発に挑戦できます。


ちなみに、国や地方自治体などの仕事は、基本的に入札なので、フリーランスで開発している人には敷居が高いかもしれませんね。