Want to make six figures? Learn to be JavaScript Developer

Technology

There are thousands of JavaScripts freely available for downloading. These range from Drop Down menus to Snow Effects, from Mouse-over Effects to Digital Real-Time Clocks.

JavaScript is useful for introducing limited animation to your web pages without the download times associated with Flash animations. Your page tracking and Google Adsense tracking also use JavaScript.

People see JavaScript programming as a new and highly paid career. Universities supply the courses because the demand is there and it’s a good way for the university to make money. As these qualified programmers come onto the jobs market, the number of programmers is going to exceed the number of vacancies and salaries will fall.

When companies can outsource their programming needs to low cost countries like India and China, they are unlikely to want very many highly paid programmers on their rolls.

If you do learn JavaScript you can earn money on one of the freelancing sites, by bidding on various projects. Be aware that you will not be able to compete on price with programmers from India or China, to compete on quality and completion times. The reputation you establish early on will stay with you for a long time, so make sure it is an impeccable one.

JavaScript does have some disadvantages. It works differently on different browsers and it increases the download time of your pages.

Against these disadvantages are its advantages. There are sites where you can download scripts for free and many sites where you can learn at least the rudiments of JavaScript programming without paying a cent.

JavaScript and other Web Anxiety

JavaScript and other Web Anxiety

Technology

I recently came across this excellent video called “Full Stack Anxiety” by Joel Califa with this related article by @FirstMark and it got me thinking about my current situation as this hybrid UI/UX designer and front-web developer.

First, a little background on my web career for context

I have been building digital deliverables for the web since 2005, and in the beginning, I struggled with HTML and CSS and was more of the Adobe Creative Suite guy using Photoshop and InDesign to design print materials. Later on, continued to traverse the Adobe Creative Suite with Flash and Dreamweaver (actually when I started using Flash and Dreamweaver they were still own by Macromedia). Built a few great portfolios in Flash and some okay websites in Dreamweaver utilizing templates.

Hit a few bumps in the road at the beginning of my career working for some not so great freelance gigs and contract jobs, but all of them a learning experience making me a better at what I choose to focus on and find my niche in the web world.

Between 2006 and 2007 I began to understand HTML and CSS and was able to build websites utilizing Photoshop, NotePad++ and your traditional shared hosting provider, uploading files via FTP.  I also was able to implement things like JavaScript and jQuery but never without reference; I could never write JavaScript from scratch as I did with HTML and CSS. There was a lot of copying and pasting happening with JavaScript.

Then I discovered WordPress, and it opened a whole other realm of opportunities for me.  I felt limitless with WordPress and still do today. But what I was finding utilizing the framework like WordPress was that I was missing out on the opportunity for what I  would consider “hardcore web programming,” for example building a PHP or JavaScript web app from scratch. And doing that hardcore web programming with all the fancy compilers and make tools you find today. For example Gulp, Grunt, WebPack LESS, and or SASS.

Also felt like I missed out on genuinely understanding JavaScript and now not having a keen understanding of JavaScript background leaves you not worthy of many UI developer jobs. Or even worst you try to take a UI developer job to learn JavaScript and all the cool new tools, but the current web-devs are a bunch of pompous, egotistical assholes. And if you don’t operate at their speed your, then you are an idiot! “Look at how fast I can use the command line.”

Sorry had to vent there, let’s get back on track.

What to focus on next for my web career?

I have held a multitude of positions everything from graphic designer to web developer to the more recently UX designer and UI engineer. To me, they are just titles. Why? Fundamentally I approach all my jobs with a similar mindset, get presented with a problem/task and do everything in your power and knowledge to solve that problem even if not knowing the proper syntax or methodology to explain it. How to explain it? Utilizing your past experiences,  online resources, and communities.

Over the years you gather the necessary and experience and knowledge to take with you for your next adventure (job/gig). But sometimes that only gets you so far. Questions I ask myself today

  • Should I niche down? – For example be purely a WordPress Developer.
  • Should I get better at JavaScript and pick up a framework like React.js? – Probably should
  • Should I focus more on product design and management? – Maybe one day I could be a product manager and not worry about coding every again.
  • Should I focus on project management? – Maybe one day I could be a project manager and never worry about coding again.
  • Do I continue to be a jack of all trades and master none? – Not likely a good idea.

