MarketingSEOUncategorizedWeb Development

Website Development

5 Website Mistakes

Websitemistakeshurtingyourbusiness

The world has moved online, whether you make and sell a specific product or offer a services, customers are finding businesses online. In a recent blog post we explained Why A Good Website Is Important, but this post is about some of the common mistakes we see when starting with new clients, building or updating websites.

1. Your website is too busy

Making your website reader friendly is key here. If your online website is the first time a client is interacting with your business and they come overloaded with information they are more likely to navigate off your page and find an easier to read site. A good way to create a visually more appealing website is to have more white space. Sometimes a little less is more. Keep text blocks short and sweet. If you need to expand on idea, think about creating a blog page to link to for more information.

2. Ignoring the back end of your site

There are a few tools like SCHEMA you can use in the back end of your website to improve your ranking in search engines. Alt text for images is a great way of having keywords added to content. Structured Data markup helps organize the information for search engines so it they can understand what your website is about.

3. Broken links

Broken links or links that lead to no where on your website have a lot of negative effects. Firstly, it is frustrating to potential clients/customers. Picture this, your client is on your e-commerce site and ready to purchase the adorable item you have on your landing page. They click and it leads them to an error message or somewhere else. Now the customer has to navigate around your site to find what they are looking for and are more likely to go somewhere else. Additionally, too may broken or damaged links on your website can hurt your ranking in search engines.

4. Your website is SLOW

As we have shared in previous blog posts 47% of users leave a website if its loading time is more than 3 seconds. People don’t want to wait for a site to load in order to find what they are looking for. Our fast digital world has people wanting instant solutions to their problems and are more likely to navigate away from your site if it is slow moving.

“47% of users leave a website if its loading time is more than 3 seconds.”

5. It’s not accessible

Know your audience, especially if they are needing alternative languages or voice reading options. You can check out this website for a scan of your website.

 

 

Does all of this seem a bit daunting? Take one thing at a time and work on it slowly. Or you can always chat with the Panda Rose team about helping get your website updated.

EducationTechnologyUncategorizedWeb Development

Panda Rose Learning Solutions

Online Training, Learning and Educational Platforms

At Panda Rose we really believe in offering technical solutions in a wide variety.

We offer many services, one of them being building programs and platforms online for clients. Check out a few examples of some of the work we have done for clients.

Ideas Roadshow 

Ideas Roadshow is a supplemental learning for people in IB (International Baccalaureate) programs and creates standardized international learning. This programs are offered through various channels such as specific school, libraries and teachers.

Panda Rose was able to supply support for the website, including code updating and also build the newest IB viewing version.

Aim

Aim is an online language learning platform.

Panda Rose did some of the textbook mapping, meaning we were able to create the online textbooks in multiple languages for resources for students/teachers. In addition we created a chat forum for teacher and students to be able to communicate with each other on the website, rather than needing a separate app or platform. Leaving the user on AIM’s site, instead of another’s.

Curriculum Services Canada

Curriculum Services Canada (CSC) is the Pan-Canadian standards agency for quality assurance in learning products and programs. CSC is a not-for-profit organization that provides services including the development, implementation, evaluation, and accreditation of teaching and learning resources.

Panda Rose was able to update the trillium list (the list of approved textbooks and resources for education) as well as offered updating of their code base. Their website was running on an older version, meaning they were no longer receiving updates, so updating their code allowed them to get them again.

 

 

MarketingSEOTechnologyUncategorizedWeb Development

Your website if the first impression people have of your business.

They are searching the internet for your services or product and they land on your page! Congratulations they found you! Which even finding you is hard enough with tons of businesses online competing for the same top of the search page spot.

They navigate to your website and are greeted by an unappealing site, irrelevant information or it’s SLOW. *que dramatic music* Consumers attention spans are short and when they are searching for information or products, even shorter when they are stopped by a SLOW moving or difficult to navigate website.

Did you know that 47% of users leave a website if its loading time is more than 3 seconds? So optimization is a vital thing for your website. If it’s well-functioning and the content/ products there are of a high-quality, more visitors will surely come and conversion rates will increase.

