Links from E8: The Flexible Strategist

Hey guys, here are some of the links that we talked about in Episode 8: The Flexible Strategist (Strategy Talk with Matt O’Bryant)

  1. Hot Jar: https://www.hotjar.com/ – heat maps, analytics, conversion funnels
  2. Treejack by Optimal Workshop: https://www.optimalworkshop.com/treejack – information architecture testing
  3. 20 Second gut test: https://clearleft.com/posts/354 – getting a feel for your client’s design aesthetics.

Enjoy!

Strategy in Context: A Bird’s Eye View

Today is an auspicious occasion! It marks the first of my Strategy in Context series. As well as my first try at micro-blogging. I have a lot of information on topics like strategy, research, account management, user experience, and more. I’d like to get that information to the public as quick as possible while still posting good, quality content.  Now, I’ll most likely expand on this series in an eventual strategy whitepaper.

I was recently at a tech conference asking people for strategy resources. One person firmly told me that “no one’s going to give me their strategy resources (or process for that matter) because that’s how agencies make the big bucks.” So, okay… that makes sense to me, but it doesn’t mean I can’t give away my strategy resources.

I’d like to address any nay-sayers about publishing digital strategy process, tactics, and/or resources. I come from the open source world where information is shared and the community benefits from that. This is my attempt to give back.  I am more worried about people saturating the internet by building shitty things people don’t need, than I am about someone stealing my strategy process, theories, and thoughts. Plus, I want to spark discussion, so let’s begin.

Strategy in Context

I’m sure everyone is familiar with context-aware design, yeah? It’s when a device (like a smartphone) changes based on the environment in which it’s placed. Our smartphones can make recommendations based on location or auto-adjust the contrast on a bright day. Strategy in context is similar in the sense that we (as strategists) need to take into consideration our environments. And hopefully act accordingly.

Implementing a strategy process can be a daunting practice.

  • A) it’s not a linear process
  • B) it changes at every turn based on new information.

So, how do you conquer a client, project, or product when you aren’t sure how to proceed? You take a step back…and look at things from a holistic standpoint; from a bird’s eye view.

A Bird’s Eye View of Strategy

In order to understand strategy, there is one truth you have to realize: true strategy is continual, it’s not an end-game and never will be. The digital strategy that works for you today, might not be the one that works for you tomorrow, let alone a year from now. And this is why strategists are commodities, because it’s a job that never ends in the web and mobile space.

Holistically speaking, digital strategy is dependent on all its players. It is so entangled with other strategies that looking at it any other way would be a disservice to both you and your client.

The elements of strategy:

  1. The People: your client, their users, the competition, influencers, disruptors
  2. The Assets: things like their culture, their brand, their website, their digital assets are blanketed under this term
  3. The Operations: your client’s business model, their product or service
  4. The Frameworks: from your client’s organizational structure to the technical systems being leveraged.
  5. The Intelligence: the market, the trends, the innovation happening, the economic and political landscapes
  6. The Tactics: different from ‘operations’ – tactics are used to carry out strategies
  7. The Outcomes: the goals, the objectives, the accomplishments, the results

Contingent on each of these elements, strategy will have different meanings depending on its context. It’s too much to take in in a micro-blog post, so as the Strategy in Context series continues, I’ll drill into each one of these areas to give insight into breaking down your strategy process.

The Information Spectrum

At any given moment, there are hundreds of tiny shifts going on in the digital world. Developments that are slowly (or quickly) moving in from the fringes toward the mainstream. A fantastic trend report by Future Today Institute highlights innovation that is making it’s way toward being the established norm. Innovation is often talked about, but overlooked when it comes to strategy positioning.

In order to understand the information spectrum, you first have to understand all the new technologies, trends, and innovation taking place right now. But there are flaws in that thinking as one new technology supplants another. So, first thing you need to do — start building an information database. For all you strategists out there, you need some type of system where you can gather information and access it easily. I’ve built myself TheWebward.com – I call it my morning business review, but it’s really an information database.

You can try RSS aggregators like Digg Reader or create your own. But keeping up-to-date with the technology landscape is your first lesson in strategy. Did you know Baidu is leading the way in conversational interfaces? Or that Blockchain can help fight cyberattacks? Do you know what Blockchain is?

Lost in the Strategy Sky

As you begin your journey into strategy, you may feel lost at times. It happens to everyone and that’s okay. But if you’re lost and can’t find answers, look to other industries. One thing that’s helped me tremendously in developing my strategy process is turning to other sectors that have had strategists for decades. The military, politics, and the intelligence community all have resources on strategy out there that you can research. Then take their core principles and apply them to the digital space. Again, I’ll go into this more in upcoming posts, but I feel like this isn’t really a micro-blog post anymore!

Ok, more to come on Strategy in Context.

Overcome Your Website Security Worries

I know I’ve used this clipart before that’s in the featured image (maybe I like it!), but because the Guy Fawkes mask has become synonymous (thanks to Anonymous) with web hackers and in turn with website security, I found it befitting to use once again.

This post is in direct relation to the talk I am about to give this Thursday for NIM on helping people overcome their website security insecurities. I will post the slides by the end of the week.

A little background…

