From machine learning to project management basics to brand new Elixir tools and some of your favorite libraries, we covered quite a bit of ground this year.
Now, with 2022 rapidly coming to a close, we thought we’d take a look back at some of your favorite DockYard topics from the past 12 months. Here they are:
1. What is Machine Learning Anyway?
In this post, we covered the basics of machine learning. We covered some historical context on machine learning, how it relates to artificial intelligence, and how Nx brings machine learning capabilities to the Elixir ecosystem.
Generally, AI is a system trying to mimic the sense or actions of a human, like vision, speech, writing, planning, etc. Machine learning is the next step from there: the idea that a machine can be programmed to learn from experience. And with Nx, you can achieve that while using Elixir.
2. DockYard R&D: Build Elixir Web & Native Apps Seamlessly with LiveView Native
We launched several projects at ElixirConf 2022, including LiveView Native. With LiveView Native, you can now seamlessly create Elixir web and native apps. Using this new framework, a small team of Elixir developers can build out both versions of the same app, freeing up time and resources.
To put it simply: LiveView Native lets small teams do more with less.
3. DockYard R&D: Firefly Optimizes Your Elixir Compilation
Firefly gives Elixir developers an alternative compiler to the BEAM and capitalizes on Elixir’s inherent distributed systems capabilities.
With it, Elixir developers have access to new levels of efficiency and speed for compiling their applications. Unlike the BEAM, Firefly uses ahead-of-time compilation to speed up the compilation process. It can also make use of WASI to target use cases where WebAssembly is already in use.
4. Elixir versus Python for Data Science
The Elixir machine learning ecosystem has grown rapidly, but Python is still one of the most commonly used languages for data science. In this post, however, we laid out where Elixir’s up-and-coming data science capabilities can go head to head with Pythons (and a few areas where they still can’t).
From numerical computing with Nx versus NumPy, to deep learning with Elixir’s Axon over PyTorch and TensorFlow/Keras, Elixir has a number of alternatives to Python for various data science functions.
5. Getting Started with Axon
Axon gives Elixir developers the ability to create neural networks. The Axon library is built on Numerical Elixir (Nx), so it can be compiled to take advantage of just-in-time compilation.
In this post, we covered the basics of Axon, explained what neural networks are, and gave an example of using Axon to differentiate between pictures of birds and cats.
6. Nx for Absolute Beginners
We covered the building blocks of Numerical Elixir (Nx) in this post. Nx is a library for creating and manipulating multidimensional arrays, and is the core of numerical computing and data science in the Elixir ecosystem.
Nx.Tensor is at the core of Nx (akin to the NumPy ndarray or TensorFlow/PyTorch Tensor objects in the Python ecosystem), and we covered what Tensors are, how they differ from lists, and how to create one. Then we ran through manipulating tensor shapes and types and offered examples of what you can do with them.
7. Profiling Elixir Applications with Flame Graphs and Flame On
This post marked the launch of the Flame On library for Elixir. With Flame On, you can easily and quickly diagnose issues in your Elixir app using Flame Graphs.
Flame Graphs allow you to see how long each function takes to execute (including how long it spends calling other functions). With that information, you can easily visualize where the problems in your app are and devote time to fixing them.
8. Back to Basics: Using the 4 Blocker for Project Management Communication
Clear communication is key to keeping a project on track and running smoothly. But with various stakeholders, it’s easy to hit snags. In this post, we covered one of the fundamental tools for project management communication: the 4 Blocker.
Even experienced PMs can benefit from a return to the basics, and the 4 Blocker is an easy way to distill all the relevant information into a short, easy-to-understand status check rather than a long, narrative project update.
9. Catching Fraud with Elixir and Axon
With roughly a billion credit card transactions every day, any fraud detection system needs to be able to process a huge amount of data reliably and quickly. That makes Elixir a perfect candidate, thanks to its inherent scalability, reliability, and concurrency benefits.
And, with Axon, developers can combine Elixir’s operational strengths with machine learning to create a fraud detection system that can keep up with the sheer volume of transactions while also helping detect theft before it causes major damage.
In this post, we walked through how to set up a fraud detection model using machine learning—specifically using Axon—how to train the model, and how to evaluate it.
10. DockYard R&D: Beacon Brings Phoenix Speeds to Your CMS
Beacon is a LiveView-based content management system created for Elixir applications. With it, Elixir teams will no longer need to search outside the Elixir ecosystem for a reliable, fast CMS.
Because Beacon is built with LiveView, users get the server-side rendering benefits of Phoneix. That translates to faster load speeds for even the most content-heavy pages, a key element to improving SEO performance.
Thanks for keeping up with our team this year! We hope you have a great rest of 2022 and a fantastic start to the new year.