Blog Posts

Avoid Freelancers burnout. Tips To stay on top of ALL and have a life. :)

You’ve opted for a career as a freelance tester, you’ve certainly observed that one of the main advantages to working as a freelance tester is the fact that you get to be in charge of your own workload. Burning out, is quite easy.

However, for some freelancing testers this could quickly turn into an issue. While some freelance testers will find that they have trouble finding clients, other freelance testers will have the exact opposite issue.

Now, you may ask yourself how that can be an issue.

The answer is simple – burnout. You’ve heard of it, you’ve lived in fear of it, we’re here to tell you some of our favourite tips for all you freelance testers out there who want to avoid burning out:


tips for avoiding burnout
tips for avoiding burnout
Raise your rates

Burning out as a freelance testers happens generally because you’re simply overworked. One way to handle this issue is by raising the amount of money you’re charging your clients.

This way, you will both sift through your client base and eliminate those that aren’t willing to pay your new rates, and still maintain your income, with less time and effort put in.

Target elimination of your lowest paying clients

If you’re trying to avoid burning out as a freelance testers and your clients have all agreed to your newly raised rates, then the next thing to do is simply give up the clients that bring in the least work (and cash).

Upgrade your client base

 In some cases, for freelance testers who have started out with little experience, there is a tendency to severely undercharge your clients.

This should be fixed by raising your hourly rates.

However, it doesn’t apply in case your entire client base is both paying you meager amounts and bringing in just one-off projects.

What you will want to do if you’re looking to avoid burning out as a freelance testers is to start marketing yourself and reel in better clients, clients who will both pay higher rates and bring in ongoing assignments.

This will free up some of the time you spend looking for new clients or in discussion with them, and thus help you avoid burning out as a freelance testers.

Go for the agency model 

For some freelance testers, our previous tips just won’t work out due to the sheer amount of work they’re getting.

If you find yourself in this position as a freelance tester, then you might want to consider hiring a couple of other people to work with you.

This will allow you to both take on bigger clients, which you alone might not have been able to handle, and take some of the pressure off of yourself and steer you away from burning out as a freelance tester.

Burning out as a freelance tester is certainly no joke and most of you will probably face this issue sooner or later in your career as a freelance tester. However, We hope that these ideas will help you avoid burning out as a freelance tester for as long as possible.

build your freelancing career as a student – tips and advices

building your freelancing career as a student
building your freelancing career as a student

Building your Freelancing career as a student can have many advantages, and small downsides. As such, an increasing number of students are tempted by freelancing.


Freelancing as a student can offer you more job security compared to the minimum wage jobs your peers are employed at, more financial security as you generally get paid more for working less hours, and at the end of the day, you’re your own boss and who doesn’t want that?! In case you are among those who wish to turn freelancing as a student into an actual career, here are some of our tips to help you on your way:

Sell yourself as a pro

– If you’ve ever considered freelancing as a student, you’ve probably also asked yourself who would hire you when you don’t even have a degree or any experience. Generally, clients don’t actually care. What matters is the quality of the product you can turn out. So, go out there and sell yourself as a great designer or great writer or great whatever else you’re freelancing as. Believe in your own skills and communicate your true value to any potential client. This way, freelancing as a student can turn into a full-on freelancing career fast.

Be on the lookout for any opportunities

– Starting your freelancing career as a student, you will most likely have to start small. One of our favourite ways to develop a reputation and a portfolio is by volunteering. See it as investing time in yourself. If you hear of any acquaintance or friend or relative that requires something done which you could do as a freelancing student and add to your portfolio, do it. Do it for free, if you must. Ask for a recommendation or testimonial in return. If you’re freelancing as a student and are considering turning this into a career, investing some time will be, of course, necessary, just like it would be for any other career.

Don’t sell yourself short

– We’re aware this might sound contradictory with what we’ve just said, but we promise you, it’s not! There’s a distinct difference between volunteering and being underpaid. Once you start getting jobs as a freelancing student, don’t settle. Research the market and price your work accordingly. Don’t let your clients bully you into a lower pay, just because you’re freelancing as a student. And on the same note, be wary of freelancing platforms, for the exact same reason – you’ll generally be underpaid. Therefore, if you’re freelancing as a student and want to make this your career, know your worth and don’t settle if you don’t have to. Find clients that can appreciate the quality you’re delivering and pay you accordingly.

