Saturday, April 22, 2017
Sunday, February 12, 2017
Although Serverless has become a bit of a buzzword recently, Steven Faulkner, Director of Platform Engineering at Bustle, disagrees that it is just a fad. In his talk at Node.js Interactive, he points out that much of the faults that people find in Serverless -- that it doesn't scale, that it is not production ready, that it’s too slow and expensive -- are provenly false.
Faulkner has made Serverless the backbone for Bustle's content since it became a thing a couple of years ago. This means he is in charge of all things back-end, but does a lot of front-end work, too. At Bustle, one of the largest women’s media properties online, they use serverless for 99 percent of the requests. This translates to between 10 and 20 million calls per day. Serverless has a latency of less than 200ms average, and it costs less than than their EC2 (Amazon Elastic Compute Cloud) base setup.
Faulkner also addresses some of the misconceptions surrounding Serverless. The first is, admittedly, down to the name of the concept itself. Serverless is a misnomer because, clearly, there are still servers deep down somewhere.
However, Serverless is the result of answering the question "What if we abstracted all the servers away?" -- that is, what happens when you create a service that relieves the developers and admins from having to worry about the underlying server? Serverless implements "anything and everything as a Service," which is not a new concept.
Faulkner says Serverless is really about Functions as a Service (FaaS). The core tenants of FaaS are that code is only run when needed, you only pay when code is run, and you are not bothered with the details, in fact, your app is a function that sits between the request from and the response to the user:
request yourApp() response
There are several providers offering Serverless-Function as a Service. For example, Microsoft Azure has Azure Functions and Google has Cloud functions. IBM has an open source service called OpenWhisk. Faulkner, however, Faulkner thinks Amazon Web Services is ahead of everyone else in this arena and described some examples in his talk.
Why Use Serverless
Faulkner says there are several advantages to deploying web apps to a Serverless service. Despite what many think, Serverless does not mean NoOps; it means Less Ops. Serverless also scales, in the sense that fewer things change between when you have 1 request per second, and when you have 1000 requests per second.
Price is another factor. You only pay when somebody is using your code. This means you can maintain legacy services that you are not sure you should turn off quite yet, or you can deploy services you are not sure will be successful at zero cost.
But even when your code is running, it is still cheaper. Faulkner says that an API he uses to trail all the user tracking and event tracking on the Bustle website and then route it where it's meant to go costs $2500 month on EC2. On Lambda/API Gateway only $400 month.
For developers, it is easier to iterate at function-based level rather than on your whole application, and Serverless allows for single function deployments. This means you can do things very quickly by re-writing one single function and you can deploy it without affecting the whole. Amazon's service also makes for quicker deployments because you can deploy 50 functions and alias them all at once.
Why Not Use Serverless
There are, however, also several reasons why you may not want to use a Serverless service like Amazon's. There is, for example, the risk of becoming locked in. Migrating from a Serverless FaaS can be a minefield, but, according to Faulkner, from Amazon it is not that hard. He has a chunk of code 9 lines, an Express server, that calls the Lambda functions if you have to migrate.
Another problem is running cold functions. If you're doing something outside the function, like loading a bunch data before the first time your function runs, this can delay the first run an unacceptably long time. Amazon solves the problem by running all your functions within 3.5 hours of the upload.
Testing is yet another area that can cause problems. Testing individual functions is not too difficult according to Faulkner. But when you want to do integration testing across all of your functions, that is still painful.
Serverless at Bustle
On the back-end, Bustle uses GraphQL to fetch most of the data. The JSON generated by GraphQL is processed through API Gateway and Lambda, which are talking to dynamodb or redis, with some PostgreSQL thrown into the mix.
Despite all its advantages, if you are deploying more than two functions, it is very painful to deploy your stuff manually. That's where the tooling comes in. Faulkner mentions Serverless Framework, node-lambda, apex, claudia.js as tools to check out. But, he also recommends his own open source tool, shep, which will allow you to build and deploy your serverless applications to Amazon's Lambda with a few simple commands.
For more examples and details, watch the complete presentation below:
If you are interested in speaking or attending Node.js Interactive North America 2017 - happening in Vancouver, Canada next fall - please subscribe to the Node.js community newsletter to keep abreast with dates and time.
Tuesday, November 1, 2016
Your First Marketing Hire
As many have written (most recently Jason Lemkin on Quora), B2B marketing contains at least four really discrete disciplines: demand generation, product marketing, positioning/strategy, and PR/communications/branding. Increasingly, marketing technologist & operations is being broken out separately, but it otherwise falls into the demand generation role.
When it comes time to hire a company’s first marketing person, most founders think they just need a director or experienced individual contributor to start doing demand generation and bring in leads. They think, “I’ve got to make sales productive with leads.” They invest in SEO, spend thousands on SEM, turn on email marketing, and crank out webinars. That is one approach, but I’ll argue it is the wrong one.
I recommend starting with a director or senior product marketing manager who is willing and ready to roll up her sleeves for three key reasons:
1. In the early stages, all marketing is product marketing.
The most important marketing milestones are to articulate the value proposition in your customer’s’ eyes, position it relative to competition and alternatives and help the company tell its story. If you’re spending money to amplify a bad or wrong story, it’s money down a drain.
2. Making sales productive is sales enablement not lead gen.
Making the company’s new sales people productive *is* critical, but what sales most needs is sales enablement tools rather than leads. Product marketing creates company presentations, case studies, ROI calculators, the website, and materials for a webinar or conference presentation. Product marketers are domain experts who can create content for lead gen and generate thought leadership.
3. Product marketers by definition are generalists with broad skill sets.
Someone who is exclusively really great at Demand Gen is not likely to be good at articulating a great story. They look for short-term clicks vs. playing the long game, which is what positioning is. On the other hand, product marketers tend to be “athletes” who play a productive role and stand up other marketing disciplines. A product marketer can build the website, write and disseminate articles, pick and manage PR agencies, run an analyst tour, optimize website for search, initiate and manage a competent SEM campaign, and pick the first basic marketing tools.
Companies who do not do the positioning work up front do not build the necessary foundation.
The risk of NOT doing the positioning work up front is you get customers, but they’re not the best or right ones. Your single best marketing asset as an early B2B company are early customers who love you.
For example, one major online backup company did all performance-based acquisition in its early days. They took anyone whose money was green. Only when they saturated their early markets did they start working on positioning, but at that point Dropbox already dominated the conversations in their categories. Shifting awareness at that point took millions instead of the thousands it would have taken to own their position in those markets up front.
There are plenty of companies that have experience on one side of this line or the other. But even though it’s contrary to today’s conventional wisdom, at Costanoa we feel leading with product marketing is the way to go.
Thursday, October 20, 2016
Are you lost because your website is not showing up on search engines as the Number 1 result?
There are lots of discussions and articles on how to fix websites. But let’s make it easy by narrowing it down to the few key measurements that search engines consider to be the most important this year.
Before looking at your site---- it is important to look at your competitor’s site that is now on top and ask yourself :
Does it load quickly?
Do you trust the company/website/person based on a landing page?
Can you find the competitor’s website link on another trusted site?
Are they running online ads?
Now go to your website:
Does it load as quickly?
If not, you can test your site on Google’s speed test that provides suggestions on what needs to be fix: https://developers.google.com/speed/pagespeed/insights/
If you’re not sure what the Google test results mean, then your site probably has some backend technical issues that need to be address.
Now try to find something on your site that you customer might really need to know--- For example how to return an item?
Can you find it quickly or is it buried somewhere on the site?
If it is buried--- make plans with your web team to put it on the first page with a link to find more info.
Next-- Do you believe the text that describes your company, your mission, and products or are the words fluffy?
(An example of fluffy—“Our mission is to be the best and truly serve our customers.”)
This is lazy text that needs to be improved to build trust, because how much time did you really spend on that mission statement?
If your site is full of fluffy content, find someone to help you rewrite the text and eliminate the fluff with real examples of what you can really do for your customer --- such as –-- “We will reply to your email request within an hour.”
Can you find your website link on other trusted sites?
If not, you really need to find ways to get them on other sites as quickly as possible. Any industry or association site that list companies that offer your services is a great place to start. Then move on to vendors/partners, other blogs or ecommerce sites.
Are you running ads?
If not, you should explore some options to help generate visits to your site.
If yes, re-evaluate the ads and revamp your efforts.
If you fix these few issues you should see improvement in your website search engine rankings fairly quickly. If you still experience trouble with your rankings, there are deeper issues and you should turn to a local search engine optimization expert to help fix them.
For more assistance visit our website: www.nsgconsultinginc.com
For more assistance visit our website: www.nsgconsultinginc.com