Industry Buzz

Instagram Stories Launches New Creative Features

Social Media Examiner -

Welcome to this week’s edition of the Social Media Marketing Talk Show, a news show for marketers who want to stay on the leading edge of social media. On this week’s Social Media Marketing Talk Show, we explore the new Create mode for Instagram Stories Camera, the new Instagram app Threads, and more with special […] The post Instagram Stories Launches New Creative Features appeared first on Social Media Marketing | Social Media Examiner.

What's it like to come out as LGBTQIA+ at work?

CloudFlare Blog -

Today is the 31st Anniversary of National Coming Out Day. I wanted to highlight the importance of this day, share coming out resources, and publish some stories of what it's like to come out in the workplace.About National Coming Out DayThirty-one years ago, on the anniversary of the National March on Washington for Lesbian and Gay Rights, we first observed National Coming Out Day as a reminder that one of our most basic tools is the power of coming out. One out of every two Americans has someone close to them who is gay or lesbian. For transgender people, that number is only one in 10.Coming out - whether it is as lesbian, gay, bisexual, transgender or queer - STILL MATTERS. When people know someone who is LGBTQ, they are far more likely to support equality under the law. Beyond that, our stories can be powerful to each other.Each year on October 11th, National Coming Out Day continues to promote a safe world for LGBTQ individuals to live truthfully and openly. Every person who speaks up changes more hearts and minds, and creates new advocates for equality.For more on coming out, visit HRC's Coming Out Center.Source: out stories from Proudflare Last National Coming Out Day, I shared some stories from Proudflare members in this blog post. This year, I wanted to shift our focus to the experience and challenges of coming out in the workplace. I wanted to share what it was like for some of us to come out at Cloudflare, at our first companies, and point out some of the stresses, challenges, and risks involved. Check out these five examples below and share your own in the comments section and/or to the people around you if you'd like! “Coming out twice” from Lily - Cloudflare Austin While my first experience of coming out professionally was at my previous company, I thought I’d share some of the differences between my experiences at Cloudflare and this other company. Reflecting retrospectively, coming out was so immensely liberating. I've never been happier, but at the time I was a mess. LGBTQIA+ people still have little to no legal protection, and having been initially largely rejected by my parents and several of my friends after coming out to them, I felt like I was at sea, floating without a raft. This feeling of unease was compounded by my particular coming out being a two part series: I wasn’t only coming out as transgender, but now also as a lesbian. Eventually, after the physical changes became too noticeable to ignore (around 7 months ago), I worked up the courage to come out at work. The company I was working for was awful in many ways; bad culture, horrible project manager, and rampant nepotism. Despite this, I was pleasantly surprised that what I told them was almost immediately accepted. Surely this was finally a win for me? However, that initial optimism didn’t last. As time went on, it became clear that saying you accept it and actually internalizing it are completely different. I started being questioned about needed medical appointments, and I wasn’t really being treated any different than before. I still have no idea if it played into the reason they fired me for “performance” despite never bringing it up before. As I started applying for new jobs, one thing was always on my mind: will this job be different? Thankfully the answer was yes; my experience at Cloudflare has been completely different. Through the entire hiring process, I never once had to out myself. Finally when I had to come out to use my legal name on the offer letter, Cloudflare handled it with such grace. One such example was that they went so far as to put my preferred name in quotes next to my legal one on the document. These little nuggets of kindness are visible all over the company - you can tell people are accepting and genuinely care. However, the biggest difference was that Cloudflare supports and celebrates the LGBTQIA+ community but doesn’t emphasize it. If you don’t want it to be part of your identity it doesn’t have to be. Looking to the future I hope I can just be a woman that loves women, not a trans-woman that loves women, and I think Cloudflare will be supportive of that.A story from Mark - Cloudflare LondonMy coming out story? It involves an awful lot of tears in a hotel room in Peru, about three and a half thousand miles away from anyone I knew.That probably sounds more dramatic than the reality. I’d been visiting some friends in Minnesota and I was due to head to Peru to hike the Machu Picchu trail, but a missed flight connection saw me stranded in Atlanta overnight.A couple of months earlier, I’d kind of came out to myself. This was less a case of admitting my sexuality, but more finally learning exactly what it is. I’d only just turned 40 and, months later, I was still trying to come to terms with what it all meant; reappraising your sexuality in your 40s is not a journey for the faint of heart! I hadn’t shared it with anyone yet, but while sitting in a thuddingly dull hotel room in Atlanta, it just felt like time. So I penned my coming out letter. The next day I boarded a plane, posted my letter to Facebook, turned off my phone, and then experienced what was, without question, The. Longest. Flight. Of. My. Life. This was followed, perhaps unsurprisingly, by the longest taxi ride of my life.Eventually, after an eternity or two had passed, I reached my hotel room, connected to the hotel wifi and read through the messages that had accumulated over the past 8 hours or so. Messages from my friends, and family, and even my Mum. The love and support I got from all of them just about broke me. I practically dissolved in a puddle of tears as I read through everything. Decades of pent up confusion and pain washed away in those tears.I’ll never forget the sense of acceptance I felt after all that.As for coming out at work, well, let’s see how it goes: Hi, I’m Mark, and I’m asexual.A story from Jacob - Cloudflare San FranciscoI started my career working in consulting in a conservative environment where I was afraid that coming out would cause me to be taken less seriously by my male coworkers. I remember casually mentioning my partner at the time to a couple of close coworkers to gauge their response. They surprised me and turned out to be very accepting and insisted that I bring him to our Holiday Party later that year. That event was the first time I came out to my entire office and I remember feeling very nervous before stepping into the room. My anxiety was soon quelled with a warm welcome from my office leadership and from then on I didn’t feel like I was dancing around the elephant in the room. After this experience being out at work is not something I think greatly about, I have been very fortunate to work in accepting environments including at Cloudflare!A story from Malavika - Cloudflare LondonNearly a decade has passed since I first came out in a professional setting, when I first started working at a global investment bank in Manhattan. The financial services industry was, and continues to be, known for its machismo, and at the time, gay marriage was still illegal in the United States. Despite being out in my personal life, the thought of being out at work terrified me. I already felt so profoundly different from my coworkers as a woman and a person of colour, and thus I feared that my LGBTQIA+ identity would further reduce my chances of career advancement. I had no professional role models to signal that is was okay to be LGBTQIA+ in my career.Soon after starting this job, a close friend and university classmate invited me to a dinner for LGBTQIA+ young professionals in financial services and management consulting. I had never attended an event targeted at LGBTQIA+ professionals, let alone met an out LGBTQIA+ individual working outside of the arts, academia or nonprofit sectors. Looking around the dining room, I felt as though I had spotted a unicorn: a handful of out senior leaders at top investment banks and consulting firms sat among nearly 40 ambitious young professionals, sharing their coming out stories and providing invaluable career advice. Before this event, I would have never believed that there were so many people “like me” within the industry, and most certainly not in executive positions. For the first time, I felt a strong sense of belonging, as I finally had LGBTQIA+ role models to look up to professionally, and I no longer felt afraid of being open about my sexuality professionally.After this event, I felt inspired and energised. Over the subsequent weeks, my authentic self began to show. My confidence and enthusiasm at work dramatically increased. I was able to build trust with my colleagues more easily, and my managers lauded me for my ability to incorporate constructive feedback quickly. As I reflect on my career trajectory, I have not succeeded in spite of my sexuality, but rather, because of being out as a bisexual woman. Over the course of my career, I have developed strong professional relationships with senior LGBTQIA+ mentors, held leadership positions in a variety of diversity networks and organisations, and attended a number of inspiring conferences and events. Without the anxiety of having to hide an important part of my identity, I am able to be the confident, intelligent woman I truly am. And that is precisely why I am actively involved in Proudflare, Cloudflare’s employee resource group for LGBTQIA+ individuals. I strongly believe that by creating an inclusive workplace - for anyone who feels different or out of place - all employees will have the support and confidence to shine in their professional and personal lives.A story from Chase - Cloudflare San FranciscoI really discovered my sexuality in college. Growing up, there weren’t many queer people in my life. I always had a loving family that would presumably accept me for who I was, but the lack of any queer role models in my life made me think that I was straight for quite some time. I just didn’t know what being gay was. I always had a best friend - someone that I would end up spending all my time with. This friend wouldn’t always be the same person, but inevitably I would latch on one person and focus most of my emotional energy on our friendship. In college this friend was Daniel. We met while pledging a business fraternity our freshman year and quickly became close friends. Daniel made me feel different. I thought about him when I wasn't with him, I wanted to be with him all the time, and most of all I would get jealous when he would date women. He saw right through me and eventually got me to open up about being gay. Our long emotional text conversation ended with me asking if he had anything he wanted to share with me (fingers crossed). His answer - “I don’t know why everyone assumes I’m gay, I’m not.” Heart = Broken. Fast forward 6 months and we decide to live together our Junior year. I slowly started becoming more comfortable with my sexuality and began coming out. I started with my close friends, then my brother, then slightly less close friends, but kept getting hung up on my parents. Luckily, Daniel made that easier. That text from Daniel about not being gay ended up being not as set in stone as I thought. We started secretly dating for almost a year and I was the happiest I have ever been. The thrills of a secret relationship can only last so long and eventually we knew we needed to tell the world. We came out to our parents together, as a couple. We were there for each other for the good conversations, the tough conversations, the “Facebook Official” post, and coming out at our first corporate jobs (A never ending cycle). We were so fortunate to both work at warm, welcoming companies when we came out and continue to work at such companies today. Coming out wasn’t easy but knowing I didn’t have to do it alone made it a whole heck of a lot easier. Happy four-year anniversary, Dan. Resources for living openlyTo find resources about living openly, visit the Human Rights Campaign’s Coming Out Center. I hope you'll be true to yourselves and always be loud and proud.About ProudflareTo read more about Proudflare and why Cloudflare cares about inclusion in the workplace, read Proudflare’s first pride blog post.

