Languages vs Tools

Languages let you express something, tools are for doing work.

As a developer, you will need to learn how to write code in languages, and how to use tools in building your project. Tools can be a command line tool like an application or a task runner, written in a language like node.

Learning the fundamentals of a language will tell you what you can do with it. You are only limited by your ability to define solutions and express the logic.

But writing your own code for every problem takes time. If you design while you build, you won't consider edge cases and may run into needs to refactor. If you work with others, you'll have to explain how you do things, and how you expect them to do things. By using other people's scripts, programs, and frameworks, we can achieve what we want sooner and with less effort.

Learning a tool is not a substitute for learning a language. You should use them to assist you, not hold you back. Using someone's gulp script to get your sass compiled will help you learn html/css faster with more frequent iteration. You don't have to know a thing about javascript or node if you have good instructions to set it up.

When you're working in a framework, you will be walking the tightrope between the language and the tool. As a wordpress developer, you may spend time writing custom plugins, working on the front end, or browsing for available tools to install. If a problem comes up involving php or mysql, you may be unable to fix it without an understanding of those things.

Use tools to solve your problems faster, but don't stop learning. If you want to become a better developer, don't build cookie cutter wordpress sites. Balance your work between installing available tools, but know when to spend the time customizing something to maximize quality and value.

 

 

Topics