Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
March 13, 2021 10:15 pm GMT

A journey to yourself (and to a web development)

Exactly a year ago, in March of 2020 Ive decided to become a web developer. At the time of that decision, I was 37, I didnt have a tech degree or a commercial experience in that field and I didnt have any friends in tech (Im a photojournalist by education actually). I had years of experience as an IT specialist at a job I wasnt happy with (it was mostly fixing stuff), but it took a while to finally begin to code.

The dawn of time

I can say I had some interest in programming since I was a child. During the first post-soviet years (early 90s) my parents bought me a simple Russian-made computer which used Basic and stored data on cassette tapes (48kb RAM, 16KB GPU ). Ive tried some first loops and conditionals, tried to break games, but all of that didnt last long.

Russian computer

Several years later my classmate invited me to join the computer club, where I studied Basic again, then switched to Turbo Pascal. By the end of the year, Ive managed to win the 1st prize at the programming competition by building a platformer game concept (the first two game screens with movable character and monsters). At the second year we switched to C++, but its complexity and documentation in English scared me (it was before the internet and even before PCs itself became widespread in Russia).

Millennium bug aftermath

My second attempt at programming was a bit more successful. In early 00s my friend and I build our first website to showcase our art projects. We were working with Dreamweaver, a visual editor, building was fun, and after that Ive also built a few anime-related fan websites. You might have heard of table layouts this was exactly it, many people built that way back then, but the brave ones already tried CSS floats.

Old anime website in Russian

After a while, I got more curious, and Ive started to attend HTML, CSS, JavaScript & PHP on-site courses at one of our Universities. Even before flexbox and grid, CSS seemed a very promising tech, so I got the basics quickly, and it became the foundation of what I know today. But for JavaScript I didnt see at all how powerful it can become (if only I knew), so it just ended with alert windows and snowflakes effect for me. As for PHP, I didnt master it, and I didnt understand some of its concepts (OOP, specifically), but later Ive built a couple of websites with it, one for the company I was working for. Unfortunately, in the following years, Ive forgotten everything I knew about it.

The long dark

In 2006 a tragedy happened in my life, from which I never fully recovered. For many years after that it was only a mist, I lived by myself, I went to work, but rarely contacted or connected with anyone, didnt try to get any help, just went with the flow, not planning anything, not aiming for anything, not feeling any joy. Eventually, I have managed to pull myself together to start living again. Im glad that during those hard times I havent forsaken CSS, I continued to use it from time to time, did some templates for a gaming community. In 2016 I got pretty interested in new CSS features, so Ive built my Deus Ex Pad in pure CSS.

Gaming community templates screenshot

A new beginning

By 2020 things got to a sad state. A company I was with for 16 years slowly continued to disintegrate, I did not become a specialist in anything (IT, servers, editing, photography, video editing all of those werent at enough level to find a decent job), my soft skills were bad, and most of the money I was gaining I used to pay bills and buy food. After the pandemic started, I was left with a small income and a lot amount of free time, so Ive decided to try something new.

First, Ive started with The Web Developer Bootcamp course by Colt Steele which I spontaneously bought a year before that. I always thought it was too late for me to become a developer, seeing all those people in their 20s becoming seniors, tech leads and SEOs. I also wasnt confident in my ability to learn again. But, as I was learning, I began to notice its not as hard as it seems, which gave me hope. I didnt finish the course (sorry, Colt), but it gave me a good understanding of the current state of frontend (and backend also) and of what I should do next. By the way, the course was rebuilt last year to the modern standards I recommend to check it out for beginners.

In spring Ive made my biggest decision that year - Ive joined Yandex Practicum Web Developer program, kind of a mix between a bootcamp and online courses. I paid for the program using some rainy-day savings I had, but I never regretted it. I know that you can learn everything by yourself today using all of the free resources offered around. But I wanted more, something closer to a real job environment a mentorship, a feedback on my code, a plan, a guidance, a team. For 9 months there spending 10-15 hours every week Ive learned a lot, Ive met great people, and finally got myself ready for a career change.

News Explorer Project

The second important decision last year for me was joining the tech Twitter. Ive found the most wonderful, supporting and friendly community. Ive learned along the others following the same path, Ive shared my achievements and hardships, tech-related and not tech-related, became friends with some people, and continue to gain morale boosts every day, seeing developers all over the world exploring, inventing and building every day! Inspired by Twitter CSS artists Ive created my most famous work so far a pure CSS realistic calculator with a JavaScript logic.

What happened next?