Freelancing as a student can turn into a very profitable career, if you know what to look out for. We’ve told you some of our best tips and pitfalls to avoid when on your way to being a freelancer pro and hope they will get you started on the right path!

4 freelancing benefits vs Desk Job

4 freelancing benefits that will always be better than a desk Job:

Considering leaving your 9 to 5 desk job in favour of a freelancing career, or whether you’re simply looking to supplement your income by getting some freelancing projects on the side, you should take into account the benefits that freelancing can offer you, aside from the obvious ones like the freedom and flexibility everyone seeks in a freelancing career.

4 freelancing benefits vs desk job
4 freelancing benefits vs desk job

Some of the lesser thought of, but equally important, benefits of freelancing:

Complete workload control

Now this one ties in with the freedom we’ve mentioned earlier.

Deciding to take up a job as a freelancer means that you have the final say when it comes to how much you want to work.

We all know how stressful a full-time job can be, and add the extra overtime your boss asked you to put in and it can leave you in a dark place, health-wise.

However, if you’re freelancing, you get to be your own boss and decide when enough is enough, so you’re not forced to take on more than you can handle.

Another among other freelancing benefits is:

Avoiding the flu season

Working in an office environment means that it’s very likely that you will end up contracting some viral illness or another, as you are forced to be in contact with people all the time.

As a freelancer, working from the comfort of your home and, thus, in a more isolated environment, you’re far less likely to have to take a sick day off to deal with that annoying flu.

Complete control over your work relationships (Complete control over your networking)


We’ve all had one of those days at work when the last thing we want to do is check our email, since it would be for the hundredth time that day and we’d have to waste precious time sorting through all the mass-emails until actually finding the ones we have to reply to.

And we’ve also received the grumpy stares of a boss that wasn’t replied to within the first five minutes.

No more of that! As a freelancer, you’re allowed to set your own policy.

It is actually recommended to refrain from checking your email more than 2 or 3 times a day, as it is generally a waste of time and a stress factor, as well.

So, if you’re looking to start freelancing, consider adopting a more relaxed schedule for when it comes to communicating with your clients.

They will understand it, since everybody’s got busy days and can’t always be checking emails.

Complete control over your time schedule

Which of us haven’t been woken up by an alarm at 6 AM, after having barely gone to sleep 2 hours ago, and cursed the day we were born?!

Freelancing gives you the opportunity to make your schedule as you please. Can’t fall asleep even though it’s 2 in the morning?

No problem, just set the alarm for later. Your boss won’t mind!

Although these might not seem like big things, trust us when we say that the little things add up in the long road.

Getting in some more Z’s when you need them or allowing yourself a break from the stress of socialising with annoying co-workers can lead to a happier you.

Make sure you get the the best freelancing career start

We’ve written this post, so we can make sure that we can guide you, so you can get the best freelancing career start.

So, you’ve decided you’re sick of your boss and think you could do a better job by yourself. Great! But before you take the leap and hand in your resignation, here are a couple of things to keep in mind that will allow you to have an easier time kicking things off in your new career.

Change/Start your freelancing career
Change/Start your freelancing career
Get organized in order to get the best from your freelancing career

Freelancing can be a very rewarding career choice, but even though you get to be your own boss, it doesn’t mean you don’t have to put in the effort.

Before you quit your normal job, make sure to set yourself up for success. One of the ways to do this is to ensure you’re properly organized.

What this entails exactly varies from case to case, but in general it means that you’ll want to make sure you have a solid portfolio to show your potential clients, first of all.

Then, you’ll want to invest in any tools you’d need for your freelancing and set up a proper working space, even if this means just picking your favourite coffee shop to work in.

Don’t forget to set up a website and/or blog to advertise your work, as well as a LinkedIn account.

Be aware of your own worth as a freelancer

Don’t undersell yourself!

Yes, being humble is a good thing, but slightly less so when you’re freelancing. You have to convince clients to hire you, after all.

Of course, the reverse of the coin is also true, so don’t make the mistake of promising your clients things that you can’t deliver on.

When considering your freelancing rate, also keep in mind that you have to actually account for health insurance, benefits, marketing, all those pesky little things that your boss had to worry about before you decided to be a freelancer.

Set yourself attainable goals. And dream about them

This ties in with what we’ve mentioned previously.

If you’re considering freelancing, your goal is probably to make enough money to cover your expenses and living costs.