Ever since I’ve been in the field of website security, it’s taken me a while to understand it. Working for Sucuri definitely helped in understanding it —but when I first started I did NOT get website security. It made no sense to me. And I’m a guy who comes from the agency world. I used to do front-end development work, I know design process, development process. That makes sense, you take one step forward and get closer to your goal…hopefully. Not in website security, you side-step constantly. Because it’s not about control. Website security is a combination of technology, process, and people. You can’t control all those things, you can assess and mitigate risk in those areas, but you can’t control.

Helping people overcome their website security worries..

The motivation I have for giving the talk is two-fold:

  1. I really do want to help people overcome their worries and fears. Website security can be frustrating, befuddling, scary, complex, and down-right incomprehensible. And to preface, this is a post about website security. Not web security, not IT security, not PC security, or network security. This is a post on protecting your website. Although, all those other layers of security do sort of play a role in website security, that’s why it can be super confusing.
  2. Is to let people know that as website owners and managers, we have a responsibility to not only our sites, but our visitors, the world wide web as a whole. We need to be good stewards of the internet and that starts with the properties that we manage online. Our posture needs to be strong, solid.

So…I guess you could say my hopes for this post/talk are that the audience picks up one (hopefully more) tidbits of information that will make them more diligent online. I want people to understand website security a little better and to give them a plan of action to get their website security and online posture in order.

Let’s begin

The first thing I need everyone to understand is that website security involves several things. It involves Technology, Processes, and the People:

  • Technology – you have a local computer – you have a hosting environment, the different systems that you use that are integrated with your website, social media, the list goes on..
  • Process – Protocols that are used to transmit data (HTTP/HTTPS), protocols you use to recover your site once it’s been hacked, the process for updating your website or storing a password, the list goes on..
  • People – This one’s the hard one, the wildcard. We have hackers, that are getting better by the minute coming out with new technology. There’s us – the website owners – maybe we don’t have enough education. Then there’s the people that visit our website, maybe they have malware on their computer and upload something to your site, the list goes on..

Technology, People, Process

So, the point is, we can’t control everything, but we can mitigate the risk.

Let’s talk about the people, mainly hackers…

hack·er ~/ˈhakər/ (noun): a person who uses computers to gain unauthorized access to data.

Originally ‘hacker’ was a term of esteem, used to describe someone who tinkered around with systems and could break things down, reverse engineer, someone who was really good at understanding their system (whatever it was).  Now it’s used to describe someone who wants to do malicious harm online.

HACKERS: White-hat, Black-hat, Grey-hat , Blue-hat. There are different types of hackers.

    • Script Kiddies – usually computer novices who take advantage of hacking tools, vulnerability scanners and the like
    • Hacktivists – groups like Anonymous, hacking for a cause, usually to expose information, get someone out of prison, expose a corrupt official, things like that.
    • Cyberterrorists – hackers that go after government entities. Experts say World War III will be fought online, I whole-heartedly believe that.
    • Organized Criminal Hackers (Hacking rings) – groups that take down targets like Home Depot, the MySpace passwords that were recently stolen, etc.
  • Security researchers – the good guys (or the in-betweeners – Grey-hats) that try to get ahead of the bad guys or find a vulnerability before it’s exploited.

Motivations of hackers:

  • Revenue/Money
  • Resources
  • Just because they can / or the challenge of it.

Attack types and distribution..

For the most part you’re going to see two types of attacks. Automated, which make up the vast majority of the attacks that are out there. Then the less frequent targeted attacks. The targeted attacks are the ones we hear about and read about in the news headlines. But the ones we really need to worry about are the opportunistic or automated attacks. Given enough time, attackers can sit back and have their networks work for them, and have their scripts slowly find, test, and attack every available target on the internet. Malicious automation has gotten increasingly sophisticated and shows no signs of slowing down.

You can download Sucuri’s Q1 report on hacked websites here: https://sucuri.net/website-security/website-hacked-report

It’s pretty scary stuff, but to give you a precursor, Google reported in March of 2015 that 17 million website users had been greeted with some form of malware warning that the websites visited were either trying to steal sensitive information or trying to install malicious software on the users’ computers. In March of 2016, that number jumped to 50 million!! I imagine next year that number will grow to triple, maybe quadruple that. You can see as the internet grows, so does malware distribution. Google, alone, blacklists over 20,000 websites per week, over a million per year. That’s pretty staggering.

But what are some of the vehicles for distributing malware? There are a lot, almost too many to name, but I’ll name a few that’s seen quite often:

  • DDoS attacks – it’s an attempt to make a website unavailable by overwhelming it with traffic from multiple sources.
  • Brute Force Attacks – this is a trial and error method used by hackers to crack passwords through exhaustive efforts, not strategic ones. We see this a lot with Content Management Systems.
  • Software vulnerabilities – a weakness in a website or system that allows a hacker to gain access and/or infect it with malware. These are usually due to people not updating their systems.
  • Drive-by Downloads – refers to the unintentional download of a virus or malware onto a personal computer or mobile device
  • Phishing Lure – an attempt to acquire sensitive information (passwords, usernames, etc.) by masquerading as a trustworthy entity online.
  • Malicious Redirects / SEO spam – this is the manipulation of a website’s SEO and/or links to get traffic to a certain page. Often times a pornography site, or pharma page like Cialis or Viagra.