How to Build an Email List to Increase Your Online Sales

The Blog -

Email: If you’re like most of us you use it every single day. So, are you taking advantage of that fact to get in front of your audience? We hate to break it to you, but if you’re not, you’re at a disadvantage. In this post we’ll explain why your website needs email marketing and how you can use it to boost your online sales. Email marketing and your website Are you finding that despite your best efforts you aren’t making the profits that you’d like from your website? It’s a tough reality that many business and website owners face. And it’s understandable considering you probably don’t have a six or seven figure marketing budget. How are you supposed to compete with the big guys? We recommend using email marketing and adding a sign up form on your website. According to MarketingSherpa, “More than seven in 10 (72 percent) U.S. adults indicate a preference for companies to communicate with them via email.” There’s a lot of opportunity in that number, so don’t miss out. Why use email marketing? Let’s consider why people are visiting your website in the first place. To start, they have to be interested in you, which is great. They’re visiting your site because they want to learn more about you or they want to purchase from you. By providing an email sign up form on site you’re giving them an opportunity to stay connected with you after they leave. You’re also giving them an easy way to keep you top-of-mind so they can come back to your site in the future. Oh, and did we mention that email marketing has a return of $38 for every dollar that you spend on it? Tips to increase sales using email marketing Here are our three best tips if you want to make the most of email marketing on your site. Make your sign up form easily accessible.Having a sign up form for your email list on your homepage is great. But having it available across all the pages of your website is even better. Many people arrive at websites after finding them in an online search. Oftentimes, these people aren’t taken to your home page, but land deeper within your site, like on a blog post. Don’t miss out on capturing their email addresses by only providing a sign up form on one page of your website.Communicate value.Big, blocky letters that scream, “Sign up for my list!” aren’t cutting it anymore. By providing more context and value in your call-to-action (CTA) for people to join your list, you better the chances that they’ll be interested and driven to sign up. Wouldn’t you be more inclined to sign up for a list that promised, “Discounts, deals, and insider info — for subscribers only!”?Use a template.Consistency is key. You want your subscribers to immediately recognize your emails and know who they’ve come from. Don’t change your colors, logo, and branding on each and every email as your customers won’t know what to expect and may unsubscribe from your emails thinking they’re spam. Pro-tip: Make sure your website name and domain name match, too! The more consistency you can provide for your customers the better they’ll remember you. What should I include in my emails? If you’re wondering what to put in your emails to drive sales, we can help with that. Here are some ideas that you can use to help strengthen your relationship with your email subscribers so that they’ll be more invested in you and your site. Coupons and offersEveryone loves to feel special. Let your subscribers know that they made the right decision to let you into their inbox by giving them a special discount or coupon to use on your site. Expertise and know-howAre you the expert in your field or about what you sell? Show off those smarts! Use your email to convey interesting, valuable information about your products or services to capture your audience’s attention and inspire trust in you. ImagesUse images in your emails to help convey what words can’t. If you’re selling products and talking about them in your emails then showcase a few. Clear CTAUse buttons in your emails to provide clear, distinct call-to-actions. Want someone to purchase a product through a link in your email? Label it “Buy Now” so there’s no confusion on their part about what you’d like for them to do. Email marketing and websites work together to increase business Your website will benefit from email marketing, so don’t hesitate to add a sign up form to your site and start building your email list today. Looking for more advice on your e-commerce site? Check out this post. The post How to Build an Email List to Increase Your Online Sales appeared first on | Blog.

How to Start Selling Goods and Services Online

The Blog -

How frequently do you shop online? If you’re like most people, you’re no stranger to online shopping. Each year the number of online shoppers climbs higher and higher, and we don’t see that trend declining any time soon. According to Statista, “Retail e-commerce sales worldwide are forecast to more than double between 2018 and 2023, surpassing 6.5 trillion U.S. dollars in 2023.” Those statistics make starting an e-commerce website pretty appealing, don’t they? And if you need any extra motivation, think about how nice it’ll be to be your own boss, make your own hours, and be able to work from anywhere in the world. Starting an e-commerce website How do you start planning for your online business and creating your e-commerce site? Before we discuss the elements every e-commerce site should have, let’s talk about getting your other ducks in a row. In order to build the best e-commerce website you can, you’ll need to consider: Your ideal customer.Your products or services. Your differentiator, or what sets you apart from the competition and makes people choose you over them. Sourcing your products. Inventory.Shipping.What you’ll name your business and online store (hint: it should match your domain name for consistent branding.) Once you’ve spent some time on those items, you can get down to business creating a website to sell your goods and services so you don’t miss your piece of the e-commerce sales pie. First impressions matter Have you ever landed on a website to browse and do some shopping only to scan it and think, “This doesn’t look legitimate,” and then exited the site? What gave you the impression that the website wasn’t genuine or could be a scam? Typos and bad grammar, no product descriptions or photos, a lack of contact information, an unsecure website connection, and cluttered design are all reasons we’ve heard for people leaving a website without making a purchase. Elements every e-commerce website needs When someone lands on your website, they shouldn’t be driven away by any of the reasons we mentioned above. You want to inspire trust in your site visitors and help them through your marketing funnel so they’ll become customers. What elements does your e-commerce website need to inspire confidence in your site visitors? SecurityThe threat of having your personal and financial information exposed or hacked is real. With SSL, a secure connection is established between your site visitor and your website. That means any information passed from their end to yours (like billing details) is encrypted and kept safe from prying eyes. Cluttered designWebsites are visual things and humans are visual creatures. You can try creating your own website with code, or make life a little easier on yourself by using a website builder.’s WebsiteBuilder offers specific themes already optimized for e-commerce and you can drag and drop elements within these themes to customize your site. Product photos and product informationAgain, humans are visual creatures. You need clear photos that accurately represent your products. You also need a clear description of what you’re selling. If not, you risk people not purchasing or purchasing, being disappointed, and leaving bad reviews for your new online store. Here are some tips on how to photograph the products for your e-commerce store. Typos and bad grammarIf your online site is full of typos and errant punctuation, you run the risk of someone thinking it’s a fake site that’s set up to phish for your personal or financial information.  There are many free online tools, like Grammarly, that can help you perfect the spelling and grammar for the writing and copy on your e-commerce website. Contact InformationWe know you’re doing your best. Even so, mistakes can happen. On the off chance that there’s an error in an order, your customers will want to know how to contact you. Make sure that information is apparent and available from the moment you launch your site. From a consumer perspective, your e-commerce site needs these things. Without them, you’re doing yourself and your online business a disservice. Are you ready to start building your online store? Check out’s Website Builder today! With WebsiteBuilder, you don’t just get highly-customizable templates. With our business plan you’ll receive dedicated e-commerce features in your builder like: E-commerce shopping cartSell your products across web and mobile devices.Inventory managementTrack your inventory and stock.Payment processingChoose from Stripe or PayPal.Coupon codesYou’ll have the ability to offer coupon codes to your visitors and customers to drive more sales. So what are you waiting for? Get your domain name and start your online store today! The post How to Start Selling Goods and Services Online appeared first on | Blog.

Secure and Protect Your Domain, Website, and Personal Information

The Blog -