Deborah, our in house Web Development Expert says “Your website is an extension of your business. You want your website to match the professionalism of your business.”

Having a clear message you are trying to portray to potential clients and customers right away is what will keep them on your website, navigating and researching who you are and just what it is that you do.

In addition, great websites are showcases for some of your best work. You can show of all the amazing products or jobs you have completed to a potential client/customer before they even have the chance to contact you. This decreases some of the time spent answering questions, making your business just that much more efficient.

Finally, a good website with great content helps get you noticed on search engines. The more time people spend on your site and the more often the visit, the more search engines believe your site and information to be relevant. If you want to learn more about SEO check out our recent blog post What even is SEO? And How To Use It.

 

TechnologyWeb Development

Email is a place of business. It is important in our world’s communication.It has many perks, multiple people can communicate together. Files and images can be shared. You do not have to be present to receive and email. And everyone has it.

 

On the negative side of email comes, spam and viruses. Which are extremely disruptive in our professional place of communication. Along with the chance of our personal information being stolen.

 

If email had sender authentication these problems would be no more.

 

Why doesn’t email have sender authentication?

Email was created in the 60s. At this time, those with email were in the government, universities and research labs. There was no need to be cautious when it came to email security. Sender authentication was not a need then because they were not being threatened by a web full of destructive individuals. And because there was a general sense of trust among those with access to emailing.

 

The form of communication was invented without creating the solutions to problems that were not yet known. Which I believe was the right thing to do. We shouldn’t be stopped from advancing in this world because of the unknown risks. Those risks can be taken care of once we know what they are.

 

Email wasn’t created with sender authentication in the 60s for understandable reasons. We are now well aware of the security issues that invade the email system today. From stealing passwords, unwanted emails and financial threats. My question is, why have we not yet fixed the problem?

 

Sender authentication would be a game changer for anyone with an email account as we would finally have the security to withstand attacks.

 

Tessa Houcher

MarketingSEOShoppingWeb Development

store front image

 Black Sheep Legging came to Panda Rose in need of a new website.

For those of you who do not know, Black Sheep Legging is a clothing company. They rely on the Internet and representatives to sell their product. They emphasize on being unique and owning your style. Based in Alberta Canada, this company is taking the legging market by storm.

Black Sheep Legging’s last website was having issues and they were ready for a freshening up. Panda Rose was able to create a completely new website using Shopify as the store provider without purchasing any extra apps but still equipping Black Sheep Legging with all of the many specific features necessary for the shop.

store front image

Here are the features we created for our client:

Panda Rose was able to create an advanced collection filtering by multiple simultaneous criteria system. This component would be similar to applications that can be found on shopify but now our client doesn’t need to pay about $20 a month.

We added “VIP Pricing” which are custom discount levels depending on the specific permission level according to the tag possessed by the individual. If we didn’t make this feature ourselves, it would have cost our client $30-$50 a month for an application found in Shopify.

We also created an internal customer credit system that fit our exact needs opposed to finding an app that isn’t customizable and or costs money.

Panda Rose also resolved a commonly reported problem as Mailchimp’s scripts often conflict with some of Shopify’s. This problem is usually solved by installing an app from Shopify that can cost around $5 a month. But a developer can solve this quite simply just like we did for Black Sheep Legging.

An affiliate system was required and was integrated with commission tracking. The “Rep Portal” also gives reps the ability to customize their personal rep storefront. We looked through the following apps to integrate into Black Sheep Legging’s shopify:

people

Refersion almost worked but it would not switch customers to reps automatically when they completed the signing up process along with the inability to define different tiers of affiliates. We were hopeful, but it wasn’t a perfect fit for our client.

Affiliatly was attractive in that it was very straightforward and its prices were not bad. But this app left us no room to customize and fit the needs of Black Sheep Legging. Again, we had to look elsewhere.

ReferralCandy was not for a rep program like we needed but looked like it would thrive strictly as a referral program.

