The short and sweet answer is: whenever, wherever, however you can.

SoloLearn

What I mean is that you can use the commute time to your work by coding on your phone or learning with applications like Enki or SoloLearn. It’s a very good learning experience!

When you are at home and have 10 minutes of free time – use it! Do that next exercise on FreeCodeCamp or change one line in your current project. Reread and better understand the code of some project one more time.

What you will find is that your attitude matters a lot when trying to attain a new skill. Don’t hesitate, don’t think too much. Just use every opportunity possible to move forward. Once you don’t hesitate to use a small window while riding a bus to learn more, you won’t hesitate to spend 3 hours on the weekend too! Stop doing some progress. Start doing as much progress as your current life situation allows you to. Not only you will learn, but you will be energized, positive and look forward to doing more each day.

Thoughts -> Words -> Actions -> Habits -> Character -> Purpose

Thoughts turn into words, words turn into actions, actions turn into habits…

When you decide to sit idly when you could be learning, you lose much more than some time spent on learning. You consciously decide that it’s not that important and you are fine as you are. You resign, when you don’t need to and tell yourself that your goals aren’t that important. When you decide to use that moment instead and put more effort, it builds up. You become serious about it and the results are sure to come.

Happy results in the new, 2019 year!

I had some trouble with understanding how the cubic-bezier function works while going through the tutorials on https://freecodecamp.org. My answer is based on the previous answer by eirenaois on StackOverflow.

1. Bezier curve is based on four points: P0, P1, P2, and P3. P0 is set by default to (0, 0) and P3 is set by default to (1, 1). These are the beginning and the ending of the curve and you can’t change them.
2. The curve will stretch differently depending on what coordinates you give for points P1 and P2.

In the example above P1 is set to (0.1, 0.1) and P2 is set to (1, 0). The speed of the animation depends on how much does the state change per given amount of time. In this example, the animation gets faster with time. For the first half of the time used for the animation, it will cover about 15% of the distance (when Time = 0.5, State ~ 0.15). It will cover the remaining 85% of the distance in the second half.

Please check the example in jsfiddle to see how the animation works in practice: cubic-bezier ball animation

HTML:

<div class=”ball”></div>

CSS:

  .ball{
background: red;
border-radius: 50%;
position: fixed;
width: 50px;
height: 50px;
top: 50%;
animation-name: bounce;
animation-duration: 4s;
animation-iteration-count: infinite;
animation-timing-function: cubic-bezier(.10, .10, 1, 0);
}

@keyframes bounce {
0% {
left: 0%;
}
100% {
left: 100%;
}
}

In the example, the ball moves from the left edge of the screen to the right edge over the course of 4 seconds. Keyframes are there to set where the animation should begin and end, animation-timing-function: cubic-bezier() to set the speed of the animation at different points in time.

You can find the CSS cubic-bezier Builder here.

I’ve recently stumbled upon a website that I would like to share with you.
I absolutely love such short and sweet introductions to any topic. This small website turns learning CSS selectors into a game. Check the image below.

CSS Diner

CSS Diner

You can learn in 30 – 60 minutes many interesting ways to select elements with CSS. I didn’t even know that many of those exist. Using CSS selectors you go through 32 levels, selecting items mentioned with CSS selectors. Each level introduces a new way to select with CSS. Enjoy!

Maybe you have heard some famous business people say that everyone should learn programming. While I don’t necessarily agree with that, I find that knowing how to program can make life much easier. Especially if you have to do anything with computers, business and alike.

What is programming?

Programming is writing instructions for a computer to follow, in a language it understands. You might have heard that programmers solve problems. I personally prefer to say that programmers automate what would otherwise need to be done manually. They save a lot of time, money and nerves by doing their job. Just imagine, could you ever write a blog as easily as this, if not thanks to the people who programmed WordPress and other blog platforms?

Take as an example doing calculations. If someone wouldn’t automate it and build a calculator, you would need to do all of the calculations by hand! Definitely takes more time. Also it’s easier to make mistakes when you do it manually.

How would I benefit from learning it?

Do you have 200 word documents and you want to change dates in each one and then print them out? You can do it with just a little of knowledge of how to program, without having to open each document.

Do you want to build a website by yourself from scratch? A few days of learning and you can surely do it.

Would you like to have a remotely controlled stopwatch? Yes, this also you can do without much knowledge.

You could then automate many things you do manually 🙂 You surely would be surprised how many things you do, could be done effortlessly once you know a bit of programming.

Where do I learn it?

This one is easy. There is a huge base of tutorials on the internet to learn basics of programming. And among them there are many good ones! You can’t go wrong, just google for it and have some fun programming.

I just recently visited two meetups. One related to JavaScript, other one to Java. Loved it!
Let me share with you at least 5 reasons why should you also go to the meetups related to programming.
I ordered them from most important for me at the moment.

1. New ideas

The first thing I liked about meetups is that I can get introduced to many new concepts that I might have not even heard about. Azure Web Service, what does Data Scientist do and what is machine learning, new version of Angular and etc. are a few examples. Sometimes I didn’t fully understand what’s going on. Nevertheless I felt satisfaction of learning during the meetups. It was  fascinating to hear from people from so many different backgrounds.

2. Travel

This one is important for me since I tend to take life too seriously. Rarely there are meetups in my city, so I have to travel to other places. Every time I go to a meetup not only I learn, but I also get to feel like a tourist, traveler. This means I not only get to learn about new concepts. I also get to reflect on them and on my career or life just after the meeting.

3. People

What surprised me is that rooms where meetups about programming happen are almost always full! It’s very motivating to see so many people interested in the same topic as you are. If you want to regain motivation for learning web development, joining a meetup is a good way to do so. You’ll feel that you are not alone and are a part of a much bigger community.

4. Networking

During a meeting there might be some breaks, but you won’t get many chances to speak to people. It’s common to see an after-party happening just after the last speech and the organizers might ask people to come 30 minutes earlier before the meetup begins so they can network. This is a great chance to get to know some other people from the community and perhaps learn something from them. It would be a good idea to hone your networking skills and even prepare an elevator pitch!

5. Job opportunities

Whether you are currently employed or not, it still holds true. If there are people, there are opportunities to network which is a shortcut to getting a better job. This is especially true for meetups where you can be sure, that people not interested in programming wouldn’t show up. As long as you are prepared for some networking and are willing to talk to people and mention that you are open to new positions, there is a big chance that you will find one.

 

Here I will keep some interesting ideas for the future.

  • record a live coding session on YouTube (e.g. doing exercises on freeCodeCamp)
  • create a tutorial on the blog
  • write a guest post
  • follow 10 other web development blogs and comment on them
  • do an interview with a web developer
  • do an interview with an owner of an IT company connected to web development
  • write a FAQ with questions that people starting into web development often have, like „when should I look for freelance projects?”
  • add my info in about
  • go to hackathon – possible job opportunities, a hackathon while on a trip abroad?
  • go to some Web dev related conferences and make a blog post about it
  • make a profile on upfront and other freelance jobs websites, look for projects to do
  • make a tutorial about some basics of web dev like HTML in Japanese, make a yt video!
  • post about https://www.thinkful.com/blog/why-learning-to-code-is-so-damn-hard/ from my perspective