Do you want everyone with access to the Internet being privy to your personal information? No? We didn’t think so. Read on to find out how people can get your information and what you can do to stop it. Domain Privacy + Protection: Keeping your personal information private If you’re looking to purchase a domain name, or if you’ve already purchased one, you’ve surely seen mentions of “Domain Privacy.” But what does it mean? How is Domain Privacy + Protection any different? Let’s explore that. Whenever a domain name is purchased, the person or company registering it is required to use their legal, accurate personal information. ICANN, the international governing body for domain names, requires every domain registrar, like, to maintain a publicly viewable “WHOIS” database. This database displays the personal contact information for every registered domain, which includes phone numbers and email address. It’s important to know who’s behind the websites you visit and trust the most, and where you get your information from, so there is a reason for having that information be available. However, there are a lot of bad actors out there who take advantage of the public WHOIS database and they scrape the base for numbers and email addresses. Has your phone number ever made it onto a telemarketing list before? If not, take it from the rest of us, it’s not pleasant. How about your email address — do you like spam? Ready for some good news? You can maintain the privacy of your information When you purchase Domain Privacy + Protection you’re making the decision to keep your details out of the WHOIS database and instead, provide the database our information. We have the teams and resources to deal with any spam volume that amounts from having our information on the database; this way, your precious time and information remains yours alone. Domain Privacy + Protection can save you a lot of headaches, just take Shiloh’s word for it. Go beyond maintaining privacy with protection Every domain registrar, like, offers some kind of privacy product for your domain names. However, we thought we’d take it a step further and provide protection for your domain, too. In addition to keeping your information private, you also have to worry about the threat of hackers and human error to your domain and website. Domain Privacy + Protection helps to keep you safe from both of those things. Our protection services are powered by SiteLock and provide malware scans and blacklist prevention to maintain your online reputation. When domains get blacklisted, their site traffic and marketing will suffer. Stay confident that your domain name has a good reputation by using Domain Privacy + Protection. We’ll alert you if anything should happen so you’re able to take quick, corrective action. You’ll still own your domain name One question we frequently hear is, “Do I still own my domain name if my information isn’t shown in WHOIS?” Yes! You do. You still maintain full control and ownership over your domain name. Domain Protection + Privacy helps to prevent identity theft, unwanted spam, and the sale of your personal information to make owning your domain name a little easier and worry-free. How can I get Domain Privacy + Protection? Although you can add Domain Privacy + Protection before or after registering a domain name, we recommend doing it before. This way, your personal information is never made public in the WHOIS database. If you wait to purchase Domain Privacy + Protection, your information could be made public for a while and there’s no telling who will have seen it. It may take some time for all the WHOIS websites to clear their data caches and remove your information from public view if you choose to purchase it after your domain name. Ready to purchase your domain name and take your idea to the next level? You can do that right here. And let us know if you have any questions, we’re here to help. The post Secure and Protect Your Domain, Website, and Personal Information appeared first on | Blog.

How to Customize Facebook Ads Based on Customer Awareness Principles

Social Media Examiner -

Looking for a proven strategy to create Facebook ads? Wondering how to deliver different Facebook ads based on peoples’ familiarity with your business? To explore how to customize Facebook ads based on consumer awareness of your brand, I interview Ralph Burns on the Social Media Marketing Podcast. Ralph is the founder of Tier 11, an […] The post How to Customize Facebook Ads Based on Customer Awareness Principles appeared first on Social Media Marketing | Social Media Examiner.

How to Find the Ideal Cost Per Action on Google Ads

Grow Traffic Blog -

There are a ton of different acronyms and abbreviations involved in paid advertising, and one of the most important is CPA, or Cost Per Action. CPA is a metric that measures how much an action costs. So if you’re paying to get new email subscribers, you’d be calculating the cost per subscriber. If you’re paying to get new product sales, it’s the cost per sale. If you’re paying to get new social media followers, it’s simply the cost of a new follower. A question I’m frequently asked is this: What is the ideal cost per action? The answer is, as low as possible, and I’ll tell you why. CPA As the Better Metric One thing you’ve probably seen before is the concept of penny clicks. Penny clicks are clicks, in CPC marketing, where the cost per click is only a single penny, which is typically about the lowest you can get. Some ad networks will let you get even lower, where a fraction of a penny gets you a click, but that’s typically only for ad networks that operate in a currency that’s weaker than the USD. You’ve probably also seen articles like this one about why penny clicks typically suck. If you’re not familiar with the argument, it’s quite simple. When the action you’re seeking is a click, it’s easy to get. If you pay $1 and get 100 clicks, that seems great. Then you look at your analytics. What did those clicks get you? Most of the time, those clicks got you nothing.  Out of those 100 clicks, 50 of them bounced immediately. Of the remaining 50, 40 of them lingered on the page for maybe 10 seconds and then left, without scrolling or clicking on anything. With only 10 clicks remaining, you look, and none of them do anything. Some might scroll, one of them might click a second page, but none of them do anything beyond that. Penny clicks don’t convert. Penny clicks don’t subscribe to mailing lists. Penny clicks don’t buy products. The majority of the time, penny clicks are either bots are people who are paid to click ads, and are paid by the volume of ads, not by any engagement afterwards. In short, it’s usually basically just click fraud. This is why there’s a widespread caution against penny clicks. There’s an “ideal” cost per click, somewhere significantly higher than one cent. The exact actual ideal cost per click might be 30 cents, or 50 cents, or $1, depending on the industry and the audience. The thing is, that’s for CPC, not CPA. CPA is a better metric, because the action is something you care about. Instead of a click – which is basically valueless if it doesn’t lead to anything further – your action is something tangible. Something that has real value to you. A new social media follower is valuable. A new newsletter subscriber is valuable. A new customer is extremely valuable. These actions are important enough that you can even assign a monetary value to them if you want. Since the A in CPA is an action you care about and that has value, the C, or Cost for that action, can be as low as you can push it. If you get penny actions, well, you’re probably doing pretty well for yourself. Imagine running ads where you pay one single penny for every new product sale you make. You’d be ecstatic! Your sales team would throw a party because they found the platonic ideal of marketing. Thus, the ideal CPA is as close to nothing as you can get it. Now, it’s possible that with some kind of actions, you still run into the click problem. For example, social media followers might not be valuable to you if they aren’t qualified followers. A lot of the shady third party follower sellers are selling bots or people in networks that exist only to follow pages, and they don’t do anything afterward. So you do still need to pay attention to the quality of the action you’re getting. After all, that action does still need value. Calculating CPA How should you actually go about calculating your cost per action? Typically, you need to harvest some segmented data and do a little math. Here are your considerations. First of all, the basic CPA calculation is very simple. Take the total cost of your marketing efforts in a given time, such as a week, a month, or the duration of a specific campaign. Then find the total number of new actions you received during that same duration. Cost per Action, so take the total cost and divide it by the number of actions, to receive the cost per action. For example, let’s say you have a spring ad campaign that you spend $1,000 on over the course of a month. You got 500 new subscribers. Divide 1,000 by 500 to get 2. That’s $2 per 1 subscriber, so a CPA of $1. Simple, right? Now you have to remember that you rarely have one single CPA. You can calculate one CPA for everything you’ve done across an entire quarter, if you want, but it’s not likely to be a very useful number. No, you need to segment your data down. First, figure out different actions that have value to you. New social media followers, new newsletter subscribers, new customers, new leads; these can all be valuable actions that have different costs associated with them. Second, figure out the different channels you’re using. This is relatively easy; just look at what ads you’re paying for. One business might be paying for Facebook ads, Google ads, Twitter ads, and ads on a local TV affiliate. Now you have an array. You have combinations of each of these factors you can calculate a unique CPA for. For example, you have all of these calculations: Cost per social media follower from Facebook ads. Cost per newsletter subscriber from Twitter ads. Cost per new customer from TV ads. Cost per social media follower from Google ads. And so on. Each combination of action and channel is a unique CPA. You can get even more granular. Let’s say you’re running three different ad campaigns on Facebook. One is a standard long-running content campaign, one is a campaign focused on some timely piece of news, and one is a seasonal campaign. All three of those can have their own CPAs. You have to decide how granular you want your data. I recommend getting as granular as possible, and then using aggregate data when you want a broader look at your overview.  This gives you the best of both worlds. And, of course, the CPA for each channel and each action can be improved in its own ways. The methods you use to optimize for newsletter subscribers will be different than the ones you use for getting new social followers, which will be different than your sales pushes to get new leads. The more granular your data, the more levers you have to pull to optimize. More options means more testing, more testing means more optimization, and more optimization means lower costs per action. Optimizing for Lower CPAs Now, I know I said that a lower cost per action is better, but that’s not entirely true. You need to find the right balance between a low CPA and a high action volume. Getting $0.01 per action doesn’t help you if you only get one new lead out of it. There will be a sweet spot between getting more actions and getting cheaper actions. Thankfully, pretty much all of the methods you have for lowering the cost per action are also was to improve the quality of those actions, and as such aren’t likely to make your number of actions drop significantly. Focus on improving audience targeting. The accuracy of the audience you’re targeting is important for lowering costs. Platforms like Facebook and Google have a ton of different ways to optimize your audience, from demographics to interest targeting to geographic targeting. You need to figure out the key attributes of the people you’re trying to reach, and then optimize your targeting to reach only those people. The fewer non-interested people in the audience, the less wasted money you have in your quest for actions. Segment your audience for multiple optimization routes. Remember that even though you might be able to consider that you have one “audience”, you actually have many smaller audiences. A company producing products for new mothers might have an audience of young mothers, an audience of older mothers, an audience of mothers of boys, and audience of mothers of girls, and so on. Segmenting your audience as narrowly as possible means you can optimize your ad experiences that much more for those people. Improve your landing page experience. When a user clicks on your ad, what faces them? Are they on your home page? A blog post? A product page? A landing page? Optimizing your landing page experience is a crucial part of lowering your costs. Remove obstacles that distract users who land on the page. Make the page clear and its goal as focused as possible. Make sure the page loads quickly and works on every platform. There are a bunch of levers you can pull here too. Improve your conversion process. If the user is interested in converting, what stops them? Some aspects of your conversion process can be smoothed out to improve customer flow. Are you asking for too much information on a subscriber form? Do you lack the normal trust indicators for a payment page? Are you asking for sensitive information without using SSL? Identify reasons a user might find to stop the purchase process and smooth them out. Track multiple goals for a single click. Just because a user clicks on an ad you aim at new subscribers doesn’t mean it has to stop at measuring new subscribers. Some of those people might go on to complete other actions as well, and you can calculate them in different parts of your cost equations. Pay attention to quality score on platforms that use it. Both Facebook and Google have quality scores they maintain. These scores serve as an indicator of various metrics – which metrics specifically depends on the platform – and can affect the costs and conversion rates for your ads. You want to learn the factors that go into them, monitor them to see where you stand, and work to improve them as you run more ads. Rotate ads when they start to get stale. Ads lose their effectiveness over time, as people start to see the more and more, and as they start trying to reach people with less and less engagement. This is when you should rotate your ads. Change the copy, change the value proposition, change the targeting, whatever, just rotate them. Make sure there’s generally something fresh and new for people to engage with for maximum value. Always be testing. One thing you should simply never stop is testing. Always have variations on different ads running, and calculate your CPA for each variation. This gives you an idea of which ads and which changes are performing well, and how you can improve other ads as you go. And, of course, your ideas. Those of you who are experienced in CPA improvements, what have you found most effective? Share with the class and you may end up cited in a future post! The post How to Find the Ideal Cost Per Action on Google Ads appeared first on Growtraffic Blog.