Hence, you can see where the anxiety comes in to be being a web-dev hybrid purple squirrel thingy.

But thanks to the excellent video and article by Joel he does give us some impressive outlooks on what to focus on (note this our my takeaways):

Be happy with your career and what you decide to do

Currently, I am satisfied working as front-end web developer/graphic designer typically in marketing departments utilizing tools like WordPress, Photoshop, Moz, Hubspot, Google Analytics and Hootsuite to deliver compelling digital solutions and custom WordPress sites that drive leads to convert.

Where do I want to be eventually, maybe? I may see myself as a creative director, product manager or even a director of development/IT. But who knows where the road will take me. For now, I keep gathering experience and knowledge with me with each job and moving forward.

Since I feel confident in the UX design process and am proficient in Photoshop, rapid prototyping, etc. I feel like I want to focus on learning hardcore JavaScript development. Why? I think it’s imperative for me to stay relevant in the front-end web development world. Plus I feel most developers get paid more than designers in some cases*.

*Of course, this is based on industry, company, location and whole other bunch of factors. But currently I see developers getting paid more in my region and more opportunities for developers then I do designers. 

Stop being a jack of all trades and master none

So to paraphrase Joel,  “Stop chasing the trends” – You don’t have to learn the latest and greatest JavaScript framework. But be aware of those frameworks and maybe try one out but do what you are good at for now and keep learning.

So thanks Joel for putting things in perspective it helps. Until next time, Godspeed.

john-jennings-430220-unsplash

What is the purpose of a good design?

UX Design
Truly, what is the purpose of a good design? A good design can be like a logo. It stands for what the company is for. In getting a design, one should consider how it will be of use. It can be made of more than one type, depending on the preference of a company, as long as the concept is still the same.

The simpler the design, the better. With the evolution of graphic designs came the use of more complex designs to create and to choose from. Special effects are now being used in answer to the advancement that people and the world is undergoing.

This may be expensive but they it does the job of getting more attention than its counterparts. A simplified version of this graphic design is required to some of the more simple applications.

What is image style in designs?

The design is what the company should be. It is the company’s representation so it would only be right for the designs to justify the company.

The clients that these companies accommodate for should also be represented in the design. Having a two-way purpose for both the provider and the consumer comprises a successful design.

Is format important in designs?

Formatting your designs would add to its effectiveness. By using the right font formats, drawing and photographic applications and color management, will guarantee the easy management of these designs.

What is originality in designs?

As designs represents your company, they should be unique enough for people to relate it only and exclusively to your company. This reduces the probability of misconceptions and misunderstanding in the impressions the company has to make to the people. Having an incomparable and distinctive design could make your company memorable enough for people to remember it, consciously or unconsciously.

What is the importance of appeal in designs?

Appeals are what make your design attractive, no matter how simple it is. Using the right fonts and choosing the right colors that can create the correct appeal to the people is a crucial factor.

The company does not only have to think of the effect it will give today but also what it will do in the future. The appearance could be changed from time to time if necessary to generate the right outcome.

Designs can make or break the company. Most often than not, it takes time to get the right designs that can make a lasting effect. With more graphic designs being created and invented, people can have more choices to choose from.

blockchain

The Infamous Blockchain

Technology

We have all heard about the blockchain, and most of us will associate with Bitcoin or cryptocurrency. But the blockchain is a piece of technology separate from Bitcoin and other cryptocurrencies. The Blockchain could be considered a web-based application and or database. But it’s best described as online, uncontrolled public ledger in non-technical terms.

According to Investopedia.com, “A blockchain is a digitized, decentralized, public ledger of all cryptocurrency transactions. Constantly growing as ‘completed’ blocks (the most recent transactions) are recorded and added to it in chronological order, it allows market participants to keep track of digital currency transactions without central recordkeeping. Each node (a computer connected to the network) gets a copy of the blockchain, which is downloaded automatically.”

The blockchain cannot be compared to another database technology in existence today. Considered to be almost revolutionary and making even some governments afraid of it.

What benefits can we expect from the blockchain?

1) The blockchain levels the playing field: From small to medium-size businesses, the blockchain can bring decentralized-technology to our fingertips. Blockchain levels the playing field, so that all voices can be heard, offerings can be marketed and creativity and innovation can flourish without government interference.