There are others like XSS (Cross-site scripting), SQLi (SQL injections), RFI (Remote File Inclusion), LFI (Local File Inclusion), and more. So we need to be very diligent, things are already working against us.

But what do we control as website owners?

A few things, right? Right now, we control our website (well, hopefully if you haven’t been hacked and locked out of your site), and what goes on it — things like themes, plugins, modules, extensions, add-ons…

We also control our hosting environment. And I want to make a quick note on how hosting plays a role in website security. Here is a picture of my CyberDuck (the FTP client) – I’ve blurred out a few of the domains I have on there (for security purposes).

The thing to note here, is that all these 6 sites, all these properties, they sit next to each other in your hosting account. It doesn’t make a difference to me if you have a dedicated server, a VPS, or a shared server. Most people have shared servers. Why? Because they’re cheap and they offer unlimited domains. I don’t think it’s much of an issue that people sit on shared servers with other people and “share” the resources, that’s not really the problem. Hosting providers will have their infrastructure set up so that it would be very difficult for malware or a virus to jump from one account to the other. But the issue it within our own hosting account.

Take the above picture. Say the two sites that are not blurred out – BeingAJiLe.com and AdamJamesLamagna.com – say these sites were really important to me (they are), but let’s say those are the only two I cared about on my shared server. The other 4 sites that are blurred out, let’s say I don’t care about them. Let’s say I never update (I do, but for argument sake). That means that those sites are susceptible through software vulnerabilities, or weaknesses in the code. If one of those sites gets infected, it could infect all the other sites on my server through an activity called cross-site contamination. I wrote a post on it. But remember this — your web host / server is only as strong as its weakest link.

Your web host /server is only as strong as its weakest link

And that’s how hosting plays a roll in website security. People put development or test sites on the same server as production sites, and then forget about those sites. Take a count of how many sites you have on your server, and do a little cleanup if there are sites on there that you don’t care about.

What do we do to actively protect our sites??

This is the thing, there’s really only 1 thing you can do to protect your site. And that’s to install a firewall, specifically a website application firewall. A firewall is a catch-all phrase, right? There are network firewalls, server-level firewalls, local computer firewalls, they all protect different things. You can read up on the Differences in Security Firewalls, it’s a good post. But a website application firewall, also known as a WAF, will protect your site from malicious incoming web traffic. What it does is inspects packets of data and compares it to known vulnerabilities and known trusted sources. If it matches a trusted source, it passes through, if it matches a vulnerability, it doesn’t.

But Firewalls, as all security technologies, are not infallible. They make mistakes, not very often, but maybe there’s a new virus that it hasn’t seen yet. It won’t pick up on it and block it from your website. But that’s the reality and why having a good online posture comes in handy.

Understanding the security state of your websites…

Another technology you can use to get insight into what is going on already on your website is called a scanner, or monitoring device. There are a few free ones out there like these:

All pretty solid technologies, but again they’re fallible. They’ll check the source code and files and compare it to known vulnerabilities. If a vulnerability has not been discovered yet, it won’t pick up on it. But that’s just the way it is, so we have to be strong in our online posture to be able to react accordingly, and hopefully prevent infection from ever happening.

Essentials of good online posture for your website security..

A few things (and let me preface this by saying ‘I don’t want to tell you what you already know’) that I want to impress upon you that are essential to good online posture.

  1. Backups – this one should be pretty obvious. You need to backup the files and the database (both of these!!). If you don’t change your content all that often, backup once a month. If you blog everyday, backup daily. Now for each specific CMS, there will be tools you can use. For WordPress, I use BackUpWordPress – it lets me automate backups on a frequent basis. But, what it will end up doing is placing the .zip file and .sql backup on the server. Remember what I said earlier about servers. You need to remember that once your backups are complete, to remove them from your server. Put them in a safe place on your local computer or somewhere in the cloud. Otherwise, your backups could become corrupted if your website gets infected.
  2. Updates – another one that’s pretty obvious. You need to update your site. Along with cool new features also comes security patches. This is what we care about – security patches. Now WordPress has been really great at backwards compatibility, meaning that when you update, it’s rare that thing break on your site. Well…as long as it’s not super customized. For those sites that are super custom or other CMS’s that aren’t great at backwards compatibility (ehem…Drupal), then the only way to really protect against this is to get a website application firewall – what I talked about earlier. Most firewalls will stop those vulnerabilities at the edge before it even gets to your site. Known security patches will get written into a firewall’s ruleset to help protect. Otherwise, I would make plans on fixing your website to be able to do updates.
  3. Passwords – I believe people are getting much better about their passwords, I think… Use a password manager like LastPass or 1Password. I bought 1Password for $50 for my lifetime, it’s totally worth it. Password managers will generate strong passwords for you, you don’t have to memorize them (you only have to memorize one – the one that gets you into 1Password). It will open up a particular website and autofill for you, which is super nice! And you can also share passwords via vaults with team members through a service like DropBox or Google Drive.
  4. Access Control / User Access – this ones always a tricky one. You have a CMS, and other users need to be on for whatever reason. Maybe they put new products on the site, or write blog posts for you, or make updates to plugins. Whatever the reason, users need to get on your site, you can limit their access through things like user roles, which WordPress does really well. But the other piece is authentication. Authentication is huge in the CMS world. I wold strongly suggest enabling something called two-factor authentication. You can do this pretty easily in WordPress and I’m sure other CMS’s too. You need to download Google Authenticator in the App Store using your Android or iPhone. Then I used the Google Authenticator plugin. When you install the plugin and go to a User (you can have a different code for each user, which is ideal) it will ask you to enable it and a QR code will pop up. On your iPhone/Android, you just scan the QR code and then miraculously it’s synced up. Now, every time you go to log in, it will ask you to put in your 6-digit code from Google Authenticator. The system knows it’s YOU who is logging in, and not someone else coming through a Brute Force attack. Now, if you don’t have an iPhone or don’t want the hassle, you can always install CAPTCHA or ReCAPTCHA, which will authenticate that the user logging in is not a robot/bot by asking it to spell some hard to read text or doing a math problem. I prefer Google Authenticator, but CAPTCHA is at least another layer of security.

