Select Page

Four reasons why I chose to learn Vue

Spoiler alert: this article

is not a comparison to React!

Vue JS 3

Now that you decided to continue to read, let me say that this week I started my new course on Vue. I am very impressed with how so little code can make so large difference, in comparison to native JavaScript. I am still waiting for one of my favorite teacher’s Vue course, and I thought it will be a nice way to wait by learning the basics at least until it will be released. I would love to compare Vue with React, but I hadn’t got to touch React, not just yet, so I will just say that in comparison to jQuery, which I did work with, it’s impressive.

Remember I often said, in my previous articles, that I don’t like long introductions? I just wrote one so excuse me. Let’s jump right into the core.

What is Vue.Js

According to Vue documentation itself, it is a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only and is easy to pick up and integrate with other libraries or existing projects. On the other hand, Vue is also perfectly capable of powering sophisticated Single-Page Applications when used in combination with modern tooling and supporting libraries.

in my own words: Vue.js helps you make dynamic user interfaces for the web. ⁣⁣

So, Why you should learn Vue if you are a newbie like me coming straight from Vanilla JavaScript.

  1. Conventions

All the busy work is gone Bye-bye. Vue helps to avoid it, it has a lot of built-in solutions. It has effort in saving conventions like animations and management.

2. Developer’s best friend.

I was hesitating which one of the following three points to write first: documentation, graphical interface, or the CLI (command-line interface). Documentation won as I learned more from their documentation, so on that matter I installed the npm via CLI on my MacBookPro and it works like a charm.

Not to mention the fact that for a newbie like me, the way Vue is presenting the tools, which by the way there aren’t a lot to learn and it doesn’t need so much time to get familiar with, is tremendous.

I haven’t yet bumped into a real problem to ask the community’s help, I just started, so give some time, but as I’ve read in a LinkedIn community, they are pretty kind and helpful.

3. Popularity.

In just a few years Vue gained considerable popularity. Companies like Facebook, GitLab, Netflix, Adobe, Behance, Xiaomi, WizzAir, EuroNews and even Grammarly (which I use to correct my typos) are using Vue in their code base, so it’s a good starting point for it to increase chances of being hired.

4. Flexibility

This means that Vue can be used for Single Page Applications as well as to build small and interactive parts and to be integrated using different technology. It can be a full-featured framework that you used to build a whole project or it can be just a library in your project. Grammarly took advantage of it and built its signature interface while WizzAir built its amazing interface in its apps. One of the most outstanding platforms that get my attention is Adobe. If you want to build your portfolio on a Vue based platform, choose Adobe Portfolio, it’s amazingly fantastic. Okay, okay, I am sorry to be so excited but I can’t stop being impressed by the complexity and at the same time simplicity of Vue. 

Basic JavaScript knowledge to learn Vue

In terms of learning Vue, I find this list of prerequisites so that someone out there could learn Vue.

So how much JavaScript should I know before learning Vue.js? ⁣⁣

  • Have an overall understanding of how code is executed in JS (execution context, stack, event looping, hoisting).
  • How scopes work.
  • How JavaScript is a loosely typed language and how coercion works.
  • Operator precedence and associativity.
  • By value and by reference in JavaScript.
  • How “this” keyword behavior in different environments.
  • What are closures
  • Prototypical inheritance.
  • Function constructors and the “new” keyword
  • User Inputs
  • Event Handling

I couldn’t build a simple dynamic user interface for the web with my JavaScript knowledge at the time I decided to go with Vue and I went back to fundamentals. This is what I did to test myself and perhaps it will work for you as well:

Create a web page with a simple form, say, three inputs and a submit button⁣⁣

Validate each input of the form using JavaScript⁣⁣

If the form is invalid, show an error message and prevent submission⁣⁣

⁣⁣This simple task requires you to know the basics of UI programming:⁣⁣

⁣⁣- Basic JavaScript⁣⁣

– DOM querying⁣⁣

– DOM manipulation⁣⁣