Good Morning, Jakarta!

CloudFlare Blog -

Beneath the veneer of glass and concrete, this is a city of surprises and many faces. On 3rd October 2019, we brought together a group of leaders from across a number of industries to connect in Central Jakarta, Indonesia. The habit of sharing stories at the lunch table, exchanging ideas, and listening to ideas from the different viewpoints of people from all tiers, paying first-hand attention to all input from customers, and listening to the dreams of some of life’s warriors may sound simple but it is a source of inspiration and encouragement in helping the cyberspace community in this region.And our new data center in Jakarta extends our Asia Pacific network to 64 cities, and our global network to 194 cities.Selamat PagiRight on time, Kate Fleming extended a warm welcome to our all our Indonesia guests. "We were especially appreciative of the investment of your time that you made coming to join us."Kate, is the Head of Customer Success for APAC. Australian-born, Kate spent the past 5 years living in Malaysia and Singapore. She leads a team of Customer Success Managers in Singapore. The Customer Success team is dispersed across multiple offices and time zones. We are the advocates for Cloudflare Enterprise customers. We help with your on-boarding journey and various post sales activities from project and resource management planning to training, configuration recommendations, sharing best practices, point of escalation and more."Today, the Indonesian Cloudflare team would like to share with you some insights and best practices around how Cloudflare is not only a critical part of any organization’s cyber security planning, but is working towards building a better internet in the process.” - KateLearning Modern Trends of Cyber AttacksAyush Verma, who is our Solutions Engineer for ASEAN and India, was there to unveil the latest cyber security trends. He shared insights on how to stay ahead of the game in the fast-charging online environment. Get answers to questions like:How can I secure my site without sacrificing performance?What are the latest trends in malicious attacks — and how should I prepare?Superheroes Behind The ScenesWe were very honored to have two industry leaders speak to us.Jullian Gafar, the CTO from PT Viva Media Baru. PT Viva Media Baru is an online media company based out of Jakarta, Indonesia.Firman Gautama, the VP of Infrastructure & Security from PT. Global Tiket Network. PT. Global Tiket Network offer hotel, flight, car rental, train, world class event/concert and attraction tickets.It was a golden opportunity to hear from the leaders themselves about what’s keeping them busy lately, their own approaches to cyber security, best practices, and easy-to-implement and cost-efficient strategies.  Fireside Chat Highlights:  Shoutout from Pak Firman, who was very pleased with the support he received from Kartika. He said "most sales people are hard to reach after completing a sale. Kartika always goes the extra mile, she stays engaged with me. The Customer Experience is just exceptional.”Our Mission Continues Thank you for giving us your time to connect. It brings us back to our roots and core mission of helping to build a better internet. Based on this principle “The Result Never Betrays the Effort’ we believe that what we are striving for today, by creating various innovations in our services and strategies to improve your business, will in time produce the best results. For this reason, we offer our endless thanks for your support and loyalty in continuing to push forward with us. Always at your service! Cloudflare Event Crew in Indonesia #CloudflareJKTChris Chua (Organiser) | Kate Fleming | Bentara Frans | Ayush Verma | Welly Tandiono | Kartika Mulyo  | Riyan Baharudin

Now Available: Bare Metal Arm-Based EC2 Instances

Amazon Web Services Blog -

At AWS re:Invent 2018, we announced a new line of Amazon Elastic Compute Cloud (EC2) instances: the A1 family, powered by Arm-based AWS Graviton processors. This family is a great fit for scale-out workloads e.g. web front-ends, containerized microservices or caching fleets. By expanding the choice of compute options, A1 instances help customers use the right instances for the right applications, and deliver up to 45% cost savings. In addition, A1 instances enable Arm developers to build and test natively on Arm-based infrastructure in the cloud: no more cross compilation or emulation required. Today, we are happy to expand the A1 family with a bare metal option. Bare Metal for A1 Instance Name Logical Processors Memory EBS-Optimized Bandwidth Network Bandwidth a1.metal 16 32 GiB 3.5 Gbps Up to 10 Gbps Just like for existing bare metal instances (M5, M5d, R5, R5d, z1d, and so forth), your operating system runs directly on the underlying hardware with direct access to the processor. As described in a previous blog post, you can leverage bare metal instances for applications that: need access to physical resources and low-level hardware features, such as performance counters, that are not always available or fully supported in virtualized environments, are intended to run directly on the hardware, or licensed and supported for use in non-virtualized environments. Bare metal instances can also take advantage of Elastic Load Balancing, Auto Scaling, Amazon CloudWatch, and other AWS services. Working with A1 Instances Bare metal or not, it’s never been easier to work with A1 instances. Initially launched in four AWS regions, they’re now available in four additional regions: Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Mumbai), and Asia Pacific (Sydney). From a software perspective, you can run on A1 instances Amazon Machine Images for popular Linux distributions like Ubuntu, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, Debian, and of course Amazon Linux 2. Applications such as the Apache HTTP Server and NGINX Plus are available too. So are all major programming languages and run-times including PHP, Python, Perl, Golang, Ruby, NodeJS and multiple flavors of Java including Amazon Corretto, a supported open source OpenJDK implementation. What about containers? Good news here as well! Amazon ECS and Amazon EKS both support A1 instances. Docker has announced support for Arm-based architectures in Docker Enterprise Edition, and most Docker official images support Arm. In addition, millions of developers can now use Arm emulation to build, run and test containers on their desktop machine before moving them to production. As you would expect, A1 instances are seamlessly integrated with many AWS services, such as Amazon EBS, Amazon CloudWatch, Amazon Inspector, AWS Systems Manager and AWS Batch. Now Available! You can start using a1.metal instances today in US East (N. Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Mumbai), and Asia Pacific (Sydney). As always, we appreciate your feedback, so please don’t hesitate to get in touch via the AWS Compute Forum, or through your usual AWS support contacts. — Julien;

New M5n and R5n EC2 Instances, with up to 100 Gbps Networking

Amazon Web Services Blog -