Ambassador was difficult to work with, in that we couldn’t really test it without being on the phone with one of the representatives. It’s price tag was also too much for our client and so this affiliate program didn’t quite cut it either.

So we created our own affiliate system. It does everything our client needs it to and it will not cost an extravagant amount every month.

The following three features were created by Panda Rose without an app in Shopify to compare them to:

Panda Rose was also able to use the existing basic tagging feature Shopify provides and built off of it to automate the addition and removal of tags based on events within the store. This enabled the ability for anyone new signing up in the site to be labeled as a “Customer” in our system. This tag is then replaced if the customer chooses to become a rep and will alter according to the rep tire they become. Again, this adjusts automatically.

shopping cart

The cart content checks hold the ability to modify contents on the fly before checkout. This means that Black Sheep Legging did not want customers reaching the checkout if they have more inventory in their cart than there is currently in stock. Upon adding inventory to cart, it’s automatically adjusted down to stock levels, and Black Sheep Legging is notified of the change.

An internal “free shipping” code system was created for rep usage to allow greater control for Black Sheep Legging opposed to Shopify’s discount codes.

If each of the features I have listed were apps that were integrated into Black Sheep Legging’s Shopify, it could potentially cost $15,000 a year. Which is obviously not necessary.

Maybe your company has the money to pay all of these apps to run your store. But can you handle all of the complications that come with having multiple apps piled all over you store? All of their different formats and requirements? Are you able to customize the apps to fit all of your company’s needs?

A developer can integrate all of the features your store may need and ensure that the features fit your specific needs exactly. A developer can prioritize you opposed to giant companies and app creators where you are just another business that is using their product. You can have real conversations with your developer to get your thoughts, questions and concerns addressed. Plus, no monthly fees to last you as long as you have the online store! Hiring a developer is without a doubt a wise investment for your business.

Tess Houcher

52 views
MarketingSEOWeb Development

Even yours

I am not one of the web designers at Panda Rose, but I have worked with a couple websites and have visited many over the years. Lately I’ve been noticing that some websites draw me in and others I just scroll on by. Some companies neglect simple website guidelines and unfortunately, they end up missing out on customers they could otherwise do business with. These problems can be fixed so easily. Here are my tips which I hope you already practice.

Photography

One issue that is always interesting to address is the images displayed on a website. Images are a very powerful tool when it comes to your business. But a poor photo quality puts up red flags for potential customers and this should be avoided at any cost.

What qualifies as a poor quality picture?

  • The image is unclear as to what the featured item is.
  • Poorly displayed.
  • A mess in the picture. Or if something is dirty without purpose.
  • Bad lighting or blurry
  • Not trendy

If a photo is not done professionally and obviously so, it is a major distraction to the customers on your site. I find that when a site has beautiful pictures I am easily convinced that the product or service is legit and exceptional without even thinking about it. All because of the great impression.

If the picture on the right was on a bakery website you would be concerned about the quality of the business. (Note the lighting and crumbs.) But if the picture on the left was on the bakery website you wouldn’t even stop to think about the picture.

People notice problems, they don’t notice when things are as they should be. Don’t give your customers a reason to second guess your website.

Poor quality pictures leave me wondering if the company doesn’t have the money to update their pictures, therefore they do not have a good product or service. Now I know that I cannot make that assumption about all companies but it is an honest thought that comes to mind.

Get. A. Professional. Photographer. I know that it sounds like a hassle but trust me, it will allow your website to give a good first impression and everyone knows that first impressions are everything. Please just do it, you won’t regret it.

Navigation

Your website needs to be easy to look through. If someone is on your site looking for something and they cannot find it without clicking through all your of your pages, then your website is set up poorly. Make it very clear what they can find on each page and follow through with that initial description. If customers have to think up specific search terms to find what they are looking for, they will move on to a different site very quickly. I know that I do.

Keeping up with Trends

When was the last time your website had an update on its full appearance? Are the main colours red and white? Or this blue?

Time for a major update.

Black, white and one other accented colour can be a beautiful theme or at least a good start for those switching up their site. Which brings me to my next point.

