2022 Goals

In many discussions with professionals in different fields, I keep getting excited about all the cool things one can learn and work on. And I would LOVE to try out many of them, but there is just not enough time. And sometimes, not enough energy. Sadly, it feels like you are starting at a mountain covered by mists, knowing how huge it is, and yet, no clue on the way up and how far you have to really go.

For every new field, knowledge, direction, this kinda fits the description quite well — I know I would have to spend hundreds of hours of deliberate studying to get up to speed and start implementing, thinking of new approaches, and solving problems. So what I figured out along the way is that this might not be the right mindset I should have.

If now, after I’ve spent a few years practicing just my CSS/HTML knowledge I decided to study more on CRO (conversion-rate-optimization) or Copywriting or Design or any specific BE field, systems, etc, I would need a few more years, 8 hour job on it and practically start as a junior. Which is not very practical.

So, instead, my thinking is this — how can I quickly know enough about that field so that I know what to search for, what questions to ask and what resources to re-read in order to improve my work speed and quality overall. Or, simply put — be good at one thing and be somewhat okay in others. With this, I am targeting a few fields that I find useful and interesting:

Learn more about CRO, Copywriting and A/B tests

I gotta admit, this is not really new, I’ve been reading and testing with CRO for a few years now, but nothing too special. I would love to get at least a couple of books down, write lots of notes, write down some workflows and tactics and start bringing up the conversion optimization opportunities in discussions, calls, brainstorming, planning and more.

If you wonder what CRO was — basically, increase the people that “convert” from visitors to <something> that the company needs. Example: A new visitor on the site can convert to customers if they purchase a product. Another example — a long-time reader of a site can convert to subscribers after they fill in a form with their email.

Why though? Well, because this increases the profits a client has. What better than that? And with higher profits, there could be a higher budget for development, new campaigns, needs, and so on. But, there are also problems with this — CRO is a service that has to be marketed and sold, which doesn’t really fit my role and probably any of the projects I might be working on. That doesn’t mean however that the knowledge I gain from learning about it won’t help me provide suggestions about features we are building.

A simple change of a word, change of the color of a button, bigger font size or position of an element can have a positive impact. Unfortunately, we could be committing one of the most important parts — A/B testing. If one does an “improvement”, it’s only improvement after it’s measured. We all know that from premature software optimizations — unless we measure the speed gains, we can’t be certain we didn’t actually worsen things.

Next.js, React, DB, Serverless, JS stacks

Another goal that has been floating for more than two-three years, but I am slowly forming some paths to studying it. The misty mountain problem — you know the mountain is there, and you know it’s huge. From here onwards, it’s just to start exploring and find my way slowly, knowing that there is no summit in the end.

This one at least is closer to the day-to-day work and it can get practical real quick. In fact, the react side alone is already in use in all the Gutenberg work we are doing. Next.js is more of a potential for future assignments and side projects.

As a long-term investment, I can’t say anything about React alone, but I personally think it’s gonna stay for long, so it’s worth it. But what is more useful is that there is a lot of vanilla JS learning that goes alongside and this one translates well for pretty much everything.

How to progress — I am mostly going to be building small projects, ideally trying to focus on a specific type of problem for each. Some could be about managing events — keyboard, mouse, etc. Others would be more about working with routing, others with APIs. In fact, I also would love to work on the BE side as well, store data and everything, in order to get the full picture

Structuring content for learning

This alone isn’t easy too. How to learn about a topic, put it in practice, and then explain it in a way so whoever studies it afterward, will have an easier time than you. There have been countless amazing guides I studies from, which, unfortunately, were surrounded by even more bad ones.

My goal would be to finish a full course or a book on a given topic. I have already started writing a few but never got to the end of it. The main problems I faced were lack of hype. I started well, got to 15-20k words, and ended it there, without finishing the rest. And it’s not a problem of time, just motivation and completing goals that no one is waiting for you to complete.

So, this time, I will try to not just throw words at my laptop but also structure it better, give explanations, proofread, re-read, rework, rearrange, record videos, build guiding PDFs and cheatsheets, everything that goes hand in hand with a good course, but also get feedback from people. I think that last part would be the critical factor, as then, I will no longer be making it for myself, but also trying to meet expectations and deadlines.

I have been researching some more guides and courses on building courses (going meta) lately and lot’s of thinking/planning on what would be the best way to present it. With that in progress, I am looking at some older content and I really think I have to rewrite it a lot. The problem is that I still don’t know how, so … yep! A goal for 2022 🙂

Work on my workflows library

I have started a couple of months back to write down workflows — repeatable steps or precise notes on doing a thing. That could be “work on a ticket for project X” because that project has 2-3 specific things I keep forgetting or “start a new Gutenberg block” or “setup a new pattern” and such.