AWS customers build ever-demanding applications on Amazon EC2. To support them the best we can, we listen to their requirements, go to work, and come up with new capabilities. For instance, in 2018, we upgraded the networking capabilities of Amazon EC2 C5 instances, with up to 100 Gbps networking, and significant improvements in packet processing performance. These are made possible by our new virtualization technology, aka the AWS Nitro System, and by the Elastic Fabric Adapter which enables low latency on 100 Gbps networking platforms. In order to extend these benefits to the widest range of workloads, we’re happy to announce that these same networking capabilities are available today for both Amazon EC2 M5 and R5 instances. Introducing Amazon EC2 M5n and M5dn instances Since the very early days of Amazon EC2, the M family has been a popular choice for general-purpose workloads. The new M5(d)n instances uphold this tradition, and are a great fit for databases, High Performance Computing, analytics, and caching fleets that can take advantage of improved network throughput and packet rate performance. The chart below lists out the new instances and their specs: each M5(d) instance size now has an M5(d)n counterpart, which supports the upgraded networking capabilities discussed above. For example, whereas the regular m5(d).8xlarge instance has a respectable network bandwidth of 10 Gbps, its m5(d)n.8xlarge sibling goes to 25 Gbps. The top of the line m5(d)n.24xlarge instance even hits 100 Gbps. Here are the specs: Instance Name Logical Processors Memory Local Storage (m5dn only) EBS-Optimized Bandwidth Network Bandwidth m5n.large m5dn.large 2 8 GiB 1 x 75 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps m5n.xlarge m5dn.xlarge 4 16 GiB 1 x 150 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps m5n.2xlarge m5dn.2xlarge 8 32 GiB 1 x 300 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps m5n.4xlarge m5dn.4xlarge 16 64 GiB 2 x 300 GB NVMe SSD 3.5 Gbps Up to 25 Gbps m5n.8xlarge m5dn.8xlarge 32 128 GiB 2 x 600 GB NVMe SSD 5 Gbps 25 Gbps m5n.12xlarge m5dn.12xlarge 48 192 GiB 2 x 900 GB NVMe SSD 7 Gbps 50 Gbps m5n.16xlarge m5dn.16xlarge 64 256 GiB 4 x 600 GB NVMe SSD 10 Gbps 75 Gbps m5n.24xlarge m5dn.24xlarge 96 384 GiB 4 x 900 GB NVMe SSD 14 Gbps 100 Gbps m5n.metal m5dn.metal 96 384 GiB 4 x 900 GB NVMe SSD 14 Gbps 100 Gbps Introducing Amazon EC2 R5n and R5dn instances The R5 family is ideally suited for memory-hungry workloads, such as high performance databases, distributed web scale in-memory caches, mid-size in-memory databases, real time big data analytics, and other enterprise applications. The logic here is exactly the same: each R5(d) instance size has an R5(d)n counterpart. Here are the specs: Instance Name Logical Processors Memory Local Storage (r5dn only) EBS-Optimized Bandwidth Network Bandwidth r5n.large r5dn.large 2 16 GiB 1 x 75 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps r5n.xlarge r5dn.xlarge 4 32 GiB 1 x 150 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps r5n.2xlarge r5dn.2xlarge 8 64 GiB 1 x 300 GB NVMe SSD Up to 3.5 Gbps Up to 25 Gbps r5n.4xlarge r5dn.4xlarge 16 128 GiB 2 x 300 GB NVMe SSD 3.5 Gbps Up to 25 Gbps r5n.8xlarge r5dn.8xlarge 32 256 GiB 2 x 600 GB NVMe SSD 5 Gbps 25 Gbps r5n.12xlarge r5dn.12xlarge 48 384 GiB 2 x 900 GB NVMe SSD 7 Gbps 50 Gbps r5n.16xlarge r5dn.16xlarge 64 512 GiB 4 x 600 GB NVMe SSD 10 Gbps 75 Gbps r5n.24xlarge r5dn.24xlarge 96 768 GiB 4 x 900 GB NVMe SSD 14 Gbps 100 Gbps r5n.metal r5dn.metal 96 768 GiB 4 x 900 GB NVMe SSD 14 Gbps 100 Gbps These new M5(d)n and R5(d)n instances are powered by custom second generation Intel Xeon Scalable Processors (based on the Cascade Lake architecture) with sustained all-core turbo frequency of 3.1 GHz and maximum single core turbo frequency of 3.5 GHz. Cascade Lake processors enable new Intel Vector Neural Network Instructions (AVX-512 VNNI) which will help speed up typical machine learning operations like convolution, and automatically improve inference performance over a wide range of deep learning workloads. Now Available! You can start using the M5(d)n and R5(d)n instances today in the following regions: US East (N. Virginia), US East (Ohio), US West (Oregon), Europe (Ireland), Europe (Frankfurt), and Asia Pacific (Singapore). We hope that these new instances will help you tame your network-hungry workloads! Please send us feedback, either on the AWS Forum for Amazon EC2, or through your usual support contacts. — Julien;

AWS Firewall Manager Update – Support for VPC Security Groups

Amazon Web Services Blog -

I introduced you to AWS Firewall Manager last year, and showed you how you can use it to centrally configure and manage your AWS WAF rules and AWS Shield advanced protections. AWS Firewall Manager makes use of AWS Organizations, and lets you build policies and apply them across multiple AWS accounts in a consistent manner. Security Group Support Today we are making AWS Firewall Manager even more useful, giving you the power to define, manage, and audit organization-wide policies for the use of VPC Security Groups. You can use the policies to apply security groups to specified accounts and resources, check and manage the rules that are used in security group, and to find and then clean up unused and redundant security groups. You get real-time notification when misconfigured rules are detected, and can take corrective action from within the Firewall Manager Console. In order to make use of this feature, you need to have an AWS Organization and AWS Config must be enabled for all of the accounts in it. You must also designate an AWS account as the Firewall Administrator. This account has permission to deploy AWS WAF rules, Shield Advanced protections, and security group rules across your organization. Creating and Using Policies After logging in to my organization’s root account, I open the Firewall Manager Console, and click Go to AWS Firewall Manager: Then I click Security Policies in the AWS FMS section to get started. The console displays my existing policies (if any); I click Create policy to move ahead: I select Security group as the Policy type and Common security groups as the Security group policy type, choose the target region, and click Next to proceed (I will examine the other policy types in a minute): I give my policy a name (OrgDefault), choose a security group (SSH_Only), and opt to protect the group’s rules from changes, then click Next: Now I define the scope of the policy. As you can see, I can choose the accounts, resource types, and even specifically tagged resources, before clicking Next: I can also choose to exclude resources that are tagged in a particular way; this can be used to create an organization-wide policy that provides special privileges for a limited group of resources. I review my policy, confirm that I have to enable Config and to pay the associated charges, and click Create policy: The policy takes effect immediately, and begins to evaluate compliance within 3-5 minutes. The Firewall Manager Policies page shows an overview: I can click the policy to learn more: Policies also have an auto-remediation option. While this can be enabled when the policy is created, our advice is to wait until after policy has taken effect so that you can see what will happen when you go ahead and enable auto-remediation: Let’s take a look at the other two security group policy types: Auditing and enforcement of security group rules – This policy type centers around an audit security group that can be used in one of two ways: You can use this policy type when you want to establish guardrails that establish limits on the rules that can be created. For example, I could create a policy rule that allows inbound access from a specific set of IP addresses (perhaps a /24 used by my organization), and use it to detect any resource that is more permissive. Auditing and cleanup of unused and redundant security groups – This policy type looks for security groups that are not being used, or that are redundant: Available Now You can start to use this feature today in the US East (N. Virginia), US East (Ohio), US West (Oregon), US West (N. California), Europe (Ireland), Europe (Frankfurt), Europe (London), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Singapore), and Asia Pacific (Seoul) Regions. You will be charged $100 per policy per month. — Jeff;

DNSSEC Clustering Now Available with PowerDNS

cPanel Blog -

In the event you missed it, we published a blog post back in December of 2018, announcing the deprecation of MyDNS and NSD. Now that PowerDNS has been the choice DNS Management tool of cPanel & WHM for several versions, the request for DNSSEC (Domain Name System Security Extensions) clustering has become even more popular.  Well, you’ve been asking for it, and we’re ready to deliver it. Coming with cPanel & WHM Version 84 …

Should You DIY or Outsource Creating Your Website?

The Blog -