– Event handling ⁣⁣

After that I was good to go.

If you can do this, you know enough to get started with Vue. If you can’t, work on this first, as Vue won’t be helpful so much, not just yet.⁣⁣

Conclusion and a brief recap:

Vue it’s a progressive framework for building user interfaces, it’s developer-friendly, it is flexible, it gains in popularity increasingly, it’s simple to learn for a newbie into JavaScript knowing the fundamentals.

Just before I live you, I would like you to have a few links that helped me:

Grammarly (free and paid versions) = I use on a daily basis when it comes to correct the typos, and it’s using Vue (yes I know I said that before 🙂

https://grammarly.com/

Adobe Portfolio (free) = I like it a lot and it looks very clean for a portfolio for free, if you’d like it:

 https://portfolio.adobe.com;

Vue course (paid) by Maximilian Schwarzmüller I am using currently and it’s amazingly easy to follow: https://www.udemy.com/course/vuejs-2-the-complete-guide.

Thank you for your time and until next week, happy coding.

Three facts about Git I’ve should’ve known

Centralised VCS | Distributed VCS

Last week I started to learn Git. For my career is a crucial tool that as a newbie it needs to be on my portfolio for future projects.

So, in this week’s article, I’ll write about the importance of learning Git, as usual, I broke the article into points so that to me as a writer and to you as a reader will be easier to relate and understand.

  • What is Git
  • How does it work
  • Why should we learn Git

What is Git

Git is a free and open-source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. 

What is not: it is not GitHub! I think of Github as an extension of Git as it cuts good parts of the Git functions. We could look at GitHub as a website for hosting your projects that use Git. Now that we have this clear let’s move forward.

Git is a type of version control system that creates and helps to track any changes to files. We may say that that Git responds to the following questions regarding editing files:

  • What changed
  • Who changed
  • Why the change
  • When the change

Git helps go back to the previous version if we want to.

How does it work

I wrote above that Git is a Distributed Version Control System which means that distributed version control is a form of version control in which the complete codebase including its full history and is mirrored on every developer’s computer. This enables automatic management branching and merging speeds up most operations except for pushing and pulling, improves the ability to work offline, and does not rely on a single location for backups.

I am a visual learner and I like to create in my own words the technical stuff so that I can get a better understanding.

Since my son has a passion for reading books I’ll give an example of how Git works. In time he created his library and has books. One day a friend comes and asks some of his books to add some great content in them. My son agrees and allows him to take them from his library. After a while, this friend brings back the modified copies and my son checks them to see they are what he need and place the books on their belonging shelves replacing the previous, without throw  the first version at the rubbish bin, but save them on a lower shelve. One day both of them decide to take a look at the first version, this way, having the possibility to go back in time. In the photo at the beginning of the article, I’ve added, you can check the differences between Distributed Version Control System and Centralised Version Control System. 

Why should we learn Git

Most of the companies work with teams and it is needed to have it if you want to increase your chances to be hired as a developer.

It is a useful tool for coordinating projects in teams and also for tracking progress in time by saving checkpoints, similar to a time-travel machine. Among other VCS some alternatives are GitLab, GitFlow, Mercurial, Perforce, and Bitbucket.

Is it also useful for your projects when it comes to save them and have a backup of your work or website(s).

Hopefully you find this article useful and helps you “git” it better. Until next time, happy coding and enjoy the upcoming week.

My Path to web development

I know that this is an ordinary title that normally Google scrapers won’t show to so many people as it is often used.

I was planning to write this week’s newsletter about Git and why it’s needed to be learned, as I start to learn it, but, since I saw the need to tell part of my story which refers to the path I took and how I applied to jobs to get a job, I decided to postpone the one about Git. So here we go!

Hi, I am Luc, a front-end developer in his early 40’s coming from a communist country who is living his dream job after changing his career in 2019.

I was born in Romania, and as I was telling in one of my previous articles, I struggled to stay up on the waves of life and not get drawn, still, The Man in The Sky was good to me, and brought circumstances in my life that were good.

From zero coding to start!

I remember when Jailbreak was a thing and I was applying it to my iPhones just to experiment with “new things” I once manipulated the code to an iPhone 3GS that didn’t have Gyroscope and I needed Gyroscope to be able to play a game, but when Youtube tutorials are at hand it’s easy to implement things, so, in a way that was my only experience with code.

I started programming back in February 2019, I haven’t coded before anything that could be considered web development, and I fell in love with the fact that I could build something from nothing. (well, in a way).

I began with HTML as I wanted to lay a foundation, but, I found that I didn’t know what the Internet is and how it’s working so I dropped HTML for some days and turn to good ol’ HTTP and protocols. After I understood how the internet works and what’s the difference between the Internet and Intranet, how the protocols work and what HTTP and HTTPS stand for, and what is a server and a client, I restarted my journey towards HTML. 

Of course that after my first “Hello World” that I’ve seen on my local I felt that I am the one who will become the next Mr. Robot, but on a serious side, I was struggling. Tones of tags, new things to learn, and didn’t know how to learn. So after two months, I was already passing the freecodecamp HTML session towards CSS, and I stopped for a few days. I wanted to learn how to “learn”.

Discipline is the key

Let me tell you that at 42 age isn’t easy to teach your brain new things, especially when you are hindered by the lack of memory and take Magnesium daily. Also having four kids there is the need to organize yourself very well and create time to code where you need to focus. So here I am documenting myself and read articles about how to learn and I forced myself into the learning process of …learning. So, I learn how to learn and the technique I use is written notes. Since I am a visual learner, I “translate” what I learn into written notes and drawings. I wrote an article about this as I am documenting my journey, and if you are interested in this technique you can take a look here. I am also saying that this is the technique that works for me. You may find yours by trying them. For instance, just watching a tutorial, for me isn’t working, but maybe for you, it will. The most important thing while I was learning was to keep discipline and create a habit, which, fortunately, I did. The main source I used for HTML and CSS is freecodeCamp, as it’s very wholesome and has a great community around it. 

Courses on Udemy.

Later, I bought an Udemy course that had the title somewhere around these lines “Full Stack Developer”. But I struggled to understand and to actually build things as the course it was since 2013, thus outdated. All the Boostrap were different so, I had to pass to documentation and actually learn Bootstrap while coding, which was a good thing even that at that time was tough. After HTML and CSS came JavaScript. There is where the party started. I went to “variables’ and “conditionals”, passed through “loops” and “arrays”…then I stopped. My brain was refusing to understand, even though I was visual learning, and I draw a bucket with stuff in it, imagining the variable, but it didn’t work the way I expected. So I skipped the course to PHP since the course was then passing slowly to PHP which in my area (I live in Spain) is required since the majority of companies use WordPress. Going to PHP and then come back to JavaScript made more sense to my brain and continue. I wrote an article here about this experience as well.

Go get the job

One of my friends who is a construction company owner wanted a website and told me to build one. That was my first gig and I put all the effort into it. I bought a theme on WordPress, I customized the CSS according to my taste, created the content, and in 3 weeks approximately the job was done. That was my first important job as a freelancer. Meanwhile, I was applying for jobs. I was aiming at big companies like Amazon, Apple, and I was applying without knowing that I was competing with senior developers that are more skilled than me, and I have no chance as a junior. 

The interview

But, I kept pushing and one company, not that big, but big enough in my area, accepted me. After two rounds of interviews that went like this:

  • first was to know me and I talked to recruitment stuff asking me about the experience I have and what drove me to make the career switch;
  • the second was a technical one where the person asked me some fundamentals questions about PHP and to tell him about my worst moment of struggle in solving a problem and how I solved it.

Unfortunately, things weren’t so good as I thought, and not having a front-end Senior Developer (and only a backend) that overview your work is hard to advance, and to feel productive, imposter syndrome was my daily companion, until I got burned and quit after almost three weeks.

Freelancing

After quitting my job I was leaning on my client’s income from the maintenance website and content creation. I started freelancing and found the other two clients to take care of their websites and create Social Media content. I continued my journey to learn JavaScript and I was building projects. Sources I used (and still are) I will add them at the bottom. If you are curious and tired of reading, just go to the bottom of this article and see the section sources I use. Freelancing starting June 2020 is my main income and even it’s not much, is coming from the passion I have: coding.

Apply, apply, apply

While I was freelancing, I kept applying for jobs. If not thousands, then hundreds of them. I subscribed to mail job providers in my area and set the LinkedIn search for job positions I wanted. Then, Danny Thompson came with a full free course on YouTube made of four sessions on how to improve the LinkedIn profile. THAT brought me traffic on my profile and started to be contacted by hiring managers from different companies. I currently am jobless and I am looking for a job to improve my skills and advance in web development knowledge. 

Conclusion:

WhileI am writing this article I keep my habit of waking up early in the morning to code as I can focus better in the morning. I am still in search of a job, because I want to bring what I learned up to this point to a company that will value my passion and appreciates my hours of struggles, and allow me to develop myself by bringing that value and give that new technology learned back to them. I know what I want and I know with what company I wouldn’t work. I learned to value my worth and I am not selling myself cheap, even if I am a junior developer. I don’t want this to sound self-pride or arrogance, but, we tend to lower our worth by just wanting to work in the tech industry. We often forget that when we look for a job the company as well is looking for a candidate for a position which will turn to be for the mutual benefit(s).

Breaking points:

My Roadmap to Code

HTML

What is internet and how it’s working

CSS

JavaScript

Boostrap

jQuery

PHP

SQL

Tailwind

Sources I used for coding and building projects:

HTML, CSS and JavaScript: 

Free

Paid:

Sources to find jobs:

I started my developer career, now what?

So, just like me, you started, let’s say two years ago your developer career, but you feel you have a dead end. 

Fear not!

We all pass through this, so, in a way it’s normal. 

Below, I give you some points that helped me in times of need and still do. 

Hey, I am Luc, a front-end developer in his 40+ that started in 2019 February his journey. 

Stay focus at one thing at the time.

I tend to be distracted by new things that appear in the tech world. New languages, new frameworks, new, new… and, if you are like me, that you like the new shine things than I bet you identify. 

What I do is to (re)focus on the goals, asking myself: what is my goal? What do I want to learn this week? How do I apply after I understand it?

Having this in mind helps me to remain focus and, step by step to get to the accomplishment of the goal. 

Motivation is key.

Sometimes is hard to get motivated by what you do and the very passion for coding turns into a drag-and-draft “To-Do List”.

Motivation is what keeps human morale uplifted so that it will continue. Find things you like to create. Build something that helps others. I find creating things very helpful, especially when I know that what I build it’s going to impact someone’s life. Think about it: you bring value to other’s people lives with your imagination and work. 

Don’t get stuck!

During my almost two years of programming, I often got stuck on concepts I didn’t understand and it felt like bumping to the end of the line. I learned that moving forward and coming back after a while, it’s helpful and beneficial to my understanding. The concept that didn’t make any sense to my brain last week, since I am not stressed out and focused to understand the concepts itself, but to understand what the concept is about, helps me to understand on a deeper level this week.

Bonus point.

Trust yourself and take your career towards the direction you desire. You have control over this. Make the advance something fun and enjoyable. Don’t stress out as your journey is your own and you dictate the speed.

Breaking points:

  • stay focused: one thing at the time;
  • find motivation: this is hard sometimes, but with self-discipline, lack of motivation we’ll keep you going; 
  • don’t get stuck: move forward and give yourself credit that the syntax you haven’t understood today you’ll have it the next day in 5 minutes. 

Remember it’s all about growing, having fun, and enjoy your journey. 

Until next time, have a pleasant, productive, and enjoyable week.

You can follow my journey by subscribing to my weekly newsletter.