So, where do I start if I don’t know where to start…

You start with an asset inventory list:

  1. Create a list of all the sites you own or manage:
    1. Where are those sites hosted?
    2. What plugins, modules, extensions, themes, 3rd-party systems are on or integrated with my website? Are they necessary? If not, remove them.
    3. Make a list of all the people who are allowed access to your site. Evaluate their permission levels, stress strong passwords, and enable two-factor authentication.
  2. Make a backup of each site:
    1. Files and Database – remember to take them off your server and store them some place safe.
  3. Make sure your site is updated:
    1. Core files, plugins, themes, modules, extensions, etc.
  4. Scan your sites for malware:
    1. Use one of the free DIY tools offered by Sucuri or other companies.
    2. Or use a scanner specific to your CMS, see below.
  5. Actively protect your site using a Firewall or CMS specific technology.

Here are a few tools for you to put in your website tool DIY basket:

Platform Agnostic Scanners:

CMS specific scanners (HackTarget has got some cool tools):

CMS specific scanners will compare your install to a trutsted install of the specific CMS to see if things have changed much, etc. It’s good to see if files have been changed or if there’s something on your site that just shouldn’t be there.

Reasonably priced Firewalls:

If you absolutely can’t pay for a Firewall and need something free, then I’ll use a combination of Cloudflare’s free CDN service, and Wordfence (this is only for WordPress users) – they bill the plugin as the “most downloaded security plugin for WordPress” – I feel like I’ve heard that before. But either way, this combination works really well for my sites, but keep in mind, my sites aren’t super high traffic. I imagine if you have a super high traffic site, that you can pay for a reasonably priced firewall.

But if you can’t, the above combination works for me. I use Wordfence’s automated scanning and Firewall, in conjunction with Cloudflare’s free CDN network (which will speed your site up regardless) and their security features. I also have two-factor authentication on my site and I use Login Lockdown which will limit Brute Force attempts.

In closing…

I know this is all a lot to take in. Website security just isn’t one thing, it’s many. We were told that putting up a website is easy, and that’s true, it is easy. But managing and protecting and keeping your site/visitors secure on a daily basis is the hard part! It’s a constant battle, but I hope this brought a little clarity to securing your website and being a more responsible steward of the internet.

A few more resources if you’re interested..

If you have any questions, please feel free to reach out! Many thanks!

The Frustration with Website Security

People just expect their websites to be secure!

People just expect their sites to be safe, and I’ll admit, I did for the longest time too! But that’s a far cry from reality and one that’s hard to sell.

I work for Sucuri, one of the best website security companies on the market today (probably the best – and yes, I am biased!). But I sell web products to agencies and enterprise level clients. It’s not so difficult to sell them on our products. Sucuri’s products, they just work and very well at that! What I need to sell people on is website security as a whole, which is much more difficult than you may realize.

Let me break things down.

There are all these moving pieces to the web, correct? Yes, there are. Even more so at a granular level when you look at company’s servers or hosting environments, file structures and setups, their clients and others who have access to these sites, the sites themselves and all their vulnerabilities. Not to mention the hackers, who rarely leave a trace and rarely get caught and rarely get punished for it.

Let’s start with different environments. There’s a great analogy I use for shared hosting, VPS, and dedicated accounts.

  1. Shared hosting – this, essentially, means that you are sharing resources with everyone else in that environment, like CPU time or memory space. It’s like living in an apartment complex and sharing the pool, laundry, and parking lot with your neighbors. You still have your own place, but if the laundry is tied up, you’ve got to wait!
  2. VPS (Virtual Private Server) – this is like living in a condo, because you’re still sharing resources that are outside of your condo, like parking space, but you’re ultimately responsible for things inside your condo. So, in a VPS environment, there are still shared resources, but portions of those resources are dedicated to each individual VPS.
  3. Dedicated server – this is like owning your own home. You’re responsible for the upkeep, but you also have access to all the resources, and no one shares them with you.