These patterns take roughly 2-3 minutes to write down after I do it for the second time, but after that, it can save a lot of time when I get back to the same task. Especially if it’s for the first time in a few months. I would love to have had at least 50-60 workflows written down next year.

Publish side projects

For almost any small side project I work on (learning purposes basically), I have to get a public URL that can be shared. The reason – I gotta start finishing my things. I have noticed that the first part of a learning project helps you study the theory/practice of a tool, program, language, framework, etc. And the second half teaches you what you need to work on a real product that has to launch (which we all do). So I must stop skipping the second half.


What are your goals?

Setup theme.json with custom colors for WordPress 5.8

This post is more of a “research” note I had while looking into the theme.json file for themes on WordPress 5.8. You can read the introduction post here: Introducing theme.json in WordPress 5.8 – Make WordPress Core or the documentation here: Global Settings & Styles (theme.json) | Block Editor Handbook | WordPress Developer Resources.

What is the theme.json? You can think of it as the style guideline a developer can set for a theme. This file will define what colors the editors will have access to, what font sizes, what type of values can be written and what options different build-in blocks will support.

Continue reading “Setup theme.json with custom colors for WordPress 5.8”

Resources for web developers and designers

I am love collecting interesting things to read. And I have a few resources I go through when doing so:

Front-end and backend

Design:

Others:

If you have any other great resources you use on a weekly basis, please share!

5 practice projects to learn HTML and CSS

HTML and CSS (just the two, yes, classic front-end stuff) are often overlook in favor of JS. Many developers reach a point where they understand the base concept for layouts, standard styling properties and the way to build elements. Often accompanied with a library like Bootstrap or Foundation.

But it turns out that there is a lot more to building layouts than just that. In fact, it’s rather easy to spot the TON of badly written front-end code. Its truly rare to see a project where things make sense, there is no useless properties, overly-complex stylings and hacks left and right to solve problems caused by bad code in the first place.

More than once I’ve deleted 300+ lines of code to write 50-60 lines that do the same job with less bugs and it’s easier to understand.

So, if you think that there is still some room to grow, try out the following projects in your spare time! Note, the order is not in terms of difficulty or anything.

Continue reading “5 practice projects to learn HTML and CSS”

Responsive Containers in CSS

Responsive is nothing new — you build a page, it looks great on desktop, it has to look great on mobile as well. To achieve this we most often use media queries, but there is one other way – responsive containers

We should all know by now how to achieve that. You have media queries, you have relative values, you have grid systems and so forth.

Continue reading “Responsive Containers in CSS”

Should you wrap block elements with anchor tags?

Kid hugging a dog. Kid represents tag and dog the tag

A question that pops every now and then — should you wrap block elements with anchor: <div> with anchor tag <a> ? This is one of the many decisions front-end developers have to make on a daily basis.

TLDR: Yes, you can. Don’t sweat over it.

First – what is the difference between a block and an inline element like <a>?

By default, a block-level element occupies the entire space of its parent element (container), thereby creating a “block.” 

Block-Level Elements, MDN
Continue reading “Should you wrap block elements with anchor tags?”

If you feel down

It’s been two years since my last post here…

Shame. And I was writing a lot before. Well, for my standards, that is;

I would say that I have been focusing on my work more, trying to deal with the various tasks that are coming in daily. But then when I get home, I feel kinda tired. In fact tired enough to not even go to my backpack, open up my laptop and work on something new, be it an article, learn new stuff etc.

Continue reading “If you feel down”

How I crafted my view for the League of Legends champions select screen

It all started in my school years when I and my buds were playing together online in the hours after school till midnight (and after more often than not).

Now, I wasn’t a hardcore gamer, not even close, though I could say that I am more or less proud of my “Global Elite” rank achievement on CS:GO.

So it was then when I stumbled upon League of Legends – an MOBA style game by Riot Games – a game with more than 100 million active users each month!

So you can see how quickly I got addicted to it, hitting hours and hours every day. In case you don’t know it (or the MOBA genre in general) it’s a team based 5v5 game where each player controls a champion with a set of unique abilities.

I won’t get into details about the gameplay as this is not the goal of this writing, but I must say a few general words to explain it better anyways.

Continue reading “How I crafted my view for the League of Legends champions select screen”

Decision making as a designer and front-end developer in a WordPress agency

First, let’s start with what “decision making” is, and more importantly – good decision making.

When trying to make a good decision, a person must weight the positives and negatives of each option, and consider all the alternatives.

Clients come with problems. And they want them solved. Most of the time that’s a business problem, not technical. They want growth, they want improvement, they want income. Designing and developing must come with this core idea in mind. You want to provide a product that will improve your client’s business.

But to do so as an agency, you have to understand the business of your client. Why a certain design decision is better than another. What is the user base? How will this design decision affect the technical implementation of it and therefore the budget of your client? Long term commitment is crucial for understanding this.

Continue reading “Decision making as a designer and front-end developer in a WordPress agency”