2) Economic empowerment: Blockchain enables all to do some incredible things at the click of a mouse, tax-free. We can perform transactions with blockchain for just about anything: pay bills, plan vacations, pay for an Uber ride, buy or rent movies or even order food services.

3) Careers in blockchain are fantastic: A job in a blockchain-related field can be gratifying. It can also improve your quality of economic and financial well-being. Blockchain skills are unique, and in short supply, the work is exciting and gratifying, and the financial rewards are relatively high.

4) Great futures for our children: Through blockchain, the world is literally at your children’s doorstep. Blockchain enhances the education of children. Just imagine what could happen children spent time designing or improving economics by building their cryptocurrency or used their creativity to create videos, films, music and written works and paid for that creative with a decentralized currency. The possibilities and opportunities associated with blockchain are endless.

BASIC AUTOMATED WEBSITE TESTING

Basic Automated Website Testing

UX Design

The scenario

You just finished building your company’s website. You have tested it yourself and had other company employees test it. The site now goes live. A few weeks later you start getting emails from irate customers who complain that they are unable to place their orders because specific steps in the Buy Now process give errors. You quickly fix the problem. A few days later you get complaints about some other issue, and you again react rapidly to set the website. This continues for a few months till the charges finally halt, and things stabilize. At this point, you make some enhancements to your site. A few days later a customer email alerts you to the fact that in the process of making this enhancement you broke something else on the website. Again you spend the time to find and fix the problem, but by now you are perplexed and not a little frustrated. These issues have cost you many customers in the last few months and potentially spread ill will across the broader customer community. It seems to you that the only way to have detected these issues before they went live was to have employed a massive army of software testers, something your company is unable to afford.

Automated software testing

Enter automated software testing. While nothing can replace good human testers, broad test coverage requires some degree of software automation for it to be economically feasible. Automated testing tools can provide a considerable workforce multiplier and do an excellent job complimenting human testers. Every change to your website no matter how small requires thorough testing to ensure that nothing else was affected. This becomes very time consuming very quickly due to the large number of possible cases to test. A strategy whereby tests are automated using software becomes an economic necessity.

Functional and regression testing tools

There are two classes of automated testing tools. The first kind, functional and regression testing tools, helps to make sure that the website behaves as it should: for example if a customer clicks on button X, page Y is displayed without errors. Functional and regression testing tools can automate a large number of scenarios to ensure that your website works as intended. The second type, load testing tools gauge how well your site performs when subjected to significant stress, such as a large number of simultaneous users. I will be discussing load testing in a separate article.

I will now give you an overview of the essential characteristics of functional testing. Before you can begin any functional test automation, you will need to identify the test scenarios you wish to automate. Once this is done, you will need to generate test scripts that cover these scenarios.

A functional testing tool will typically record user interactions with a website. As you perform various operations on your site or application, the device marks every step. When you finish recording, it generates an automated script from your interactions with your website. Alternatively, you could use the tool to construct the scenario by hand. Typically testers tend to do a combination of the two. They will use the recorder to generate the necessary framework of their scripts and then tweak the scripts by hand to incorporate individual cases.

Scripts can be graphical and text-based. An excellent functional testing tool does not require users to have a programming background. Users not proficient in programming will work predominantly with graphical scripts. In most devices, graphical texts will typically show all interactions in a tree structure and users can edit any node of the tree to modify the script. Some users, however, who have programming backgrounds may wish to program their scripts. These users will typically work with a text script written in a standard language such as JavaScript or VBScript.

Once you have generated your script, you will need to insert checks in your scripts to test if your website is functioning correctly. Such checks are usually called checkpoints. A checkpoint verifies that values of property obtained when testing the website match expected costs. Inspections enable you to set the criteria for comparing expected values with obtained values. The expected value of a property is derived from recording interactions with the website. It is viewed and modified from checkpoints. The current value is retrieved during replay (i.e., during the execution of the test case).

Kinds of checkpoints

There are many different kinds of checkpoints. A page checkpoint verifies the source of a page or frame as well as its statistical properties. You can check for broken links, verify link URLs, image sources, the hierarchy of HTML tags or even the entire HTML source of the Web page or frame. You can also set thresholds for the loading time of a page. A text checkpoint verifies that a given text is displayed or is not displayed in a specified area on a web page. A web object checkpoint checks the properties of a web object, e.g., the value of an HTML INPUT field. A database checkpoint verifies the contents of a database used by your website.