My job hunt began shortly after Ive finished the program. Actually, the first invitation came from another student of our group, who happened to be a Product owner in a finance company. Ive been noticed because I was helping others, I shared my knowledge, and I was not a toxic person. My first developer interview was pretty nervous, I forgot a couple of basic things, but I got a good feedback, as I learned later. Unfortunately, I had to decline the offer because some conditions didnt suit me.

After that, a demotivating month began. Ive sent 32 applications, almost all of them were ignored (they didnt even reject me). Finding a frontend developer job without a real experience isnt easy today at all, even if your CV and LinkedIn page are good. The best chances to get invited to an interview is through a personal contact with a company representative make contacts and connections, as I said earlier. Another way to raise you value is to gain a real experience by building websites (for your local business, for example), going freelance, participating in hackathons & open source (the latter is especially valued, but I had a hard time finding a serious project for my skill lever to contribute to). There is also an option of paid/unpaid internship it can be also great (depending on the company).

GitHub Screenshot

My next chance came through a graduates program at Practicum. A small team wanted a junior frontend developer from our students who knew TypeScript, they gave a test assignment. I usually feel negative about test assignments, because you can lose a few days doing it for nothing, but this time I tried. Knowing nothing about TS, I quickly watched basics and React section from Understanding TypeScript I linked below and then did it in 1.5 days (also learned React-Bootstrap along the way). I did good, they pointed out my clean code and attention to details and invited me to an interview. This time it was more casual, I was more confident, in a couple of days I received an offer (starting soon).

My learning resources

One of the most useful resources that helped me with studies is, of course, freeCodeCamp. It does not exactly teach you, but it tests you, your knowledge, your logical thinking the lack of theory is compensated by interesting, sometimes challenging assignments. You should start with HTML/CSS chapter (Responsive Web Design) early, its pretty easy compared to the next JavaScript chapter.

The most efficient learning format for me, apart from the main program, was video tutorials. I used Udemy for that (but there are also many great videos on YouTube). My favorite instructor is Maximilian Schwarzmller, Ive completed one of his courses and currently finishing two more:

  • JavaScript - The Complete Guide 2021 (very detailed, 52 hours, it covers even rarely used parts of the language it may be even too detailed for beginners)
  • React The Complete Guide (again, very detailed, and it covers Redux, but its focused on class-based components, which are good to know, but today it might be a good idea to start with React hooks)
  • Understanding TypeScript (covers all TypeScript features, but not beginner-friendly in some parts)

The best practice is not to just watch the course, but pause it to try to code fragments before the instructor. I can also recommend Stephen Grider and Andrei Neagoie - its best to find the instructor youre most comfortable with.

If youre looking for non-Udemy video sources you may check out courses by Wes Bos, especially his amazing CSS Grid Course (its free). Also, dont miss Brad Traversys YouTube channel. Since practice is the most important part of your journey, there are platforms to help you with that, such as Frontend Mentor and The Odin Project. Codewars and LeetCode can help you with algorithms when you are done with basics, they are also great for preparing to the interview.

To get a better picture of your possible path, look at this Roadmap (there are ones for other specialties, too). There is also a detailed visual list with links on learning possibilities.

Developer Skills list

My path looked approximately like this:

  • HTML/CSS 1.5 months
  • JavaScript 3.5 months
  • React 2 months
  • Node/Express 2 months
  • Graduation work ~ 1 month

Then I continued with React, Redux, TypeScript. Continuing to learn JS every day, and I love it.

My advices to those whos on this journey:

  • Stay consistent, try to code or to learn every day.
  • Dont overwork yourself, but also dont take too long breaks some topics are easily forgotten without practice. Set a plan for yourself, what you want to learn with approximate time and stick to it.
  • Take short breaks at least every hour, do workouts regularly.
  • Take notes. Im using Notion for it, I put theory bits and code examples there by tech and by topics.
  • Dont learn everything at once, choose what you need wisely, dont spend your time on tech you wont be using in the nearest future.
  • Switch between your project/tasks, when what youre doing now feels boring or overwhelming, you can return to it later.
  • Make contacts, try to engage with other developers whos learning, or with professionals, ask questions. Dont focus on yourself, try to help others too.
  • Do your side projects, not only tutorial projects. Dont build weather apps like everyone else, take ideas from life what would you use yourself?

Thank you for reading this, I hope it was a little bit informative or useful!
If you have any questions be sure to ask.
You can find me at Twitter as @cat__logic

Photo by Robert Stemler on Unsplash


Original Link: https://dev.to/cat__logic/a-journey-to-yourself-and-to-a-web-development-1b19

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To