The Eigencast 016: Stratacloud

The Eigencast

Brian Cohen, CEO Stratacloud

Brian Cohen, CEO Stratacloud

Justin talks to Brian Cohen, CEO of Stratacloud, about the company’s vision to build a software-defined infrastructure platform.

Stratacloud has released its first product: SDI Install, designed to help VARs to deploy NetApp FlexPod.

They also discuss how customers are actually using cloud, and when they choose to deploy into the public cloud, when they use hyper-converged infrastructure, and when they want converged infrastructure, or something else. The actual buying process is quite different to what some analysts would have you believe.

Despite plenty of rhetoric to the contrary, there’s still a lot of money being spent on infrastructure that goes into datacentres.

Links

Sponsors

PivotNine-cropped-logo

This episode of The Eigencast was sponsored by PivotNine. Research, analysis, advice.

 

 

Moving To NGINX From Apache

2000px-Nginx_logo.svg

I’ve been a longtime user of the Apache webserver. I think I first installed and configured a 1.x release somewhere in the late 90s, which is longer ago than I often realise.

The last time I looked at NGINX as an alternative to Apache was, similarly, quite a while ago. At the time, the feature parity wasn’t sufficient for it to replace what I needed my Apache install to do, which was a combination of outbound webserving and reverse-proxying of internal services.

A lot has changed. NGINX is now absolutely a viable alternative to Apache for basically everything I thought I needed Apache for.

It’s also just… easier.

The configuration syntax makes more sense to me. Name-based virtual servers just work. SSL setup is easy. I didn’t have to muck about to get reverse proxying working. Putting specific bits of configuration in a certain context (global HTTP server, virtual server, URI location) seems much more intuitive. The documentation is largely clear and to the point, and it’s easy enough to find what I need to look up.

To be fair, a lot of this was made easier because I was coming from Apache and already knew how a lot of this should work, even if I didn’t necessarily know what the syntax I needed was. It was just a matter of quickly Googling Apache to NGINX migration guides scattered around the place, and checking of some documentation.

Why Move?

Apache is pretty heavy. My main corporate site is hosted on a small virtual server to keep costs down, but the same VM also hosts a bunch of other services, like email. The VM only has 1GB of RAM, which should be a lot, but these days it unfortunately isn’t. Apache hogging a bunch of memory to serve up some pretty lightweight pages didn’t really make sense, but I hadn’t bothered to change because a) it worked, and b) why fix what isn’t broken?, and c) laziness.

Alas, the rise in spam meant spamassassin was chewing up a lot of memory learning new tokens (a topic for another day) and running out of RAM, or MySQL would run out and die when something got a bit too popular. It wasn’t worth building a multi-VM scale-out solution, because that would be massive overkill (which means I totally should do it as an exercise one of these days) but I don’t like operational headaches.

Recently I spoke to NGINX Head of Products, Owen Garrett about the open source NGINX webserver/proxy/cache/load-balancer, and the commercial offering NGINX Plus. Did you know there’s a commercial version? There is, and it’s about a lot more than just webserving. Oh, and the CEO, Gus Robertson, is a fellow Aussie.

So NGINX was top of mind, and I figured I may as well give it a go.

Easy Move

Installation is easy, because NGINX is part of Ubuntu, so just:

apt-get install nginx

Basic configuration was straightforward: add a site in /etc/nginx/sites-available, port the Apache configuration across, link to /etc/nginx/sites-enabled and then reload the server config. Here’s a decent place to start with how to port your config. It’s quite easy, really.

You can check syntax first, just like with Apache:

nginx -t
service nginx reload

I already had SSL keys organised (check out LetsEncrypt if you need some) so the main change was to concatenate existing server certificates and the CA chain certificate, because NGINX wants them to be in the one file (unlike Apache’s SSLCertificateChainFile syntax). More info on configuring SSL is here.

Setting up a reverse proxy is easy with the proxy_pass setup:

        location / {
                proxy_pass http://internal.server.net:11034;
                proxy_pass_header Server;
        }

The servername and port are changed for this example, but that’s honestly all there is to it. I only need the proxy_pass_header Server; part because the application server this is in front of happens to need the requested hostname because reasons.

WordPress With FastCGI

This blog runs WordPress, and moving that to NGINX meant adding something to process the PHP, much like adding libapache_mod_php5 to Apache.

Again, this is easy:

apt-get install php5-fpm

And then configure your NGINX server to call php5-fpm as described in this article on the NGINX site. There are security implications for how you allow code to be executed on your webserver, which isn’t specifically related to NGINX, but basically don’t allow files that can be uploaded to the site to be executed as code.

Resources

For tips on the basics of migrating a config, check out this guide over at DigitalOcean. Also take a look at the Beginner’s Guide in the open-source documentation

The basics in the NGINX Admin Guide are easy to read as well, and you can refer to the detailed command references where you want to.

The basics of configuring NGINX for SSL is here.

Tips

  • There’s a difference between root and alias, which is important.
  • If you want to debug how your location matching is working, put your error logging at level notice, and enable rewrite logging, e.g.:
    rewrite_log on;
    error_log /var/log/nginx/mysite.errors.log notice;
    
  • debug level output is very verbose.
  • Move stuff you use in multiple places into a separate file and use include <commonfile>; so you don’t have to write the same thing over and over.

 

The Eigencast 015: Spare5 and the Human Machine Hybrid

The Eigencast

Justin talks to Matt Benke, CEO and Founder of Spare5, and Andy Ganse, Principal Data Scientist, about how they use humans to complement machine learning and data analysis techniques.