So, this is a very simplified version of server environments. Nowadays, people use the term ‘server’ and the term ‘hosting’ in somewhat the same way. Years ago, when someone said we host internally, it usually meant that they had physical servers inside their offices where they would manage them and actually host their sites on those servers. And for those of you who don’t know, a server is just a computer, with a little different hardware on it (even though, a desktop computer could run a server) – I know, confusing!!!

Hosting is done by a number of different providers like WP Engine, 1and1, GoDaddy, Pantheon, and so on. They have the hardware and resources to handle many different types of platforms (or a specific one), and they also make things easy for people to manage their environments through something called a C-Panel or Control Panel. It’ll give you access to your domains (if you’ve pointed them from your registrar or used the hosting company to buy the domain) and let you change the directory path and DNS settings, things like that.

Now with most servers, there will be server-level firewalls set up with the infrastructure, but that means that it’ll still let in web traffic, which is what we need a lot of protection from. Port 80 (HTTP) and port 443 (HTTPS) traffic can let in a lot of different activity (good and bad).  This is how your visitors reach your site, through one of those two ports depending on whether or not you have an SSL certificate. So, there are many different ways a website can get compromised.

  • Software vulnerabilities
  • XSS (Cross-site scripting)
  • Backdoor Injections
  • SQL Injections
  • SEO Spam
  • DDoS (Distributed Denial of Service) Attacks
  • Brute Force Attempts

And the list goes on…and on…and on…

But you have to be aware of this stuff, and keep in mind that a lot of these attacks are automated. Some may be done manually by a bored teenager sitting at home in front of his computer. But for the most part, they’re automated attacks. And keep in mind there are attacks of opportunity (which we are all susceptible to) and targeted attacks, which are usually for the bigger brands and companies, but make no mistake if you engage in controversial content on your website (like religion or politics), you can very well be targeted too!

There are a few different reasons why someone would want to attack your site or gain access to it. It’s not just money, but that can be part of it.

  1. Revenue – and I’m not talking about people trying to steal credit card info (although, that happens all the time), but if you don’t do anything with e-commerce, hackers can still profit off of your website. Imagine a hacker injects your site with malware and then your mom visits your website. She unwittingly downloads something that your site told her to download (because she trusts you and what you put on your website) and then four hours later she has no money in her bank account. BOOM!! Oops… That’s what I’m talking about. And there’s also SEO spam. Hackers who use your site to redirect traffic to their pages to make money by inserting links, or keyword stuff your site (which will send your rankings through the floor – and it’s hard to recover from) to get better rankings in the short term and make money off of your audience.
  2. Resources – this is another big one. Maybe the hackers don’t want money, but they may want your resources. Things like bandwidth or CPU. They can build a network off of your system and lease it to others. Now hackers can take your resources and use them to attack other unknowing parties, without YOU (the website owner) even realizing it. Scary, right??
  3. Lulz – yup, that’s right, lulz!! What is that you ask? Well…it’s just for the hell of it! Fuck it, let’s try it! I want to see if I can do this. Again, it could be some bored teenager just sitting around chatting on the security forums. Someone tells them about a tool to drop scripts in a website via a contact form, and they want to see if they can do it and gain access. Then once they do, who knows what could happen!! Be careful of this, because this is really hard to mitigate against. Get a WAF (website application firewall).

We have to be careful of things like Ransomware (holding a website owner’s site hostage) or Malvertisements (malicious ads) and there’s no one right way to do this. It really starts with education, so if you’re reading this post, kudos!

Some thoughts on general security

In order to keep your site (and your visitors) safe, you’ll need to explore general website security. Starting with monitoring and a firewall. Sucuri offers an awesome monitor/firewall package, our Website Security Stack. But if you can’t afford that, then look at all the free stuff out there.

You can use our Sitecheck to see if there is malware on your site. But keep in mind this only scans remotely, it can’t check the database.

You can learn how to harden WordPress. Which is basically locking a few things down like access, having containment, certain configurations.

Or you can take a look at OWASP and ModSecurity – which are open source and free to use, you just have to configure the firewall yourself, and that can get confusing!!

The Frustration of Website Security

And this is the frustration of website security—is that there is no 100% solution out there. I don’t think there ever will be! Ever! The reality is is that the landscape of websites and their environments change so frequently that once a solution had been produced, hackers have already found a solution of their own to beat it. And that’s the continual cycle.

So educate yourself and the people around you. If you own a website, you not only have a responsibility to it, but to your audience, and the web in general.

More to come on this topic…..

The Cost of Doing Business with a Web Agency

I got asked a really great question last weekend and figure I would expand on it in a blog post. The question was “what’s the difference between a $2,500 project/website and a $15,000 project/website?” This, believe it or not, is one of the most probing questions I’ve ever been asked. Hence, the need to write a blog post on it.

So…what is the difference?

I’ll tell you as I see it, and I want to preface this by saying, my word is not absolute. This is completely my opinion and my thoughts that stem from the experiences I have working at a small agency and a larger one. The smaller agency charged anywhere from $2k – $20k per project and the larger agency charged anywhere from $50k – $250k per project. I would love to say that the difference is level of effort, but that’s not necessarily true. I think what we have to do first, is look at the variances of what we’re talking about. There are many, many variances in agency types or tiers, types of projects or websites, and variances within those projects.