You’ll want to make sure that that is actually doable, by calculating how high your rate can be per hour or per project, however you want to charge, and how much work you actually need to get done in a month to be able to live from freelancing.

You have to be honest here about how many projects you expect to be able to get, as well as be aware that the first few moments are likely to be a bit rougher, until you create a reputation for yourself, so starting out with some savings on hand are recommended.

If you keep these factors in mind, your freelancing career should be on the right track to success!


Let us know if you have questions, or how we can improve this article!

Freelance Jobs for College Students that you can easily get in 2018

Some of the best jobs we’ve foreseen for a freelancing student, high paying, to get on in 2018, were summarised bellow.

Just “Get a job!”, right?

Every college student knows the plight of wanting to attend so many of the events college life offers, yet being constrained by a tight wallet. The normal advice in this case would be to get a job. Easy, right? Well, for most students, even working part-time might not be manageable, time-wise, when taking into consideration all the time that they actually have to put towards school. In these situations (and not only), freelancing as a student can be the ideal solution, as it allows you to only take on the projects you can fit into your schedule. If you’re already thinking how great this could be and wondering what jobs you could get paid to do as a freelancing student, here are a few of the best ones:

Tutoring for freelance! – Whether online or in real life, tutoring is one of the most easily available jobs for a freelancing student. We’d recommend the online version, simply because you don’t even have to ever leave your dorm for it. If you’re looking to freelance as a student, online tutoring will permit you to select the exact subject you feel you’ve mastered best, and the level you want to teach it at. This option is great for freelancing students that have limited time available, as you are paid per session, generally, not based on a fixed number of hours.

  Graphic designer for freelance! – Design students have it very easy when it comes to freelancing as a student. There’s always some company looking for a logo design or for marketing materials and so on. So, if you’re good at designing, build yourself a portfolio and start reeling in those jobs. Freelancing as a student in graphic design can be particularly advantageous to you, as it will help you build up your portfolio and make your job search later on more easy.

 Website developer for freelance! –  Just as everybody needs their logo designed, everybody also wants their company to have a presence online. This is the part where freelancing students come in, and it’s another one of those jobs that allow you to grow and gain experience as you go along. All you really need to start is some knowledge of simple website developing that will allow you to create sites suited for small, local businesses. If you’re looking to freelance as a student and possess these abilities (or are willing to learn), this might be something to look into, as it can represent a steady source of income.

–  QA Automation for freelance! – Building automation scripts require just a bit of basic JavaScript usage that you could pick it right away! The tools offered these days are amazing. Earning a buck by getting a job as an automation QA freelancing a bit, will definitely not hurt!

These are our favourite picks for jobs as a freelancing student. However, there are many more out there, so make sure to have a look around, you will certainly find something that you are good at and that you would enjoy doing in your free time.

If you enjoyed this article, please share it, and tell the WOLD about us.

Protractor Locators, webdriver and selenium – beginner introduction

What is a locator? What is a locator? 
The role of a locator in Automation Development is to return an elementFinder. I’ll try even simpler.
The role of a locator is to locate a piece of HTML element, that you can see in the browser for further use. 


Why do we need the (protractor) locators? 
a) We need to make sure that something specific still happens in an application. You need to make sure that the login button is still there. You need to find that button, programmatically. “locators” are a way for doing this. For finding a specific element.


b) Protractor Locators, are the framework’s specific locators.
For example, you will not find a “ng-repeat”, anywhere beside Angular. Since Protractor was developed for testing Angular, they have provided a way for locating their specific Angular DOM elements.


Webdriver/Selenium/Protractor locators? -You’re driving me crazy! 
Mentioned selectors above, are framework’s specific locators. This does not mean that you can not import them and use them somewhere else. It might be somehow useless, but you can!


So far, there are several types of Locators.


I. Locators added by Protractor(angular/google) team, How to use them