Simplicity is Beautiful

Clean up the clutter. A site trying to fit all the info about them on their homepage is overwhelming for everyone. Simplify the homepage, not just because it is easier to take in but because it is pleasant to look at. Again, people notice problems, not when things are working well . . .

Organization is favoured by humans in general. Suit the needs of the masses by keeping organized. Use minimalism for not only aesthetic reasons but give people the ability to find the pages they want. Don’t throw everything their way before they have the chance to ask for it.

Mobile Friendly

When I am not at work, I hardly ever use a computer to search the Internet for anything. If I click on a site while I am on my phone and it is impossible to read or operate I move on to a different website. Sadly I am sure that I have missed out on many great products and services because the website did not work well with my phone.


My best advice is to remind you to think like a customer. Try to imagine that you know absolutely nothing about your business and see if it answers all the questions that a customer might have. Your site needs to be easy to navigate and easy to work with. If your website’s purpose is to book appointments, ensure that is an easy task for customers to accomplish. If your site is made for providing information for customers, construct your site so that everything is organized. And remember that aesthetics matter in every aspect of your site. I hope to see your beautiful site very soon!

Let me know how you fixed up a website in the comments!

Tess Houcher 

37 views
MarketingSecurity & PrivacyWeb Development

Apple made an announcement on June 5th that will change the economics of the internet. They plan to improve the Safari experience by adjusting ad tracking. Ad tracking is in-market research that monitors a brand’s performance including brand and advertising awareness, product trial and usage, and attitudes about the brand versus their competition.

Companies can follow you around the Internet in order to get further insight to better their advertising campaigns. This is how we are marketed to on the Internet.

Most consumers do not appreciate the attempts to be marketed to while on the internet. These online advertisements feel threatening when they take over your whole screen, and are annoying when they start playing sound when you haven’t allowed them to.

Not only are these inconveniences, but since these advertisements can follow you around and track what you do on the internet, it is a security breach to many consumers and Apple never wants their customers to be in a position where they feel uncomfortable.

So Apple created a new feature,

“Intelligent Tracking Prevention [ITP] is a new WebKit feature that reduces cross-site tracking by further limiting cookies and other website data, Intelligent Tracking Prevention collects statistics on resource loads as well as user interactions such as taps, clicks, and text entries. The statistics are put into buckets per top privately-controlled domain or TLD+1.”- Apple’s John Wilander.

In plain English: ad-tracking can only follow you around for 24 hours and Safari will delete all of a site’s tracking cookies if you do not visit the site for 30 days. This means that their ability to track you is fundamentally limited, and will improve your privacy and experience online.

Will Safari’s numbers rise with the promise of less advertising traffic? To a browser like Google’s Chrome, less advertisements would not be quite as beneficial as it will be for Apple — Apple’s business model doesn’t revolve around advertising sales. Thus, Apple is not intimidated by a lack of advertisements. They would prefer happy, safe customers and they may have found another way to give them more security and a better experience.

Now, this announcement did not make everyone happy; 6 major trade groups expressed concern with these plans. With this in place, it restricts the tracking abilities of websites and advertisers which could cut into their bottom line. What is good for the consumer privacy, would not be good for them. They explained this in an open letter to Apple.

“Blocking cookies in this manner will drive a wedge between brands and their customers, and it will make advertising more generic and less timely and useful.” — The Data and Marketing Association and the Network Advertising Initiative.

Advertisers will not be able to use target marketing to select their audiences and it will be more difficult for them to know how well or poorly their strategy is operating. These associations wanted to make their concerns very clear to Apple and the rest of the Internet.

For many small businesses that use these marketing tools, they will find themselves needing to adjust strategy. This means that some of Panda Rose’s clients might be affected as well. We agree with Apple that ensuring consumer privacy should be top priority, and will help our clients to work with these new restrictions.

Tess Houcher 

36 views
ProductivityProgrammingTechnologyWeb Development