When it comes time to create a website, you’ll face one of two options: DIY or outsource? Each has its benefits and drawbacks, and that’s what we’ll discuss in this post. So stick around and let’s explore your options for website creation together. Website Creation: DIY or outsource? That’s a great question and we’re glad you’re asking it. It shows you understand how valuable your website is and that you want to create it the best way possible, and rightfully so. Your website is the hub of your digital presence, it’s where customers go to find you, interact with you, and hopefully, convert. (That means they take whatever action you’d like for them to take on your site, like making a purchase or signing up for the email list on your blog) If your website is slow, clunky, or hard to navigate then your website visitors won’t be making any purchases or signing up for any lists; instead, they’ll bounce. If you have a high bounce rate, search engines will take note, and your website won’t show up as high in search results moving forward. So it pays to create a good site with your visitors’ preferences and needs in mind and to maintain your website. If you don’t, your site can get buried in the depths of the Internet. Let’s consider the following points to help determine whether you should DIY or outsource the creation of your website. What’s the goal of your website? Have you stopped to consider your website goals? Now is definitely the time. If you don’t consider your goals, how can you create a plan for success? If you’re a blogger your goal might be to increase the number of visitors to your site and the number of subscribers to your email newsletter. Why? Because those two things can help influence your bottom line by attracting advertisers or companies who’d like to work with you. If you aren’t sure what your goals are, or how to achieve them, you may want to consider outsourcing your website to someone with experience building similar sites so they can guide you. Or do you have clear-cut goals and understand how the layout and build of a website can influence them? If so, it sounds like you’re ready to DIY your own site. Have you created a website before? Creating websites isn’t as difficult as it was 5, 10, or 15 years ago. You don’t need a 4-year degree and a thorough understanding of JavaScript or any other programming language. If you’ve created a website before then we have faith that you can do it again! And if you haven’t, we have faith in you, too! Nowadays, there exists these handy tools called website builders. Website builders, like ours, turn website creation into a quick and painless process. Once you have your domain name and hosting, you can choose a theme for your site. The themes are varied and highly customizable, so you don’t have to worry about your site looking exactly like every other Dick and Jane’s site. You can customize themes by dragging and dropping different elements (like call-to-action buttons or about pages) exactly where you want them. What you see as you build your site is what you’ll get for a finished product. Are you nervous about creating a website? Don’t be. You can practice by using our free website builder that allows you to create a 6-page site (it’s free with every domain name purchase.) If after some practice you decide that you’re a website-building rockstar then good for you! As your business grows you may find that you need a larger site, so you can always upgrade your builder and hosting package and continue rocking those site creation skills. What if you decide that website creation isn’t for you? That’s ok, we can help with our full-service offerings. We understand you may not have the time to devote to a website, so we provide a service that encompasses the following. Professional Website Services Custom 5-page website including content creation for up to 3 pages.Drag & drop site builder so you can make changes to the site if you’d like.Professional branding because you deserve to look like the pro you are.Full website functionality including blog setup, photo gallery, and contact form. And if that’s not enough, we’ll even help with your marketing. Search Engine Optimization (SEO)Managed Local Lift — working with online listing publishers like Yahoo! to make sure local customers are finding you.Content marketing. We’ll write articles and create content to support your organic search rank on major search engines. Monthly consultations with an expert because we’re here to help you succeed. Do you understand the time investment and maintenance a website requires? As much as we wish websites were set-it-and-forget-it, they’re not. (Although it’d be great, wouldn’t it — having one less thing to worry about?) Alas, we can’t change the way websites and the Internet work for you, but we do our best to make it easier by providing all the options you’ll need to secure and maintain not just your site, but your domain name, too. There are some bad people and automated programs online and you need to guard your website against them. You can run manual scans and attack the threats one-by-one, but the fact is, there are a lot more automated bots and programs than there are of you. If you’re new to building websites, you might not realize how essential domain privacy and site security are. offers SiteLock Security products, domain privacy + protection, and more so that you can keep your site free from danger without needing expert advice. But if you’d rather not take any chances and have someone else worry about it, then outsourcing your website is a good option. A 3rd party can help you to build your site, maintain it as needed, and advise you as to the best security options and plans for your site. If I choose to outsource or purchase a DIFM (do-it-for-me) website package, am I stuck with it forever? It’s a valid question, and we don’t blame you for wondering. No, you won’t be. If you need help getting started with your website, don’t have the time to devote to a website right now, or would prefer someone else maintain your site, then outsourcing is the best solution for you right now. But that doesn’t mean things won’t change. Maybe you’ll hire some new people soon and have more time available to focus on your website and marketing; in that case, you can take ownership over your site again. You can switch plans with us at for a self-managed site or make sure to ask any 3rd parties about future arrangements prior to outsourcing your site. There are many ways to build a website With so many options at your disposal, you really don’t have an excuse for not having a site in this day and age. Your website is the heart of your digital presence and your domain name is what leads people there. So don’t delay, get started today!  The post Should You DIY or Outsource Creating Your Website? appeared first on | Blog.

Delivering WordPress Security for a Growing Brand

WP Engine -

Envoy Mortgage, an independently-owned national mortgage lender serving retail originators, has been providing customers with a streamlined mortgage process since 1997. While their business has grown over the past two decades, so has their web presence, and along with it, all of the cybersecurity issues that today’s businesses face. With the proliferation of DDoS attacks… The post Delivering WordPress Security for a Growing Brand appeared first on WP Engine.

The new evergreen Bingbot simplifying SEO by leveraging Microsoft Edge

Bing's Webmaster Blog -

Today we’re announcing that Bing is adopting Microsoft Edge as the Bing engine to run JavaScript and render web pages. Doing so will create less fragmentation of the web and ease Search Engines Optimization (SEO) for all web developers. As you may already know, the next version of Microsoft Edge is adopting the Chromium open source project.   This update means Bingbot will be evergreen as we are committing to regularly update our web page rendering engine to the most recent stable version of Microsoft Edge.     Easing Search Engine Optimization   By adopting Microsoft Edge, Bingbot will now render all web pages using the same underlying web platform technology already used today by Googlebot, Google Chrome, and other Chromium-based browsers. This will make it easy for developers to ensure their web sites and their Content Management System work across all these solutions without having to spend time investigating each solution in depth.   By disclosing our new Bingbot Web Pages rendering technology, we are ensuring fewer SEO compatibility problems moving forward and increase satisfaction in the SEO community.   If your feedback can benefit the greater SEO community, Bing and Edge will propose and contribute to the open source Chromium project to make the web better for all of us. Head to github  to check out our explainers!     What happens next   Over the next few months, we will be switching to Microsoft Edge “under the hood”, gradually over time. The key aspects of this evolution will be transparent for most sites. We may change our bingbot crawler user-agent as appropriate to allow rendering on some sites.   For most web sites, there is nothing you should really need to worry as we will carefully test that they dynamically render fine before switching them to Microsoft Edge.   We invite you to install and test Microsoft Edge and register your site to Bing Webmaster Tools to get insights about your site, to be notified if we detect issues, and to investigate your site using our upcoming tools based on our new rendering engine.   We look forward to sharing more details in the future. We are excited about the opportunity to be an even-more-active part of the SEO community to continue to make the web better for everyone including all search engines.   Thanks, Fabrice Canel Principal Program Manager Microsoft- Bing    

What is a ‘Values-Based’ AI Strategy?

WP Engine -

While artificial intelligence used to be a futuristic concept, today it is part of business’ day-to-day reality. While the term is arguably overused and commonly misunderstood, the technology is being utilized more than ever.  That’s not to say that the actual implementation of AI is without flaws. Many technologists and digital marketers find today’s use… The post What is a ‘Values-Based’ AI Strategy? appeared first on WP Engine.

How to Get Ready for MagentoLive Europe 2019

Nexcess Blog -