So what kind of an agency is right for your business, what are the pro’s and con’s of each?

Types of Agencies

In the design and development world there are all types of designers and developers ranging from freelancers to mega-web agencies, small design shops to professional engineering firms. There are marketing agencies, social media agencies, and SEO agencies. For the sake of this post, I’m going to concentrate on the different types of website design/development agencies, the ones that do strategy, design, and development. This will be mostly for people or companies looking to get a website designed and built.

  1. Freelancers: These are the hardest ones to put in a category, because like agencies, freelancers can range a great deal. There are the novice freelancers, many of them do projects for next to nothing, sometimes they actually charge nothing. They’re just starting out and want to grow their portfolios. But then, there are other freelancers out there who are phenomenal. Usually these freelancers are expensive and don’t take on many projects because their plate is already full. You can usually find freelancers ranging from the novice to the expert on sites like Upwork or Elance, just make sure to check out their ratings and reviews.
    • Advantages: One person owns the project from start to finish (not being shuffled between people); Almost always less expensive than agencies; Can usually get the job done very quickly
    • Disadvantages: One person owns the project from start to finish (so, stability could be an issue depending on the freelancer), if they run into a speed bump that could mean the end of the project; Skill set is usually limited to one area like development or design, not both — unless you find that unicorn freelancer, they are out there!
  2. Small ‘Everywhere’ Web Agency (2 – 10 employees): These agencies are very common and popping up everywhere (hence, the ‘everywhere’), and like freelancers, they can range a great deal. Most small web agencies don’t have a focus in terms of industry. They’ll work with a lot of companies ranging from lawyers to restaurants to local businesses. The owners often times act as project/account managers and the staff is limited in their experience. That’s not to say that these agencies aren’t good, there are good ones out there, but they mostly do simple marketing redesigns, blogs, and brochure-style websites.
    • Advantages: Prices can range, but usually it’s within a small businesses’ budget. Often times you can get redesigns done for $2k to $10k; These agencies are friendly and will treat you like family, and they’ll go the extra mile to keep you as a client.
    • Disadvantages: They sometimes use templates for design, so you’ll see many clients that have the same navigation bar or search box style; Sometimes they’ll modify themes instead of making custom ones; And often times they don’t have an in-depth process when it comes to the strategy surrounding the project.
  3. Boutique Web Agency (5 – 25 employees): These agencies are the ones that usually have sharp focus in a niche industry, like “we only work with non-profits,” which makes them really great in that one (or two ) specific vertical(s). Their process is somewhat refined and they have a small team. They usually have top-tier talent (one or two rockstars) and project or account managers. They work with medium-sized business and most likely have a few enterprise level clients.
    • Advantages: Focused verticals, know the specific industry inside and out; Refined strategy processes; Top-tier development and/or design talent; Most likely have good project management skills
    • Disadvantages: They have small teams that are most likely working on a number of different projects; May push out the start date depending on workload; Often times rely on the top-tier talent to take the bulk of the projects
  4. Professional Web Firm (25 – 75 employees): These firms are the ones that have focus in a few different industries and market themselves that way, but they’ll also push their own boundaries and take on projects outside their industries (not all the time!). They usually have a sales department (or sales guy) and marketing team. They’ll have dedicated project teams and a handful of project managers. They’ll also have a solid leadership team to motivate and corral the team members when needed. They have processes set in place and incrementally improve them. They consider strategy a big part of the web game and use it to deliver solid projects. They have full day discovery workshops and probably do user testing to confirm hypotheses. They work with big companies and enterprise brands, but still have a few small to medium businesses that they got when they were starting out.
    • Advantages: Custom work, you’ll get a unique website that’s built for your users (hopefully!); There will be an outlined process; Roles and responsibilities will be defined; Strategic thinkers that will use data to make informed decisions; Will assign a dedicated project manager; Top-tier talent
    • Disadvantages: They’re expensive; And they’re not the quickest on project timelines, they plan and plan, and that takes time; Often times they overload their team because of client demands
  5. Mega Web Agency (100+ employees): These are the large agencies that take on a number of different verticals, they almost always have distributed teams and work on some really big projects. They’ll have every type of agency person including user experience designers, digital strategists, marketers, software engineers, strategy partners, and a large leadership team with dozens of years of combined experience. They usually don’t take on projects for less than $250k (I know some that start at $500k or even above!). They work with brand names (think Google) and they’ll do mostly (if not only) custom work.
    • Advantages: Super custom work tailored to your users; Strategy will be the biggest part of the project; They’ll usually work in sprints and test at the end of each sprint to verify concepts and prototypes; Quality Assurance will be meticulous
    • Disadvantages: You need to be a huge company to work with these guys, because they are expensive; There might be a waiting list to work with them; There will most likely be a number of people in on the project at different phases/stages of the project, so you’ll meet new people constantly

What about agencies with 75 to 100 employees?

Good question! Well, this is by no means a complete list. I’ve noticed the farther I go in web services (or just web in general) there are soooo many types of agencies out there. There’s also the Digital Body Shop which usually has anywhere from 50 – 100 employees, and they do a bunch of different projects in different verticals and work with a myriad of industries.