Recent years have seen the proliferation of high-quality package management tools for a wide range of web development languages. Ruby’s gems were always a key selling point of that platform, allowing for a sort legendary developer productivity which is now, thankfully, widely available regardless of platform.


But dependency management is an art unto itself, one that many give little thought to until something breaks catastrophically, leaving developers scrambling to patch some obscure dependent module they didn’t even know they had, as the left-pad debacle did for Node.js developers earlier this year.

If, as developers discovered that day, your project is only as strong as your weakest dependency, it’s prudent to have a handle on what you’re pulling in, from whom, and how you’re doing it.


Big names like Facebook were caught off-guard as everyone else, and the desire to be in control of their dependencies has doubtlessly led to the creation of yarn, a new JavaScript package manager, which we, too, are very excited about.

Operating alongside npm, meant as a drop-in replacement, Facebook touts the following benefits:

  1. Speed
  2. Reliability
  3. Security

The latter two benefits are tied to a .lock file, something that PHP users of Composer are likely familiar with, but which npm lacks:

The magic clue behind it? Whenever you run yarn install, the yarn.lockfile has precedence over the package.json.

If the yarn.lock file exists, the (exact) versions defined in it will be used.

If no yarn.lock exists, the (loosely defined) versions defined inpackage.json will be used, and a yarn.lock is generated.


Dependency Management for PHP

Package management on the PHP side seems comparatively safe and manageable. PHP has an extensive standard library, and we’re unlikely to pull in 100 packages to boot a simple application. It’s much easier to survey the landscape of an application’s dependencies and get a feel for what’s there and why it’s there.

Features that yarn aims to bring to the table for JavaScript developers, such as that lock file, have always been part of our workflow. So, perhaps you haven’t thought about it too deeply.

In fact, you might have questions which are worth reviewing.

Why the composer.lock file matters

How precisely does it relate to composer.json? Should I commit it to version control? How do I manage conflicts?

Managing PHP Dependencies Properly

What should I pull in as a dependency, and what as a dev dependency? Should I need to modify a dependency, what’s the correct way to go about it? How do I optimize my package usage for production?


Above all, be mindful of what you pull in, what that which you pull in pulls in, and the faculties your toolchain offers to allow you to manage these, lest today’s convenience lands you in an uncomfortable situation down the line.

YEG PHP 2.0

A place for Edmonton-area PHP developers to meet and collaborate. Administered by www.pandarose.ca

EducationProductivityTechnologyWeb Development

A client who wants a web app, and their internal IT told them they should use Ruby on Rails. During our initial exploratory period, we discovered that there was no existing quality libraries or Ruby Gems that covered their needs in Ruby. Now, Ruby is not a terrible language by far, but there simply wasn’t the tools to build this at this time.

Now, if we were a Ruby-only house, we would just charge them more to develop everything from scratch, and charge them to maintain it for the foreseeable future. Great short-term business model for us, but not so perfect for them; In other words, precisely why we are not that way; we want to save our customers money because when they succeed, we succeed.

How do we help you reach your goals? Well, we are your dedicated CTO, we are not just a Ruby-only house. In our exploratory meetings, we had our PHP and Node.js experts on hand. Both of whom quickly pointed out that there were specialty libraries that were established and clean in their languages, and that we could implement this entire system in likely half the time using those software libraries.

So, we finished off the work outline document with a quote for Ruby which ended up being almost double the quote for developing the same app in Node.js or PHP. We explained the reasons we felt that we did not need to stick with Ruby; They wanted to use a cloud service that supported Ruby, and there were similar, equally-priced ones that supported other languages. Moreover, we explained why we felt that using PHP or Node.js would save money in the long run.

If we were a one-trick pony house, but exquisite at that one trick, you would not get the best options.

25 views
ProductivityProgrammingTechnologyWeb Development

PHP, one of many languages Panda Rose has experts for.

A very common question that goes by my desk is “What programming language does your team specialize in?” I always find that question amusing for a variety of reasons, the biggest being that while I understand the adage “A Jack of all trades is a master of none.” I also appreciate the fact that if I am hiring a law firm, I do not just hire one person within that law firm. Nor, I hope, do I hire a large law firm where everyone who works for it is only familiar with one statute of the field of law.