addLocator Add a locator to this instance of ProtractorBy. – this is for creating a custom locators. You can create custom then load them later in config. I actually wrote few of my own, it’s not very complicated.
// Add the custom locator.

    function(buttonText, opt_parentElement, opt_rootSelector) {

  // This function will be serialized as a string and will execute in the

  // browser. The first argument is the text for the button. The second

  // argument is the parent element, if any.

  var using = opt_parentElement || document,

      buttons = using.querySelectorAll('button');

  // Return an array of buttons with the text.

  return, function(button) {

    return button.textContent === buttonText;



// Use the custom locator.

binding Find an element by text binding.
exactBinding Find an element by exact binding.
model Find an element by ng-model expression.
buttonText Find a button by text.
partialButtonText Find a button by partial text.

repeater Find elements inside an ng-repeat.


exactRepeater Find an element by exact repeater.
cssContainingText Find elements by CSS which contain a certain string.
element(by.cssContainingText('.className', 'PartialTextToFind'));
options Find an element by ng-options expression.
element(by.css('[ng-options="item as item.label for item in items track by"]'))

deepCss Find an element by css selector within the Shadow DOM.




II. Extended from Selenium/webdriver JS:
className Locates elements that have a specific class name.
css Locates elements using a CSS selector.
id Locates an element by its ID.
linkText Locates link elements whose visible text matches the given string.
js Locates an elements by evaluating a JavaScript expression, which may be either a function or a string.
var wideElement = element(by.js(function() {

  var spans = document.querySelectorAll('span');

  for (var i = 0; i < spans.length; ++i) {

    if (spans[i].offsetWidth > 100) {

     return spans[i];




name Locates elements whose name attribute has the given value.
partialLinkText Locates link elements whose visible text contains the given substring.
tagName Locates elements with a given tag name.


xpath Locates elements matching a XPath selector.


In order to use the locators, you should at least have some basic HTML knowledge, you should know how to read the HTML code, you should know how to inspect the code in browser, and you should have some basic understanding of browser’s “dev tools”. This means, inspect, console, firebug, network, etc. Extremely useful stuff.


How to see HTML of a webpage, and get started on using and writing automated code using the locators? You need the developer tools!
All you have to do is to right click, anywhere your browser and click on “inspect”. That’s it. You have the developers tools, now open. You should see the  developer’s tools, Elements’console. More about this a tiny bit later.
qa testing - developer tools - chrome
qa testing – developer tools – chrome
Now you wonder. Why did I wrote this article? I want to help the community and give back. I’ve been helped countless times, now it’s my turn to give back.

macOS High Sierra 10.13 failed installation and fixes. mbp 2015

I upgraded from 10.12 Sierra to 10.13 High Sierra, the installation failed, and I fixed it on my 13″ MPB Early 2015.

This is what I’ve been trough for fixing my mac!

The first thing that bugs me, is the fan and high temps. The fan does not go bellow 68 degrees. This is almost 10 degrees more than Sierra, in IDLE.

I can not see any actual differences in the software so far.

The installation of High Sierra took about 1.5 hours.

First time, when I tried to actual upgrade to High Sierra it totally crashed my macbook.

The installation failed, with the error “High Sierra can’t be installed on your computer”. Which was fine. I rebooted, promoted me to enter my password, so far so good. The password was not working anymore! Hmmm, okay. I have a backup.

Bellow, there was an option to reset the password with my Apple ID. I’ve clicked that, started loading… and kept loading for about one hour. I tried to force stop the mac (long press on the power button). The macbook’s screen turned off. Okay. I tried to press it again. No sound, no movement, no image. Hm. The thing is not even powering on anymore.. I did not had the charger with me.

1 hour later, one trip to the work and back, got the charger.

The charger was working, but the thing will still not turn on! Started to get a little frustrated. Also, I’ve noticed that the macbook was however how. Therefore, my guess that it was never powered off. I waited another hour no change, the macbook was still on. I tried Command R, to reset it. No sign of turning on or off. At that moment I started to panic.

Luckily I found the bellow picture.

This brought my macbook back to life, because of upgrading to High Sierra.
SMC Reset, High Sierra Upgrade failed,
SMC Reset, High Sierra Upgrade failed, and fixes



After the Macbook booted, I pressed Command R, wiped the whole drive, reinstalled Sierra from scratch, everything started to work normally again. I’ll get back with updates shortly.

Currently I’m going to live dangerous and keep trying High Sierra.


UPDATE October 2017

So far, I’ve used High Sierra on daily use. I’ve decided to delete everything and reinstall from scratch.

The whole install took less than 40 minutes. Everything. After 40 minutes, I was up and running.

So. I spent with the fresh install more than 2 weeks.

What I’ve noticed after more than two weeks after clean installing mac OS High Sierra? 

The temperature, is still a bit higher.

The intern file managing is balzing fast. You can see this reflected on how fast you copy something. This is because the new file system Apple introduced with this release, APFS.

APFS vs HFS+ ? I see almost no difference

Now, let’s not quite rush the things. On a daily usage, the macbook pro early 2015, was already fast enough and highly optimized for running apps. It was really fast before. It’s really fast now. I see no difference here.


How does the new High Sierra OS works for you ? I’d appreciate letting us know, in the comments bellow.

Skype is DOWN. Microsoft is did not offered details yet

Microsoft acknowledged that the Skype is down, and they are currently investigating this.

Skype is not working for millions of users from the entire world. Currently it’s not possible to login to your Skype account. If you are already logged in, it will be set to “offline” automatically. If you’re trying to use Skype from web, you will see a “sending”, and not completed emoticon.

Skype was reported that stoped working around 1:00 UK time. This starts to be more and more frustrating for Microsoft users.
Users already tried to report this issue on the Microsoft forums, but so far, there is no update on this, from Microsoft.

There are some other good solutions as Skype replacement, like: Slack, facebook, email.

How to be reliable as a freelancer – common rules

How to be reliable as a freelancer – common rules

admin on 05/03/2017 19:07:49 updated on 05/09/2017 06:52:39

as a freelance developer one of the assets that clients are interested in is reliability. Other Key aspects:
Come up with solutions
Delivering stellar work
Stick to the plan
Don’t go MIA


If you’re just starting out as a freelance developer, you will soon learn that one of the assets that clients are interested in is reliability. As a freelance developer, reliability is a trait you want to cultivate, in order to keep clients coming back for more. Here are some of the moves that will label you as a reliable freelance developer:

  • Delivering stellar work – This one should really go without saying, right? We’ll say it anyway. Delivering high quality work consistently is a mark of a reliable freelance developer. In order for this to be the case, you need to be careful to allot enough time for all the projects, don’t overwork yourself or the quality of your output will also be affected and that is something that you definitely do not want when working as a freelance developer.
  • Stick to the plan – If you want to be seen as a reliable freelance developer, you’ll want to stick to the plan you’ve conceived with your client. If you have any questions or uncertainties, make sure to clear them up with them (preferably in writing). Of course, this doesn’t mean that clients don’t appreciate some initiative from their freelance developer, so if you do think there are some changes that could be made to the benefit of the client, then call them up and discuss it. They’ll be happy to see you’re invested in this.
  • Don’t go MIA – Freelancing as a developer can mean you get pretty caught up in whatever project you’re working on. But when we’re talking about bigger projects over a longer time period especially, make certain to establish some routine form of communication with your client, to keep them updated. This is another element that clients deem to be the mark of a reliable freelance developer.
  • Come up with solutions – We’ve all run into obstacles or challenges when working as a freelance developer. However, what signals you out as being a reliable freelance developer in these situations is not only identifying the issues, but proposing solutions as well. Even if the client won’t accept your resolution, a reliable freelance developer gets involved when things go bad.

As you can tell, a lot of what makes a freelance developer reliable is being proactive, getting involved and keeping to deadlines. So, if you want your clients to see you as a reliable freelance developer and request your services in the future, keep it in mind.

I’ve used Mac’s OS X, Windows and Linux over the 15 years. Here are my thoughts.

Let’s get one thing straight.  I have 1PC, 1 mbp, and 1 laptop. I run Windows, iOS and linux on each computer.
Specs ? not going to really bother you with this. I6 CPU (this is a bit of a joke, it’s an amd 6350 with 6 cores that runs at 3.9 ghz), a mbp 2015 (i5) and a i7 laptop. All of them got SSD’s and 8GB ram. So, the performance is not quite an issue.

What I do? Development and blogging. Why do I need so much performance? Honestly, I don’t really. Everything runs quite smoothly. But I am a geek.

Why do I use all 3 big OS’s? Well, I’m a geek. That’s why. What’s the advantage for each os in development? Pretty much, there isn’t one. You get used to the graphical enviroment, then you just have to make sure that it keeps running smoothly.

Each system is very different. Each system is quite similar to each other. Let’s break it down.

I use Google Chrome (syncs all my browsing data, bookmarks and password. Great so far).
I use Skype (on linux, you have skype alpha, it’s quite cool).
I use Spotify (same on all 3 systems).
I use Sublime (same on all 3 systems)
I use terminal (quite the same on all 3 systems)
I use workbench ( – || – )
I use thunderbird (or earlybird, depends on my mood, but   – || –  )

This is pretty much everything I use. So, the apps are quite the same. Why do I use all 3 of them, and what’s the difference?

So. Linux. Mac. Windows. They’re all super duper friendly in 2017. You can’t just dislike one.

Let’s start with my favourite. iOS. I’ve been using this os for about 4 years now.

My first impression and thought was, “Why the heck they didn’t made a ‘cut’ option“. This is something that I was using. Later, I learned that there’s a shortcut for that as well. Just that it’s not CTRL + X. it’s Command+Option+V pastes the documents into the new desired location on the Mac, cutting it from the prior locating and moving it to the new location. Cool.
This OS, is quite simple, and the most pleasant fact is that it looks smooth. Edged. Beautified. Intuitive. Cool. Currently I use Sierra 10.12.5. It’s amazingly stable, and beautiful.

Linux. First time I used linux, was a distro called Mandrake linux. Later derived into Mandriva. It was one of the latest versions, somewhere around 2005. I didn’t had internet at that time. Therefore no codecs, no updates, nothing. Was quite useless for me. Later I discovered ubuntu, got a internet connection. I discovered workspaces. Then, there was love. This was the most useful feature that an OS could have for me, at that time. This is why I kept using it. Currently I use Ubuntu 17.04. It’s free, and blazing fast.

Windows. Well this was my first OS, I started using this OS since 3.1 version. They just launched windows 95 at that time. Or 98. My computer was not able to run windows 98 smoothly. It sucked. But you could get what you had to do, done. There were games. There were audio codecs and BSPlayer and Winamp. Cool times. Didn’t impressed me much at that time. But, since linux wasn’t really an option, and I didn’t had money for a mac… this was the best option (hackintosh was not really an option tho’ at that time). Currently I use Windows 10 (with licence), and it got a beautiful UI and a beautiful UX.

So. 15 years later. Developer. Why do I use all 3, now?

Well, believe it or not, I use windows OS X and Linux for entertainment(please, read movies here) and development. They all incredibly robust. They’re all stable. They’re all blazing fast. All of them are secure. All of them got my app requirements.

Right now. What’s the biggest difference, for me, between all 3 systems? Simple. Different UI(user interface). Different UX(User Experience).

Honestly, it does not really make any difference for me, on which system I am using. Most of the time, at work I use iOS’s Sierra 10.12.5 connected through ssh to my Ubuntu machine. Most of my work is on the ubuntu system through the Sierra’s terminal. Why I do this? Simple. All the development, is being deployed on the Ubuntu machine. Most of the things that the Ubuntu machine is doing, is compiling with babel (es2016).

Do you want to hear some more? Please share this article.

Originally published here:

grunt and protractor: for beginners

Small app using protractor and grunt, available for free on github with install instructions.


I created a demo github testing repository, wanted to go with protractor for angular website.

After putting the code together, I started looking for a huge angular website for writing test cases and getting to work. Surprise. With all this fuss, there really aren’t so much websites using angular. There are few, but not as much as their competition.

I decided to go with protractor’s API. It has a demo on pretty much most of the Angular’s development features, so we can use this website as testing point (if I’ll find any bugs, I’ll point it out)
For a first lesson, I’ve set a git repository, with protractor 5.1.1 with grunt and a JSON reporter.
In order to get started, feel free to get the repo, and install it.

#initialise git, and get project

$ git init
$ git pull

#install dependencies

$ npm install -g Protractor
$ npm install -g grunt
$ npm install

#run project

$ grunt e2e

Basically, this project does not do much yet, for the first lesson but it will do for future lessons.

Protractor docs can be found here.
Grunt docs can be found here.


Why I Grunt over gulp or webpack?

Grunt is great for simple built in tasks. (one way or another using any runner you can get the job done)
Grunt is easier to learn (it takes about 5 lines of code before is up and running.
Grunt has a bigger community (if you don’t believe me, go and check their github).

Why I choosed Protractor over nightwatch or vanilla selenium ?

Progractor is integrated with webdriver (it gives me Selenium)
protractor knows to wait until Angular finishes rendering DOM (basically the technologies are communicating with each other and Javascript tells protractor that it finished, it can continue with queue tasks)