Just remember, this stems from my own experiences and the people I’ve talked with.

Let’s get into project type and what their average costs are with the different agencies.

Types of Projects / Types of Websites

Like agencies, there are definitely a myriad of different projects and websites that can be created, designed, and built. Some are simple, and some are super complex. So, I’ll list out the most common projects most people are likely to encounter and most agencies and/or freelancers would take on. To limit things (because this is already a long post!!), I’m going to just do pricing for the 3 web agencies in the middle: Small Agency, Boutique Agency, and Professional Agency. Please keep in mind, these are averages (prices all depend on the scope) and can realistically range from $1,000 to millions!

  1. Blog: This is perhaps the simplest type of site which mainly consists of a content management system (like WordPress) and updated content coming out on a regular basis.
    • Price:
      • Small: $1,000 – $5,000
      • Boutique: $3,000 – $15,000
      • Professional: $10,000 – $35,000
  2. Microsites: These can be deceiving. Just the term ‘microsite’ sounds small, but I assure you they can be the opposite of that! Microsites are usually when a company wants to promote an event or showcase a certain branch or department of their company. Often times there is video or images, CTA’s (calls-to-action) prompting the user to do something like signup for a service or check out certain resources. They can be cool ways to get more awareness.
    • Price:
      • Small: $2,000 – $8,000
      • Boutique: $5,000 – $25,000
      • Professional: $25,000 – $75,000
  3. Marketing Site: These are called different things, sometimes Informational sites, or Brochure-style sites, but essentially these sites just market your company or cause or whatever! They can be a little trickier than blogs because often times they require implementation of ad-serving, email newsletters, videos, or image galleries. I’ve seen these sites range anywhere from $5,000 to $80k, depending on what’s involved with them.
    • Price:
      • Small: $2,000 – $10,000
      • Boutique: $10,000 – $50,000
      • Professional: $35,000 – $100,000
  4. Site/Application Build: These are a little trickier to price because they almost always involve doing some type of integration with another system. Like integrating with a booking engine or an events registration system. These builds can be complex and should be handled by top-tier talent. Be careful to go with a price that’s too low (there is such a thing!) because they should be priced accordingly – they are hard projects to work on!
    • Price:
      • Small: $8,000 – $20,000
      • Boutique: $35,000 – $120,000
      • Professional: $75,000 – $250,000
  5. Membership Portals / Member-Based Sites: These can be fun projects and if done right can come out really well. With WordPress there are some default membership properties like Editor, Author, Subscriber, etc. But a good agency can do almost anything with these and other CMS’s, like Drupal, let you customize your user roles. But because the needs of a client can vary a great deal depending on what they want their membership site experience to be like can determine how much the project will cost.
    • Price:
      • Small: $5,000 – $25,000
      • Boutique: $30,000 – $150,000
      • Professional: $75,000 – $300,000
  6. Ongoing Support: Obviously this all depends on the size/scope/scale of your digital property and what your needs are, but usually prices start at the following amounts.
    • Price:
      • Small: starting at $100 per month
      • Boutique: starting at $500 per month
      • Professional: starting at $1,000 per month

Again, this is not a complete list. There really are multiple (sometimes endless) types of sites that you could potentially do. You could also have a hybrid of sites, like a Microsite within a Membership-Based Site, oh the possibilities!!

I guess that’s what I like about the web, the possibilities, they are endless!

But I hope this sheds a little light on what types of agencies are out there, what they typically charge for web projects, and what to expect from them if you ever need their services.

So, to answer the original question, I’m not sure what the difference between a $2,500 website and a $15,000 website is. I would say there are different types of agencies that price projects out differently depending on their market size, location, and client type. But with that being said, I really hope that a $100,000 project from a professional agency comes out better than a $10,000 project from a small agency,  but I tell people it’s like buying a car – “You can get a Hyundai Accent for $15k and you could get a Lamborghini for $250k (is the Lambo better? Maybe..) but they’ll both get you from point A to point B!”

The Wonderful World of Hacking

I’ve always been fascinated by hackers ever since I saw the movie Hackers, which I now know does NOT accurately portray what being a hacker consists of. Hackers are an interesting bunch. Why? Because their reasons for doing what they do can vary the full length of the spectrum.

Let me explain

Back before computer systems and the internet got to be wildly popular, the term “hacker” was used to embody the tinkerers of software or electronic systems. These hackers enjoyed learning (and exploring) all they could about computers and the way they operated. In the beginning, hacker was a term that was used to describe a person who was really awesome at working with computers.

Now…it’s taken on a slightly different and somewhat complex meaning.

When you hear the term hacker, you automatically think of someone who tries to gain entry to a website or system to do something malicious, whether that be stealing information, defacing a website, etc. The term hacker now refers to someone who maliciously breaks into systems for personal gain. But the key phrase within that sentence is personal gain. What is personal gain? Well…it could be just about anything.

SOME OF THE REASONS WHY HACKERS HACK:
  1. Profit – this could be money or this could be web traffic.
  2. Notoriety – some hackers like to hack for the esteem it brings them in the hacking community.
  3. Hacktivism – hackers try to disseminate political or social messages and campaigns to raise awareness surrounding a certain issue or issues.
  4. Hobby – others do it because they want to see what they can break into, how hard it is, and so on.
  5. Because they can – yup, some do it just because they can.