Would you hire a patent law firm, if all they knew was the patent law specifically around inventions made in the 1990s?

Would you hire a real estate law firm, if all they knew was property law in the Montreal area?

Yes, there are very specific circumstances where that would be useful, but many would hire them as specialists to aid your usual lawyer, and not as the go-to for everything law.

So why would you hire a software development firm who only knows how to install WordPress, and install a few plugins, a theme, and ensure that the whole house of cards does not collapse until after you pay their contract?

They may save you money in the short-term, but the long-term costs could be massive, in some cases far more than you had originally budgeted.

As I have considered this over the years, I came the conclusion that a software consultancy should not follow the “Jack of all trades” adage as a firm. Yes, we have specialists who know the deep intricacies of the programming languages they work in, but we have more than one of them, and they do not all overlap on a single language. This way, we provide the service that best fits you.

So to answer that question, “Which programming language do you specialize in?” We specialize in the language that will help you succeed.

We are your dedicated CTO.

31 views
ProgrammingWeb Development

An Earth-shaking release like PHP 7.0 is tough to follow-up, and at first glance, the upcoming PHP 7.1 release appears, shall we say, not as exciting as the last. But don’t let that damper your enthusiasm, for the PHP 7 line is indicative of a language reaching a state of maturity and stability, and what we have with 7.1 is a cautious incremental release that moves things forward at a pace befitting this.

Indeed, #internals is full of exciting RFCs mapping future courses that we’d love to tinker with today, but are not decidedly not ready for prime-time. As much as we like new toys, we spend enough time staring down large PHP codebases that we’re excited by many of the incremental improvements found in 7.1.

Let’s run through those areas of improvement that have caught our eye.

Return Types

The addition of Return Types in 7.0 has gone a long way toward solidifying our APIs, moving vital interface parameters out of documentation and into the code, where the parser can enforce what was previously a suggestion. 7.1 brings two subtle but useful refinements of this system.

Void Return Types allow you to specify a function that is expected to return literally nothing, whereas before you would omit the return type and specify void in the documentation block accompanying the function.

Nullable Types allow for returns that are either a specified type or a null, much as you might specify

ObjectType $variable = null

upon input, allowing either that type or nothing at all. This is one that we’re looking forward to in particular, allowing for more flexibility in the construction of cohesive interfaces.

Array Unpacking

Having worked extensively with ES6 and having become very used to its destructuring syntax, this is an area of welcome improvement.

First is a more concise notation, optionally replacing the use of the list keyword, bringing things more in line with the square-bracket array syntax we’ve enjoyed since 5.4.

Second, the allowance of keys within the list construct allow properties to be extracted by name, much as we’ve come to expect on the JavaScript side.

Iterable Pseudo-Type

PHP has long had the Traversable interface, allowing iterable objects to be treated relatively interchangeably and foreachd without regard to specifics, much as you’d treat an array. Except array itself is not an object, and could not be interchanged with a Traversable. You could specify an iterable object or an array, but not both at once.

7.1 resolves this with Iterable, nicely encompassing array primitives and iterable objects under a single umbrella. It’s a small change that brings considerable flexibility to your API.

Closures from Callables

Over the past couple years, our framework has come to be increasingly driven by callbacks, while avoiding some of the common pitfalls through sensible class-based organization (patterns our ES6 and PHP7 codebases have increasingly come to share.)

However, JavaScript objects are wide open and lack a concept of private or protected members. Previously, class-bound callables we wished to pass around had to be marked public in our PHP codebase, even when it would be appropriate to limit and allow the parent class to dispense access.

This could be accomplished with hacky workarounds that we’d rather not use in production, but now we have a language construct to do so in a safe way.

… and more!

Head over to php.net for an exhaustive list, and tell us what you’re looking forward to in the comments.

Finally, remember that the PHP development process is a remarkably open and democratic one, and that you too can get involved and help shape the language’s future.

23 views