When you replay a test script, the testing tool will open the recorded application and perform the documented steps in the same sequence they were specified in the text. As it replays the script, it will also run through all the checkpoints you have inserted into the script. Also, you can test the behavior of your application with varying data inputs. For example, you can try to submit a page after entering different values in the edit box of a web page. At the end of the replay, a detailed report is typically be generated.

Functional test automation allows you to automate the repetitive testing of a large number of scenarios across your website. Practical testing tools are an essential weapon in your development arsenal whose use provides a huge productivity gain and allows for small testing groups to accomplish significantly more work. There is an extreme economic case for Functional Testing Tools as part of the development and deployment cycle of a website.

WordPress as CMS

Can WordPress Be Used As A Content Management System?

WordPress

The default WordPress

There has been talking about using WordPress beyond the typical blog set-up, into the realms of a full-fledged content management system or CMS or even an application development framework. Yet, most people have no idea how this is even possible. I have to stress that the default WordPress software was intended to be a blogging tool, so if you’re trying to make it work like a different type of content management tool you’ll have to use the correct plugins (enhancements) and have a clear idea of what you want to achieve.

While the exact step-by-step method is out of the scope of this article, let’s explore some of the ways you can use WordPress, as I have personally done before.

1) WordPress as Business Directory

To make WordPress work as a business directory, you’ll need a special plugin and a source for the articles. The Business Directory Plugins is the perfect tool for this, as the business, there are usually human-approved.

Business Directory Plugin allows you to build a local directory, a directory of business providers, a Yellow-Pages style business directory, Yelp-like review sections, create a church directory, build an address book directory and much more. You can add any kind of directory using Business Directory plugin.

 

2) WordPress as a Membership Site

You can set-up a free or paid membership site using WordPress. All it takes is a few simple plugins to get the job done. Once you’ve installed the plugins, members will need to login to your site in order to view the content. You can also place a login form in your WordPress theme files to make it easy for users sign in and out of your membership site.

However, the plugins only create a simple membership system, so if you’re looking to create different membership levels and more advanced features, you’d probably want to sign-up with a professional membership system.

3) WordPress as a Classified Ads System

WordPress can work like any other classifieds website too. Users can sign-up on your site and place classifieds in the form of new blog posts. They can even set expiry dates for their ads and specify listings or “wanted” ads.

However, you will need to create all the necessary categories and even create a sign-up information page to teach your users how to place ads. The upside of using WordPress as a classifieds site is that you can also use tagging tactics to get traffic from social bookmarking sites.

4) WordPress as an Audio / Video Training Site

Using the membership plugins or WordPress compatibility plugins, you can create a membership site with WordPress. Then, all you need to do is to add the “Podcast or Videocast” plugin which takes care of all audio and video elements on your website.

You will be able to display and stream MP3 audio or FLV video using their built-in players. The Podcast plugin is really robust and allows you to specify setting on iTunes, so you can make this commercially and available to the entire iPod / iTunes community.

As you can see by now, there’s a lot of possibilities when it comes to using WordPress to the extreme. Every day brings new possibilities to using WordPress as a complex CMS instead of the modest blogging tool it was designed to be.

What About WordPress Plugins?

What About WordPress Plugins?

WordPress

Huge range of WordPress plugins

The function of WordPress has opened up endless possibilities recently, taking it to a new level no longer limited to a blog site. With a huge range of WordPress plugins already available, and many more being added constantly, website owners can put up custom designed pages in a few minutes with a little help.

WordPress plugins are scripts developed by various programmers to give users more options for their blog pages. For example, a WordPress plugin can be used to display recent comments, or as a spam prevention tool. WordPress templates are proving to be extremely popular for externally hosted websites, so having the ability to add more features makes the WordPress plugins a very handy source of free programming!

While many people set up WordPress blog pages to share personal and social stories, blogging has become an essential part of the marketing and promotion sector. With a separately hosted website, WordPress users can include advertising links or Adsense, and promote affiliate products. WordPress plugins provide excellent tools for customizing these types of sites, with add-ons in a wide range of categories including:

  • Adsense management
  • Advertisement rotator
  • Search engine optimization
  • User restrictions and password options
  • Visitor and click statistics
  • Search boxes
  • Tracking tools
  • Social bookmark tags