Now, just like hackers hack for varied reasons, there are also several types of hackers out there and their motivations are varied as well.

TYPES OF HACKERS:
  1. Script Kiddies – these hackers are considered (in the hacking world) to be novices. They take advantage of hacker tools and upload scripts to different places (often times, without knowing what that script will do or how damaging it’ll be) for the fun of it. Hence the name, Script kiddies.
  2. Hackers for Hire – these hackers are the mercenaries of the cyber world. People will enlist their services for money.
  3. Cyberterrorists – usually they attack government networks or power/utility grids. These hackers will crash systems and steal government top secrets (aliens, UFO’s, stuff like that!). Very dangerous hackers, very dangerous!
  4. Criminal Hackers – often a part of an organization of hackers, they are very skilled in breaking into systems (often times, without a trace) and either stealing credit card info or personal identification information.
  5. Security Researchers – these guys are the good guys, the ones who find flaws in companies and organizations’ systems and bring them to light without causing harm. They’re also the ones who develop the tools to use against malicious hackers.

Now let’s talk a little bit about the different categories of hackers, they can all be described by colors. I know, pretty cool, huh?

CATEGORIES OF HACKERS:
  1. White Hat Hacker — the good guys!
  2. Black Hat Hacker — the bad guys!
  3. Grey Hat Hacker — kinda the in-betweeners, sometimes for good, other times, not so much.
  4. Blue Hat Hacker — the ones who get paid to uncover vulnerabilities (I feel like these guys should be called the green hat hackers, but that’s just me).

So, now that you have an idea of what types of hackers are out there, and before we get into what types of security threats are out there, let’s take a look at why it’s getting increasingly easier to hack systems and websites.

  • Networks, nowadays, are extremely widespread and we are all connected
  • Lots of hacking tools available
  • Many and many wifi networks that are open
  • Applications have complex codebases
  • Generations of our kids are getting super smart when it comes to computers
  • Anonymity

There are sooo many things that people should be concerned with if they are on the internet, have a website that they manage, pay for products online, or have personal identifiable information online. If you don’t participate in any of the preceding things, then you are a hermit and stop reading this post. Ha!

But hacking happens every single day. Every. Single. Day. Every. Single. Hour. Wrap your head around that! It does happen and if you have not been hacked, then you’re lucky, but it will eventually happen to you unless you take proper action, which I’ll write about in an upcoming post. But (and this list is by no means complete) here are different ways hackers can mess with you or your systems.

TYPES OF ATTACKS:
  1. Brute Force – these attacks are when a hacker keeps on trying to gain access to your login credentials on any number of password protected sites, by continually trying different password combinations. Almost like a guy trying to break down your door. When ramming his foot into it doesn’t work, he’ll try a battering ram, when that doesn’t work, maybe he’ll try to pick the lock. Hence, brute force. These happen on my WordPress sites everyday.
  2. DoS / DDoS – ahh, the infamous Denial of Service or Distributed Denial of Service. This is an attack that’s designed to flood a website or network with traffic overload to render it inoperable. The group Anonymous (which is a network of hackers that primarily hack to bring certain issues to light) is well-known for a series of public DDoS attacks. Interesting group and I would never want to do anything to upset them, that’s for sure!
  3. SQL Injection – SQL stands for Structured Query Language, which is used for communicating with databases. The injections are attacks that “inject” (obviously) malicious code into a database to gain access to that database.
  4. Cross-Site Scripting (XSS) – this is a vulnerability which allows hackers to insert client-side (meaning executed by a user’s web browser) scripts into pages on a website or application. Then they can go on and do anything malicious or see certain activity, etc.
  5. Cross-Site Contamination – this is when hackers gain access to a “secure” site by infiltrating it from a site that’s not secure, but on the same server. We see this a lot when people have outdated CMS installs on the same server they have the updated ones on.
  6. Phishing Emails – have you ever gotten an email asking you to update your profile on Facebook, but it looks a little off? That’s because it probably is! Phishing emails are exactly that, they’re when hackers are fishing for information. You’ll get an email that looks a lot like it came from Facebook (the good phishing emails are the ones where you can’t tell the difference) asking you to put in your password or personal information. Hackers are able to log what you do on these sites/emails, so don’t ever click anything in an email unless you absolutely trust the source, but even then you can’t be 100%, be careful!
  7. Social Engineering – this is a method many hackers use that relies on interacting with humans. It’s basically getting a person to be relaxed enough to offer up information they normally wouldn’t give out. So, if you’re ever on the phone with someone (a person you don’t know, like someone claiming to be from the post office or some other government agency) and they ask you what your mother’s maiden name is, don’t give it out unless you are absolutely positive you’re speaking to the proper person.

Again, this is by no means a complete list, but these are some of the common things hackers will try. The best way to protect yourself is by getting a service like Sucuri’s AntiVirus or Firewall plans, making sure to keep your systems updated, and by being informed. Make yourself aware when you’re online and be cognizant of what you are clicking on and activity in general. And luckily, you won’t be another statistic of getting hacked!