Justin Garrison
October 3, 2021

Working faster not harder - 123dev #28

Posted on October 3, 2021  •  2 minutes  • 390 words
Two women put on table cloths and place plates very fast using large turn tables

Comments

Code generators

Lots of people recommend learning to program by starting with fundamentals. Learn the basic language patterns and elements and work your way up to frameworks. You’ll have a stronger understanding of how things work.

I don’t think this is good advice anymore. By doing this you slow down your speed to market and what I’ve seen is more companies need speed than understanding. If I want to create a website I’m not going to start with HTML and CSS. I’m going to use a generator like React, Vue, or Hugo.

Having speed matters more and gives you more opportunities because deep knowledge is increasingly not necessary. Starting from the fastest option to get your product to market and working your way backward to the slowest works for products and education.

Planning for ICs

As a junior developer your scope of problems is limited and tasks typically take 1-2 weeks. As a senior developer projects are more ambiguous and take careful planning to complete in 1-2 months. A team lead will have projects that take 2-4 months to complete and require planning for multiple developers and coordination with multiple teams. Principle and staff developers will require planning for large projects that take 6-10 months to complete and likely require a lot more team coordination and research to understand the problem space.

I’m a fan of clever URL tricks. Here’s some for GitHub you may not have known about.

GitHub URL Hackswww.justingarrison.com Handy tricks and shortcuts while using GitHub

On the opposite end of using code generators is writing assembly. Web Assembly (WASM) is quite fascinating in it’s ability to add speed to the web compiled from many different languages. Here are some examples of writing raw WASM which are cool achievements but I’m sure took longer than using a higher level language and compiling the code.

GitHub - binji/raw-wasm: Raw WebAssembly demos Raw WebAssembly demos. Contribute to binji/raw-wasm development by creating an account on GitHub.

This is a different kind of generator but still quite useful. If you’re trying to test parsing, searching tools, or load log collection systems flog is very useful.

GitHub - mingrammer/flog: A fake log generator for common log formats :tophat: A fake log generator for common log formats - GitHub - mingrammer/flog: A fake log generator for common log formats

Follow me

Here's where I hang out in social media