MagentoLive Europe 2019 arrives in only a few weeks, bringing Magento merchants and innovators from around the globe to Amsterdam for arguably the biggest ecommerce event on the continent.  What and When is MagentoLive? The Magento community hosts various global events designed to connect and educate developers, merchants, and ecommerce influencers. The largest of these is Imagine, envisioned as the definitive global gathering of the Magento community. MagentoLive serves as a complement to that event, in essence a more “localized” version of Imagine. The short version is almost anyone involved with Magento—in any capacity—will benefit from attending. Adobe, who purchased Magento last year, will have a significant presence with four Keynotes and over two dozen Breakout Session speakers (out of 8 and 48 total, respectively). Add to this sessions from Magento Masters, Google, and other big players from the ecommerce space, and it’s impossible not to leave with new knowledge or inspiration. Almost anyone involved with Magento—in any capacity—will benefit from attending. MagentoLive Europe 2019 takes place between October 22–23 at the RAI Exhibition and Conference Center in Amsterdam, Netherlands. Magento expects over 2000 commerce professionals to attend—here’s how to get the most out of the event. 3 Reasons to Get Excited About MagentoLive Europe 2019 Get excited! It’ll make it easier to find time to plan ahead, and you’ll get significantly more return on your investment. 1.  Session Variety Whether you’re a Magento fanatic, developer, merchant, or even just considering adopting it for your storefront, there’s something for everyone at MagentoLive Amsterdam. Session topics include hands-on labs, marketing strategies, product reviews, technical solutions, and countless other options. Most sessions last an hour or less, but they can overlap.  You can get started prioritizing your favorites by viewing the MagentoLive agenda. Note that some events, hands-on labs, and certifications require registration in advance. 2.  Networking Opportunities Keep an eye on social media, starting with #MLEU, #NexcessLive, and feeds of your other favorites. Put names to faces in an environment where every vendor is putting their best foot forward to earn your business! Not sure how to handle Magento 1 end-of-life in June 2020? Read our blog post, Magento 1 vs Magento 2: Should You Stay or Should You Go? If you’re a developer, consider arriving a day early to take part in Contribution Day. See the Session Highlights section below for more information 3. Adobe’s Roadmap for Magento Adobe’s 2018 acquisition made waves in the Magento community. Although they’ve integrated the platform into their Experience Cloud, they’ve also declared their intent to respect and utilize Magento open source community in this effort.  Judging by the volume of Adobe presenters at MagentoLive Europe 2019, the company appears intent on showing, rather than just telling, how they plan to proceed. President Paul Robson is only one of several members prominent keynote speakers from Adobe, and it’s fair to say they’re expecting your questions about what lies ahead. Whether you’re a Magento fanatic, developer, merchant, or even just considering adopting it for your storefront, there’s something for everyone at MagentoLive Amsterdam. Session Highlights Your mileage may vary according to your role and needs, but here’s some highlights of the wall-to-wall events at MagentoLiveEurope 2019. The variety caters to tech-savvy developers, commerce-focused merchants, and everything in between.Space is limited for some events, so register early whenever possible! Contribution Day Monday, October 21, 9 a.m.–5 p.m. Technically, this is pre-game as it starts a day before the official MagentoLive Amsterdam festivities. Contribution Day allows you to rub shoulders with talented members of the community, where you can learn about how to submit contributions or find solutions to your most pressing challenges. The event spans 7 hours, though day-long attendance is not required. Unwind afterward by closing with their cocktail hour. Early Adopters of Progressive Web Apps Tuesday, October 22, 9–10 a.m. New to the ecommerce landscape in 2015, progressive web apps (PWAs) are now an industry standard. PWA Studio is a collection of tools designed to make the most of the technology on the Magento 2 platform. It’s a relatively pain-free way to learn from other people’s mistakes. Both presents are Adobe representatives: James Zetlan, Sr. MTS Architect and Eric Erway, Sr. Manager, Product Management. How to Digitally Transform and Scale a Traditional B2B Business Tuesday, October 22, 1:30–2:15 p.m. The need to scale is usually a welcome symptom of success, yet still capable of causing headaches and sleepless nights for unprepared stores. Featuring the founder of Juzo, a medical compression manufacturer, and the Founder/CEO of Techdivision Gmbh, their developer, learn about how they addressed the challenge of configuring 50,000 product variants for their Magento store in less than 6 months. Hands-On Labs: Get to Know Adobe Target and Adobe Analytics Tuesday, October 22, 1:30–3 p.m. (arrive 15 minutes early) As Magento is now part of the Adobe Experience Cloud, why not learn more about two other tools already optimized to work with this platform? Like all hands-on labs at these events, you’ll get your hands dirty with firsthand experience creating reports, dashboards, and analytics. Migrating from Magento 1 to Magento 2: Strategic Planning for Business Leaders Tuesday, October 22, 9–10 a.m. Magento 1 end of life is just around the corner (June 2020). Whether you’ve settled on Magento 1 or not, this session will guide your strategy away from common mistakes and into the clearer waters of realistic timelines. Presented by the tandem of Ray Bogman, Adobe Sr. Business Solutions Architect, and Jos Pieters, Jac Hansen Ecommerce Manager & Product Owner. Don’t get caught holding the bag. Check out Magento 1 End of Life: What You Need to Know. Winning Loyalty on the Shipping Battleground  Tuesday, October 22, 2:30–3:15 p.m. Remember the days of “Please allow 6 to 8 weeks for shipping?” Neither does anyone else. After quality, customer care, and shipping are the Big Three of sustainable growth. This session highlights the latest innovations from three presenters: Matthew Waslet, Adobe Product Marketing Manager; Aynsley Peet, Cox & Cox Head of Ecommerce; Leedert van Delft, DHL VP Global Sales & Digital Marketing. Magento Product Roadmap  Tuesday, October 22, 3:45–4:30 p.m. Want to know what the future holds for Magento and Adobe Experience Cloud? This is the place. Four Directors of Product Management from Adobe give you the scoop on Magento Commerce, Order Management, Business Intelligence, and Cloud. Hands-on Labs: Getting Started with PWA Studio Wednesday, October 23, 9–10:30 a.m. (arrive 15 minutes early) Another hands-on lab, where attendees will set up Venia PWA on Magento 2, use Graph QL, and work with PWA Studio. Hosted by Adobe Sr MTS Architect James Zetlan. Commerce Obsessed: How to Map a B2C Customer Journey Wednesday, October 23, 10–10:45 a.m. For consumers, the “cost” of your product also extends to the time involved paying for it. The more efficient and dare-we-say fun you can make your store experience, the more customers will tend to spend. Expect to learn about trends, but also to see real-world examples of customer journey experiences. Led by Ryan Green, Adobe Senior Manager of Strategy. Expanding the User Experience: Site Reviews Wednesday, October 23, 10–10:45 a.m. Let the Magento UX experts review your store and provide constructive feedback on how to increase customer satisfaction. Almost any store has room for improvement. The emphasis is on “actionable advice,” so you stand to benefit as long as you  check your ego at the door.  Secure Commerce with Magento Wednesday, October 23, 10–10:45 a.m Magento’s popularity makes it a prime target for bad actors. The good news is that Magento is well aware and working hard to stay ahead of the game. Topics include PCI compliance, cloud security, and general best practices for keeping your store secure. Led by Adobe Senior Product Managers Yevhenii Pyltiai and Piotr Kaminski,. DevExchange & Networking Event Wednesday, October 23, 3:30–5:30 p.m. A laid back session that serves as last call to share brains with fellow developers. Compare war stories. Learn from each other. Meet awesome people. Led by Sherrie Rohde, Magento Community manager for Adobe.   The post How to Get Ready for MagentoLive Europe 2019 appeared first on Nexcess Blog.

Terraforming Cloudflare: in quest of the optimal setup

CloudFlare Blog -