Since there are a large variety of WordPress plugins to suit all sorts of users, the level of expertise required to install some of these varies. You’ll need an understanding of FTP, and Zip files, and some knowledge of HTML. More advanced website owners can even develop their own plugins. A degree of PHP programming is required, and some WordPress plugins also use JavaScript or CHMOD to function properly.

A note about WordPress.com and WordPress.org

Although these two sites sound the same, the services offered by each one are different and this often causes confusion for people. The difference lies mainly in the hosting side of things. While a free WordPress blog will be hosted on WordPress.com, the themes and templates are limited and users are not allowed to include advertising or affiliate links. WordPress.org on the other hand requires you to have your own domain and hosting in place, but is a better option for advertising and marketing purposes, and this is where the WordPress plugins come into the equation!

Self-hosting website owners can make light work of designing their sites with WordPress plugins, creating unique personalized pages to attract their visitors!

How to Make Your WordPress Install Spam Proof

How to Make Your WordPress Install Spam Proof

WordPress

There will be spam

As long as there is Internet marketing, there will be spam. A lot of it comes from overseas, but some of it is from people who just don’t know any better. They learn to go about doing things the wrong way, and some of them can get into trouble, as with email spamming. But the people who spam blogs, are, by and large, just wasting their time.

Rather than waste valuable Internet marketing effort, people should do something much more effective like writing articles or posting on their own blogs. But some spend their money on “blog blasters,” which randomly spam blog comments throughout the blogging universe. What these people don’t realize is that they’ve wasted their money. But then, for every Internet marketing success story, there will be thousands of Internet marketing failures. People just don’t get it. Spamming WordPress blogs, at least, is a total waste of time.

Activate Akismet

WordPress blogs come with a plugin, already installed, called “Akismet,” and it will automatically pick out the spam comments and hold them for you until you delete them. It’s pretty efficient and catches about 90% of the spam comments that come in. To activate the plugin, click on the “Plugins” tab from your WordPress dashboard. You’ll see Akismet in a grey or green bar. If the bar is grey, you’ll need to activate the plugin so click on the link on the right-hand side that says, “Activate.”

API Key

To complete the process, you’ll need to get an API key from WordPress. This is a simple line of letters and numbers, and to get it, you just need to register with Word Press at http://wordpress.org. Once you’ve signed up, WordPress will email the API key to you. When you see it in your Inbox, go back to your blog and click on the Plugins tab again. To the far right, you’ll see “Akismet Configuration.” That will take you to a page that has an empty box for that API key. Fill it in and click “Update API Key.” Bang! No more spam.

Manage from your Dashboard

Now, you’ll have to monitor the spam, so go to “Manage,” from your Dashboard screen. You’ll then see that “Akismet Spam” link. When you see there are spam comments, if there are only a few, you can check to see that they’re all spam. If so, then, click on “Delete All!” and they’re gone. Before my blog had so many spam comments, I found some legitimate comments and could weed them out to be approved. Now, we get hundreds of spam comments every day, so they’re just all deleted. Anyone wanting to spam my Internet marketing blog is out of luck.

If you have a blog, you need that spam control. So, it’s not enough to just activate the spam filter. You have to approve your comments. From the WordPress dashboard, click on “Options,” and then “Discussion.” Set your preference to: “An administrator must approve the comment.” Then, you’ll be able to see every comment before it hits your blog. Akismet is a great blocker, but not 100%.

Akismet will handle most of the problem. When your blog is new, you may not have much spam, but once it hits the search engines, you’ll see it grow daily. Akismet is one great way to control this quickly and easily. Let someone else waste their Internet marketing time on stupid tricks. You won’t have to.

Do Search Engines Care About Valid HTML?

Do Search Engines Care About Valid HTML?

HTML

Valid HTML

Like most web developers I’ve heard a lot about the importance of valid HTML recently. I’ve read about how it makes it easier for people with disabilities to access your site, how it’s more stable for browsers, and how it will make your site easier to be indexed by the search engines.