Andy Ganse, Principal Data Scientist, Spare5

Andy Ganse, Principal Data Scientist, Spare5

matt-benke-IMG_5461-270x270

Matt Benke, CEO and co-founder, Spare5

Spare5 is so-named because people can take a spare five minutes out of their day to do a task allocated to them by Spare5’s system, a bit like Amazon’s Mechanical Turk, but a task that they are good at and enjoy. And unlike playing a game or checking in to Facebook or Twitter for the twenty-third time this morning, you get paid for your time.

But unlike the exploitative nature of other platforms (*cough* sharing economy *cough*), Spare5 doesn’t see this as an alternative source of a primary income. It’s very much geared towards people spending an odd minute here and there to do something they actually like doing, not something they feel they have to do just to survive. It’s an alternative to playing Candy Crush, but you get paid instead of paying to be entertained.

There are some interesting implications to Spare5’s approach, for how machine learning and modelling is done, the role of humans in a machine/human hybrid future, and how we design systems to provide end companies with the benefits of human labour but in a way that values the humans at least as much as the machines.

Links

Sponsors

PivotNine-cropped-logo

This episode of The Eigencast was sponsored by PivotNine. Research, analysis, advice.

 

 

Digital Adds Nothing

finger-man-451209_1920

I’m fed up with everything being digital.

Digital Marketing, Digital Business, Digital Economy. Pick a noun, whack the word ‘digital’ in front of it, et voilà, it’s now completely different and special!

Except it isn’t. The only time the word digital adds meaning is when you’re contrasting it with something that is analog. You know, like the difference between vinyl records and compact discs. Or discrete and continuous mathematics. Or electric circuitry.

That’s where it came from, I know. Digital computers. As distinct from analog computers, and how many of those do you see these days? Digital is shorthand for saying “involving computers somehow”.

Computers. That have been around for over 70 years now. The 1980s was thirty years ago.

What’s The Difference?

Here’s the thing: what’s the difference between a business, and a digital business? A business that uses computers?

Spreadsheets have been used for running businesses since at least VisiCalc, which was first released in 1979. “Using computers in your business” isn’t new and special.

Ok, so maybe digital is shorthand for “business that uses the Internet”? The dot-com boom/bust was in 1999, seventeen years ago. Try again.

Calling something digital is actively harmful when it clouds people’s thinking that using a computer somehow makes an existing business process magic.

It doesn’t.

Digital Marketing

Sloppy marketers are the biggest abusers of this digital-prefix mania. I guess they ran out of ideas after putting the letter e in front of everything. Remember e-marketing?

Let’s use them to show how whacking digital in front of everything makes otherwise smart people stupid.

AdAge loses its mind

Jason John doesn’t read his own article.

This article in AdAge has been marked up by my old biz school professor, Mark Ritson, to show how adding computers or the Internet doesn’t change the principles of marketing. The article directly contradicts itself.

What people seem to have forgotten in all the excitement about computers is that there are an awful lot of humans out there doing things. Marketing is all about influencing humans, not computers. Digital marketing, if there really was such a thing, should probably be about convincing your fridge that it needs a new toaster as a companion in the coming utopia of the Internet of Things (as distinct from the Internet of non-Things, whatever that is).

People, Not Digits

In fact, most businesses are about people. You’re making products, or services, that people want or need. You tell people about those things through advertising. You try to understand what people want by conducting market research. You hire and pay people to create the stuff your business sells. People talk to other people about the stuff and convince them to exchange money for the stuff. People use your stuff and hopefully tell other people about how great it is and that they should but some too.

It’s all about people. Companies aren’t autonomous intelligences that wander the landscape, occasionally spurting out a new kind of chocolate bar. They’re run by people. People make the decisions. People decide to kill a popular product line, or to move production to Mexico, or to hide their investments in offshore tax havens.

Until we really do have AI, it’s people all the way down.

Digital To Finger

In a fit of pique, I quickly hacked up a Chrome browser extension to replace every occurrence of the word digital with finger.

You can grab the code from my Github here. It’s based on the Snake People-to-Snake-People extension, which is worth a go as well. You could also use the XKCD substitutions extension, which can now do arbitrary string replacements.

Run it for a day, and be amazed at how silly people sound as they prattle on about Finger Marketing, or Finger Businesses.

And then have a think about what the digital prefix is hiding. Strip it away, and then ask yourself:

Is this really any different?

The Eigencast 014: Pure Startup

The Eigencast

Scott Dietzen, CEO of Pure Storage, with Blue Cow

From left: Justin Warren, Blue Cow, Scott Dietzen, CEO of Pure Storage (Photo: Justin Warren)

Justin talks to Scott Dietzen, CEO of Pure Storage, about keeping a startup culture inside a public company. They discuss the storage market, and all-flash in particular, given the nature of Pure’s products.

They talk about why Pure chose to develop its newly announced FlashBlade product line as an “internal startup”, and how the group was organised, managed, and motivated. Scott shares his views on how product development inside large companies should be done, and there are some good lessons here for anyone interested in innovation, startups, and high tech.

Scott shares his experiences of entrepreneurship from four different companies, and suggests that Pure Storage will be the last time he plays a hands-on role in leading a startup. He provides a few tips for anyone thinking of trying the entrepreneurship route.

Links

Sponsors

PivotNine-cropped-logo

This episode of The Eigencast was sponsored by PivotNine. Research, analysis, advice.