DEV Community

loading...

When did you start to learn productivity-boosting techniques and development tools e.g. Emmet? 🧰⏩

robole profile image Rob OLeary Updated on ・1 min read

Maybe you are familiar with the Web Developer Roadmap?

It's well thought out. One thing that I noticed that is not included is development tools and productivity techniques. Things like: using a linter, Browser Sync/Live Preview, using a particular IDE with extensions, Emmet, debugging with Dev Tools, bash scripts, and so on.

When I learned HTML in University, my teacher had us use notepad, and he warned us not to use an IDE to make our website submission, "he'd know", he told us! The attitude was minimal tools.

My friend began learning web development recently and she began with Atom. I don't know which is a better path overall, but I know I would have liked to be introduced to some of these things by someone else relatively early in my learning path.

What do you think?

Discussion

pic
Editor guide
Collapse
brettimus profile image
Boots

I always use the evolutionary analogy: “punctuated equilibrium”—I don’t evolve much... and then I do a lot!

That is, I use my current tools, maybe make tiny tweaks here and there, and then one day it just hits me: I could be doing better with my tools. So, I make a concerted effort for a few days, or weeks, and usually am the better for it!

Seeing other people’s’ setups is always a good way to inspire me too.

Collapse
robole profile image
Rob OLeary Author

I think punctuated equilibrium is my M.O. also for the most part. I do add a few items to a learning list and work my through it over time. I just think its strange that as programmers, we are crafts(wo)men, and learning how to use tools isn't covered much in education, its down to you to explore the possibilities yourself. In physical trades, learning tools complements techniques a lot more

Collapse
brettimus profile image
Boots

Yeah so true! I remember harboring resentments towards my math prof who had taught us how to code at uni—I felt like we should’ve spent more time learning tools. But then I realized that’s universal! Tooling is really a solo journey in many ways when it doesn’t have to be

Collapse
robenkleene profile image
Roben Kleene

How did you improve your use of tools after realizing you could do so?

Collapse
brettimus profile image
Boots

Good question! Usually I had a concrete idea (I wanna learn more keyboard shortcuts, I feel like the way I debug is slow) so I could google and see what people had to say.

For me, screencasts we’re always helpful, even though usually I’m not a “visual learner” (I learn visually of course but prefer reading)

Collapse
stribny profile image
Petr Stříbný

I think people will eventually adopt the right tools, but it will take them time. That's why I am writing a book (efficientdeveloper.com) which will be about all the various tools and techniques that you might miss if you only focus on the language or technology.

Collapse
robole profile image
Rob OLeary Author

Sounds interesting. When will it be available?

Collapse
stribny profile image
Petr Stříbný

Hopefully in a couple of months. I think I will make it available even if I won't finish all chapters (I am using leanpub.com).

Thread Thread
robole profile image
Rob OLeary Author

I follow you now Petr, if you announce the book when it is ready in here, then I will know about :-)

Collapse
gokuldroid profile image
Gokuldroid

There are lots of tools out there in the market. You might have frustrated with hitting refresh again and again for a small change you made in HTML. the solution to that problem is live-reload. when you frustrated with anything in your workflow, try to automate that. Looking at fellow developers is a great source to learn.

Collapse
robenkleene profile image
Roben Kleene

I made an app for macOS called Repla that automatically refreshes like LiveReload, but that doesn't require editing the project repla.app LiveReload is great, but I wanted something that I could just use with any web project without having to add LiveReload as a dependency.

Collapse
robole profile image
Rob OLeary Author

Yes, I agree about automating your workflow and learning from other devs. I think that it should be something that is taught more also, and offering beginners a curated list of tools could be a useful guide too I think.

Collapse
gokuldroid profile image
Gokuldroid

This might help up to some level - github.com/kamranahmedse/developer...

Collapse
lbeul profile image
Louis

Tooling is just about the little helpers you use to make your life easier. I think it's useful if you'd done it in "the original way" (notepad and so on) once, but that's enough imo.

To put it in a kind of "Fast & the Furious" metaphor: It's not the car that wins a race but its driver who does.

In school, we have to use old-fashioned Text Editors like Notepad++ to write PHP WebApps. Our teacher thinks that VSCode or alike are to helpful (and he thinks that everything with a beautiful UI is equal to WYSIWYG appearantly...) for us.

It's mind-bugging. I miss those simple features like auto-completion, smart linting, spell chekers and even a damn lorem-ipsum add-on.

Those tools would make my life a lot easier because they improve my workflow. I would be faster and less sloppy and my would would be cleaner.

Collapse
robole profile image
Rob OLeary Author

In education, there does seem to be a dichotomy of thought: if you teach using an IDE from day 1, students will miss the concept of compilation and code packaging; or use an IDE from day 1 because that's what you will use in a workplace. I don't see why you couldn't show students both ways, feel the pain in the beginning, and then the satisfaction of eradicating micro-tasks such as complication and reloading resources with tools. But what I never see is a class dedicated to workflow and tooling. I think there is a place for that. Tools do have a bigger role than helpers though, to support older browsers and make more maintainable code, transpilers (babel) and bundlers (web pack) are main-stays of web development now, you will probably use these in a professional environment.

Collapse
robole profile image
Rob OLeary Author

To answer my own question. I learned how to use an IDE outside of University when I got a decent laptop! The rest has largely been in fits and spurts on my own over time, sometimes when I heard about a particular tool, other times because a certain manual process was becoming a cumbersome task.

Now, when I work in a team, I ask people to show me how they work when they have free time, I think it helps to know how what you produce fits into the work-flow of others, a by-product from this has been learning some productivity hacks and adopting new tools.