ActiveState Blog

  • Machine Learning Use Cases by Industry
    Machine Learning Use Cases by Industry

    What is Machine Learning (ML)? Pragmatically most can agree that it’s about getting computers to learn over time in an autonomous fashion by feeding them data. But how machine learning is applied in practice varies by industry. For this reason, ActiveState recently undertook a project to survey the state of Machine Learning by interviewing a range of leaders in various industries, including:

  • Why pipenv > venv
    Pipenv vs Virtualenv

    Pipenv was first released as an experiment way back in January of 2017 by Kenneth Reitz. Even though pipenv is a package that attempts to marry the best of pip and virtualenv into one single toolchain and include a replacement for requirements.txt, it didn’t get much love. But this year, the Python community has welcomed pipenv as the far better way to create virtual environments, especially when it comes to dependency management.

    For example, previously, in order to create virtual environments so you could run multiple projects on the same computer you’d need:

  • How to do Machine Learning without Learning Data Science
    Machine Learning without Learning Data Science

    For all that TensorFlow is the current darling of the Machine Learning (ML) crowd, it’s just a graphing library that represents a series of commands and computations as a graph. Because each node in the graph is an operation and each branch is a value, TensorFlow lends itself well to ML tasks.

  • Tracking Application Risk without the Risk of an Agent
    Track Application Risk

    In recent years security has taken a back seat to time-to-market. We’ve moved from a waterfall to an agile software methodology and left ourselves with less and less time in the release cycle to tack security on at the end. Sure, we all run a Pen test at some point in the CI/CD chain, but who has the time to check through all those false positives?

    At the end of the day, “I might get hacked” is a significant motivator. But “I will lose revenue if I can’t get to market on time” has become the more important driver.


  • Shift Left - How to Secure your Source Code
    How to Secure Source Code

    You hear “shift left” tossed around in software development circles these days. It’s like the secret passphrase you need to know to get into the security club. Unless you’re still doing waterfall-style software development, there’s no time for a detailed security scan at the end of the software release cycle. So if you’re not shifting your security implementation left and baking it in from the get go, where is your security getting added? Spoiler alert: it’s not.


  • Golang Module vs Dep: Pros & Cons
    Golang Module vs Dep: Pros & Cons

    The Golang (Go) community is a passionate one. That passion results in excellent discussions and lots of great ideas, especially when it comes to improving the language and its ecosystem. But that passion can also divide the community when not everyone agrees on the best way forward. For example, when it comes to versioning and dependency management, the community-led ‘dep’ experiment looked poised to establish itself as the defacto standard until the introduction of vgo and Go modules earlier this year.


  • How to do Build Reproducibility Right
    Do Build Reproducibility Right

    Build Reproducibility is the ability to build software repeatedly, over time. The better reproducibility you can create, the easier it will be to scale software deployments across your enterprise infrastructure. The goal is to create a system that is easy to reason about and audit after the fact.

    So how can you work towards build reproducibility and improving the build experience?

    In this post I’ll cover three seemingly different trends that all share the ability to enable reproducibility and consistency, including:

  • Python Deployment Heck
    Python Deployment Heck

    Python coding is an awesome experience. Python deployment? Not so much. It’s not quite Hell, and things do get moving eventually rather than get stuck in Limbo, so let’s just call it “deployment heck.”

    Many of the pains associated with Python deployment are just growing pains: Python has suddenly become one of the most popular programming languages on the planet (primarily due to its data science and machine learning capabilities), and the cracks are beginning to show.

  • Open Source and the Visibility Problem
    Open Source Visibility Problem

    The world runs on software, and as any developer knows, software runs on open source. In fact, as much as 90% of the code base of any application built today is open source code, allowing organizations to innovate faster than ever.

    But open source has some key visibility challenges:

  • Machine Learning for DevOps
    Machine Learning for DevOps

    Automation is a key design principle for DevOps teams. To speed up throughput in the software development life cycle (SDLC) DevOps automates everything from continuous integration (i.e., auto-compile and test) to continuous delivery (i.e., automatic deployment after each change) to production monitoring and quality control (i.e., regression testing).