This is a guest post by Dimitris Koutsourelis and Alexis Dimitriadis, working for the Security Team at Workable, a company that makes software to help companies find and hire great people.This post is about our introductive journey to the infrastructure-as-code practice; managing Cloudflare configuration in a declarative and version-controlled way. We’d like to share the experience we’ve gained during this process; our pain points, limitations we faced, different approaches we took and provide parts of our solution and experimentations.Terraform worldTerraform is a great tool that fulfills our requirements, and fortunately, Cloudflare maintains its own provider that allows us to manage its service configuration hasslefree.On top of that, Terragrunt, is a thin wrapper that provides extra commands and functionality for keeping Terraform configurations DRY, and managing remote state.The combination of both leads to a more modular and re-usable structure for Cloudflare resources (configuration), by utilizing terraform and terragrunt modules.We’ve chosen to use the latest version of both tools (Terraform-v0.12 & Terragrunt-v0.19 respectively) and constantly upgrade to take advantage of the valuable new features and functionality, which at this point in time, remove important limitations.Workable contextOur set up includes multiple domains that are grouped in two distinct Cloudflare organisations: production & staging. Our environments have their own purposes and technical requirements (i.e.: QA, development, sandbox and production) which translates to slightly different sets of Cloudflare zone configuration.Our approachOur main goal was to have a modular set up with the ability to manage any configuration for any zone, while keeping code repetition to a minimum. This is more complex than it sounds; we have repeatedly changed our Terraform folder structure - and other technical aspects - during the development period. The following sections illustrate a set of alternatives through our path, along with pros & cons.StructureTerraform configuration is based on the project’s directory structure, so this is the place to start. Instead of retaining the Cloudflare organisation structure (production & staging as root level directories containing the zones that belong in each organization), our decision was to group zones that share common configuration under the same directory. This helps keep the code dry and the set up consistent and readable.On the down side, this structure adds an extra layer of complexity, as two different sets of credentials need to be handled conditionally and two state files (at the environments/ root level) must be managed and isolated using workspaces.On top of that, we used Terraform modules, to keep sets of common configuration across zone groups into a single place.Terraform modules repositorymodules/ │ ├── firewall/ │ ├── │ ├── │ ├── zone_settings/ │ ├── │ ├── │ └── [...] └──Terragrunt modules repositoryenvironments/ │ ├── [...] │ ├── dev/ │ ├── qa/ │ ├── demo/ │ ├── zone-8/ (production) │ └── terragrunt.hcl │ ├── zone-9/ (staging) │ └── terragrunt.hcl │ ├── config.tfvars │ ├── │ └── │ ├── config.tfvars │ ├── secrets.tfvars │ ├── │ ├── │ └── terragrunt.hcl └──The Terragrunt modules tree gives flexibility, since we are able to apply configuration on a zone, group zone, or organisation level (which is inline with Cloudflare configuration capabilities - i.e.: custom error pages can also be configured on the organisation level).Resource typesWe decided to implement Terraform resources in different ways, to cover our requirements more efficiently.1. Static resourceThe first thought that came to mind was having one, or multiple .tf files implementing all the resources with hardcoded values assigned to each attribute. It’s simple and straightforward, but can have a high maintenance cost if it leads to code copy/paste between environments.So, common settings seem to be a good use case; we chose to implement access_rules Terraform resources accordingly: modules/access_rules/main.tfresource "cloudflare_access_rule" "no_17" { notes = "this is a description" mode = "blacklist" configuration = { target = "ip" value = "x.x.x.x" } } [...]2. Parametrized resourcesOur next step was to add variables to gain flexibility. This is useful when few attributes of a shared resource configuration differ between multiple zones. Most of the configuration remains the same (as described above) and the variable instantiation is added in the Terraform module, while their values are fed through the Terragrunt module, as input variables, or entries inside_.tfvars_ files. The zone_settings_override resource was implemented accordingly:modules/zone_settings/ resource "cloudflare_zone_settings_override" "zone_settings" { zone_id = var.zone_id settings { always_online = "on" always_use_https = "on" [...] browser_check = var.browser_check mobile_redirect { mobile_subdomain = var.mobile_redirect_subdomain status = var.mobile_redirect_status strip_uri = var.mobile_redirect_uri } [...] waf = "on" webp = "off" websockets = "on" } }environments/qa/main.tfmodule "zone_settings" { source = "" zone_name = var.zone_name browser_check = var.zone_settings_browser_check [...] }environments/qa/config.tfvars#zone settings zone_settings_browser_check = "off" [...] }3. Dynamic resourceAt that point, we thought that a more interesting approach would be to create generic resource templates to manage all instances of a given resource in one place. A template is implemented as a Terraform module and creates each resource dynamically, based on its input: data fed through the Terragrunt modules (/environments in our case), or entries in the tfvars files.We chose to implement the account_member resource this way.modules/account_members/variables.tfvariable "users" { description = "map of users - roles" type = map(list(string)) } variable "member_roles" { description = "account role ids" type = map(string) } modules/account_members/main.tfresource "cloudflare_account_member" "account_member" { for_each = var.users email_address = each.key role_ids = [for role in each.value : lookup(var.member_roles, role)] lifecycle { prevent_destroy = true } } We feed the template with a list of users (list of maps). Each member is assigned a number of roles. To make code more readable, we mapped users to role names instead of role ids:environments/config.tfvarsmember_roles = { admin = "000013091sds0193jdskd01d1dsdjhsd1" admin_ro = "0000ds81hd131bdsjd813hh173hds8adh" analytics = "0000hdsa8137djahd81y37318hshdsjhd" [...] super_admin = "00001534sd1a2123781j5gj18gj511321" } users = { "" = ["super_admin"] "" = ["analytics", "audit_logs", "cache_purge", "cf_workers"] "" = ["cf_stream"] [...] "" = ["cf_stream"] } Another interesting case we dealt with was the rate_limit resource; the variable declaration (list of objects) & implementation goes as follows:modules/rate_limit/variables.tfvariable "rate_limits" { description = "list of rate limits" default = [] type = list(object( { disabled = bool, threshold = number, description = string, period = number, match = object({ request = object({ url_pattern = map(string), schemes = list(string), methods = list(string) }), response = object({ statuses = list(number), origin_traffic = bool }) }), action = object({ mode = string, timeout = number }) })) } modules/rate_limit/main.tflocals { […] } data "cloudflare_zones" "zone" { filter { name = var.zone_name status = "active" paused = false } } resource "cloudflare_rate_limit" "rate_limit" { count = length(var.rate_limits) zone_id = lookup([0], "id") disabled = var.rate_limits[count.index].disabled threshold = var.rate_limits[count.index].threshold description = var.rate_limits[count.index].description period = var.rate_limits[count.index].period match { request { url_pattern = local.url_patterns[count.index] schemes = var.rate_limits[count.index].match.request.schemes methods = var.rate_limits[count.index].match.request.methods } response { statuses = var.rate_limits[count.index].match.response.statuses origin_traffic = var.rate_limits[count.index].match.response.origin_traffic } } action { mode = var.rate_limits[count.index].action.mode timeout = var.rate_limits[count.index].action.timeout } } environments/qa/rate_limit.tfvars{ #1 disabled = false threshold = 50 description = "sample description" period = 60 match = { request = { url_pattern = { "subdomain" = "foo" "path" = "/api/v1/bar" } schemes = [ "_ALL_", ] methods = [ "GET", "POST", ] } response = { statuses = [] origin_traffic = true } } action = { mode = "simulate" timeout = 3600 } }, [...] } ] The biggest advantage of this approach is that all common rate_limit rules are in one place and each environment can include its own rules in their .tfvars. The combination of those using Terraform built-in concat() function, achieves a 2-layer join of the two lists (common|unique rules). So we wanted to give it a try:locals { rate_limits = concat(var.common_rate_limits, var.unique_rate_limits) } There is however a drawback: .tfvars files can only contain static values. So, since all url attributes - that include the zone name itself - have to be set explicitly in the data of each environment, it means that every time a change is needed to a url, this value has to be copied across all environments and change the zone name to match the environment.The solution we came up with, in order to make the zone name dynamic, was to split the url attribute into 3 parts: subdomain, domain and path. This is effective for the .tfvars, but the added complexity to handle the new variables is non negligible. The corresponding code illustrates the issue:modules/rate_limit/main.tflocals { rate_limits = concat(var.common_rate_limits, var.unique_rate_limits) url_patterns = [for rate_limit in local.rate_limits: "${lookup(rate_limit.match.request.url_pattern, "subdomain", null) != null ? "${lookup(rate_limit.match.request.url_pattern, "subdomain")}." : ""}"${lookup(rate_limit.match.request.url_pattern, "domain", null) != null ? "${lookup(rate_limit.match.request.url_pattern, "domain")}" : ${var.zone_name}}${lookup(rate_limit.match.request.url_pattern, "path", null) != null ? lookup(rate_limit.match.request.url_pattern, "path") : ""}"] } Readability vs functionality: although flexibility is increased and code duplication is reduced, the url transformations have an impact on code’s readability and ease of debugging (it took us several minutes to spot a typo). You can imagine this is even worse if you attempt to implement a more complex resource (such as page_rule which is a list of maps with four url attributes).The underlying issue here is that at the point we were implementing our resources, we had to choose maps over objects due to their capability to omit attributes, using the lookup() function (by setting default values). This is a requirement for certain resources such as page_rules: only certain attributes need to be defined (and others ignored).In the end, the context will determine if more complex resources can be implemented with dynamic resources.4. Sequential resourcesCloudflare page rule resource has a specific peculiarity that differentiates it from other types of resources: the priority attribute.When a page rule is applied, it gets a unique id and priority number which corresponds to the order it has been submitted. Although Cloudflare API and terraform provider give the ability to explicitly specify the priority, there is a catch.Terraform doesn’t respect the order of resources inside a .tf file (even in a _for each loop!); each resource is randomly picked up and then applied to the provider. So, if page_rule priority is important - as in our case - the submission order counts. The solution is to lock the sequence in which the resources are created through the depends_on meta-attribute:resource "cloudflare_page_rule" "no_3" { depends_on = [cloudflare_page_rule.no_2] zone_id = lookup([0], "id") target = "www.${var.zone_name}/foo" status = "active" priority = 3 actions { forwarding_url { status_code = 301 url = "https://www.${var.zone_name}" } } } resource "cloudflare_page_rule" "no_2" { depends_on = [cloudflare_page_rule.no_1] zone_id = lookup([0], "id") target = "www.${var.zone_name}/lala*" status = "active" priority = 24 actions { ssl = "flexible" cache_level = "simplified" resolve_override = "bar.${var.zone_name}" host_header_override = "" } } resource "cloudflare_page_rule" "page_rule_1" { zone_id = lookup([0], "id") target = "*.${var.zone_name}/foo/*" status = "active" priority = 1 actions { forwarding_url { status_code = 301 url = "https://foo.${var.zone_name}/$1/$2" } } } So we had to go with to a more static resource configuration because the depends_on attribute only takes static values (not dynamically calculated ones during the runtime).ConclusionAfter changing our minds several times along the way on Terraform structure and other technical details, we believe that there isn’t a single best solution. It all comes down to the requirements and keeping a balance between complexity and simplicity. In our case, a mixed approach is good middle ground.Terraform is evolving quickly, but at this point it lacks some common coding capabilities. So over engineering can be a catch (which we fell-in too many times). Keep it simple and as DRY as possible. :)


Recommended Content

Subscribe to Complete Hosting Guide aggregator