So when I set out to design my most recent site, I made sure that I validated each and every page of the site. But then I got to thinking while it may make my site easier to index, does that mean that it will improve my search engine rankings? How many of the top sites have valid HTML?

HTML Validator

To get a feel for how much value the search engines place on being HTML validated, I decided to do a little experiment. I started by downloading the handy Firefox HTML Validator Extension (https://addons.mozilla.org/en-US/firefox/addon/html-5-validator/) that shows in the corner of the browser whether or not the current page you are on is valid HTML. It shows a green check when the page is valid, an exclamation point when there are warnings, and a red x when there are serious errors.

I decided to use Google trends to determine the top 5 most searched terms for the day. I then searched each term in the big three search engines (Google, Bing, and Yahoo) and checked the top 10 results for each with the validator. That gave me 150 of the most important data points on the web for that day.

HTML results

The results were particularly shocking to me only 7 of the 150 resulting pages had valid HTML (4.7%). 97 of the 150 had warnings (64.7%) while 46 of the 150 received the red x (30.7%). The results were pretty much independent of the search engine or term. Google had only 4 out of 50 results validate (8%), Bing had 3 of 50 (6%), and Yahoo! had none. Now I realize that this isn’t a completely exhaustive study, but it at least shows that valid HTML doesn’t seem to be much of a factor for the top searches on the top search engines.

Even more surprising was that none of the three search engines home pages validated! How important is valid HTML if Google, Yahoo!, and Bidon’tont even practice it themselves? It should be noted, however, that MSNs results page was valid HTML. Yahoos homepage had 154 warnings, MSNs had 65, and Googles had 22. Googles search results page not only didnt validate, it had 6 errors!

In perusing the web I also noticed that immensely popular sites like ESPN.com, IMDB, and Facebook don’t validate. So what is one to conclude from all of this?

It’s reasonable to conclude that at this time valid HTML isn’t going to help you improve your search position. If it has any impact on results, it is minimal compared to other factors. The other reasons to use valid HTML are strong and I would still recommend all developers begin validating their sites; just don’t expect that doing it will catapult you up the search rankings right now.

Are WordPress Templates Difficult To Understand

Are WordPress Themes Difficult?

WordPress

Are WordPress Themes Hard to Understand?

One of the things that seem to put people off using the WordPress software on their own site (as opposed to the hosted WordPress blog site) is the technical side of the process involving WordPress templates and themes. There’s a lot of talk about code, PHP, CSS, and plenty of other confusing abbreviations that don’t mean a lot to many people! This is unfortunate, as a WordPress blog can make such a big impact on web pages, and can even be used as a standalone website once you get your domain name and hosting sorted out.

Understanding the way WordPress works, installing the software, and figuring out how the templates fit into themes does require a bit of techie know-how. It is not as hard as it first appears though, and thankfully, for those of us who are a bit technically challenged, there are some excellent guides and resources that can help make the process a whole lot smoother.

The WordPress templates are the backbone of the themes used to build the WordPress blog pages. Themes come in all manner of styles and designs and can be customized by altering the layouts, installing WordPress plugins and by adding or changing the templates. WordPress templates are basically just a bunch of files that together make up the themes for your WordPress blog site.

Essential WordPress Theme Files

Generally, a default set of templates for WordPress themes would include some of these essential files:

-> index.php this is the main template file for your WordPress blog
-> header.php the header template
-> footer.php the footer template
-> page.php for creating WordPress pages
-> single.php for creating WordPress posts
-> sidebar.php the WordPress blog page navigation
-> style.css the stylesheet that makes up the layout for your WordPress blog.

These are just the basics; there are much more WordPress templates that can be added to customize your blog; for example, links, search forms, archive posts, and WordPress blog comments.

Another confusing aspect for some people is the mention of template tags. Again, these are not as difficult to understand as they first seem. They are basically just bits of code to help the WordPress templates to perform their job properly. The tags within the templates contain the instructions to make your WordPress blog a cleverly designed set of pages!

Customize WordPress Pages

One of the great things about WordPress templates is that you can customize them to design individual blog pages as well as post pages. The pre-defined templates will usually apply to all the pages on your WordPress blog, but you can add, remove or change the other template files to create unique items on each page.

If you consider the WordPress templates as the mechanics of the themes, you can hopefully begin to understand how they work together to create a WordPress blog.