Introducing
The Slant team built an AI & it’s awesome
Find the best product instantly
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now
4.7 star rating
0
What is the best alternative to Cake?
Ad
Ad
GNU Make
All
5
Experiences
Pros
3
Cons
1
Specs
Top
Pro
Uses the full power of the UNIX shell
Make takes advantage of the powerful UNIX shell, using it at it's full potential. STDIN and STDOUT are especially useful because of their versatility.
See More
Top
Con
Doesn't run on Windows by default
Make requires Cygwin/msys2/MinGW to run on Windows.
See More
Top
Pro
No need for wrapper modules
Other build tools need wrapper modules to do certain tasks. The biggest disadvantage of these wrapper modules is that they bind you to a version of that tool. With Make you don't have that problem, there's no need for wrappers and no tools to bind you to a version, you can use any version of Make that you want.
See More
Top
Pro
Works with more than just node.js
Since it's written in C and can be found in all UNIX-based systems it can be used on platforms other than node.js.
See More
Specs
Platforms:
Unix, Linux, Windows, Mac
Hide
Get it
here
56
13
Tup
All
8
Experiences
Pros
5
Cons
2
Specs
Top
Pro
Speed
It is very fast.
See More
Top
Con
Variants not working on Windows
The solution for having different build configuration (think Release/Debug) is broken on Windows.
See More
Top
Pro
Tidy
It will automatically clean-up old files.
See More
Top
Con
Cannot incrementally modify or delete files
Cannot incrementally modify files (e.g. LaTeX PDF, VISing and LIGHTing Quake maps, which takes the same BSP file as input and output), and will not delete files (e.g. rm build/*.o).
See More
Top
Pro
General
Not bound to C/C++.
See More
Top
Pro
Lua
Tup supports writing build definitions using Lua or Tupfiles.
See More
Top
Pro
Cross platform
Supports Linux, OSX, and Windows.
See More
Specs
Platforms:
Windows, Linux, Mac
Hide
See All
Experiences
Get it
here
11
4
Ninja
All
4
Experiences
Pros
2
Cons
1
Specs
Top
Pro
Simple set up
Once dependencies like maven are installed it is up and running in minutes with one simple command.
See More
Top
Con
Little user choice in organization
Since most of the code and folder structure are automatically generated, this leaves little room to the developer on how they will organize their project.
See More
Top
Pro
Easy horizontal scaling
Ninja is stateless by design. This makes horizontal scaling very easy and just a matter of adding servers.
See More
Specs
Platforms:
Windows, Linux, Mac
Hide
Get it
here
52
3
Gradle
All
11
Experiences
Pros
10
Cons
1
Top
Con
Can get slow for large builds
Since Gradle uses Groovy instead of XML for it's configuration scripts, it achieves a great deal of flexibility but unfortunately that comes with slower builds when the project gets large enough. This is because the entire Groovy script has to be recompiled for every build instead of simply being parsed.
See More
Top
Pro
Official Android Studio build tool
Android Studio's build system is an Android plugin for Gradle. What's more is that the Android Gradle plugin can be installed and run even on machines that don't have Android Studio, which enables you to build Android apps everywhere (for example continuous integration servers).
See More
Top
Pro
Lots of plugins available
Gradle has hundreds of open source plugins available. This is extremely helpful for users who want to speed up their development.
See More
Top
Pro
Dependency programming tool
Gradle is a dependency programming tool first and foremost. Gradle will make sure that all declared dependencies are properly executed for every random task that you execute in your setup. The code can be spread across many directories in any kind of file layout.
See More
Top
Pro
Short scripts
Since Gradle does not use XML but it uses it's own DSL based on Groovy, Gradle scripts tend to be shorter than other build tools that use XML. Boilerplate code is also considerably small because it's DSL is designed to solve a specific problem: moving the software through its lifecycle starting from compilation into static analysis and testing, packaging and finally deployment.
See More
Top
Pro
Integrates with Maven
Gradle can deploy to remote Maven repositories or even install to your local Maven repo.
See More
Top
Pro
Built for continuous delivery
Gradle can be easily integrated with Jenkins to create a continuous delivery pipeline for any Java application.
See More
Top
Pro
IDEA integration
Gradle has full integration with Jetbrains IDEA. IDEA understands multi-module Gradle builds and automatically maintains the IDEA modules within the project. You also have the option to run unit tests with either the built-in JUnit/TestNG test runner, or delegate running the test to Gradle using the same visualization as the built-in runner.
See More
Top
Pro
Integration with Ant
Gradle integrates perfectly with Ant. Giving developers a lot of Ant's flexibility. You can run individual Ant tasks on Gradle or even entire Ant builds.
See More
Top
Pro
Convention over configuration
Gradle follows the convention over configuration paradigm in order to make it easier for developers by having already made a number of decisions out of the box.
See More
Top
Pro
Eclipse integration
Gradle has full integration with Eclipse through developer tools and plugins.
See More
Hide
See All
Experiences
Get it
here
46
8
TeamCity
All
12
Experiences
Pros
8
Cons
3
Specs
Top
Pro
Easy installation
TeamCity has different installation packages for different operating systems. All the user needs to do is download the correct one and run it.
See More
Top
Con
Expensive
TeamCity has a free tier which includes a maximum of 100 build configurations and up to 3 build agents. If you want to add 10 more configurations and 1 more agent, it will cost $299; unless you choose to buy an enterprise license which starts at $1999.
See More
Top
Pro
Cross-platform build support
The fact that it is based on Java does not hinder TeamCity's ability to support different build environments. TeamCity in fact supports a large number of languages and tools for each of those languages (build runners and test frameworks). Some of the languages/platforms that are supported include: Ruby, .NET, Java.
See More
Top
Con
Poor quality plugins
At least some of them do not work, probably because they're not updated to more recent TeamCity versions.
See More
Top
Pro
Brilliant interface
The user interface of TeamCity is clear, well thought out and the dashboard is highly customizable.
See More
Top
Con
Inter-branch merges trigger emails to unrelated committers
Whenever an inter-branch merge occurs, TeamCity pulls up the first parent of the merge commit and sends them an e-mail. However, this sort of information would be more useful to the merge author.
See More
Top
Pro
Supports build chains
The user can easily compose dependencies between builds by adding snapshot and artifact dependencies, all on the one screen. All output of upstream builds is available to downstream builds. Triggering sets off the entire build chain and supports re-running of the portions of the chain that failed.
See More
Top
Pro
Well documented
See More
Top
Pro
Extensible
TeamCity offers well defined APIs for extending, as well as a REST interface.
See More
Top
Pro
Testing support
TeamCity supports both MSTest and NUnit (which is open source) to run tests.
See More
Top
Pro
Best choice for .NET
Seems to be the best choice for .NET applications, but to be honest: if you stray from the default settings you will be in a lot of pain most of the time.
See More
Specs
Platforms:
Web, Windows, Linux, Mac, FreeBSD, Solaris, HP-UX
Technology:
Java
Git:
Yes
SVN:
Yes
See All Specs
Hide
See All
Experiences
Free / paid
81
15
InnoSetup
All
7
Experiences
Pros
5
Cons
1
Specs
Top
Pro
Easy to extend, add custom behavior
Can easily script own functions to run at various stages of the install / uninstall process.
See More
Top
Con
Pascal scripting
For programmers used to C and C#, the Pascal scripting syntax is something that takes a while to get used to.
See More
Top
Pro
Well supported
Frequent updates to keep up with the latest OS features, fix bugs. Also has attracted a good deal of 3rd party support (extensions, environments etc). Good community resources for tackling problems.
See More
Top
Pro
Well written documentation
Well indexed and accurate Help file included with the scripting environment.
See More
Top
Pro
32 bit / 64 bit support
Covers both 32bit and 64bit software
See More
Top
Pro
Does not use Windows Installer MSI files
Uses a dependable, proven non-MSI approach to installation and uninstallation.
See More
Specs
Platforms:
Windows
Technology:
Pascal
Hide
See All
Experiences
Free
29
0
Bazel
All
11
Experiences
Pros
9
Cons
2
Top
Pro
Correct and repeatable builds
Builds only use input files that are explicitly declared in the build specification. On Linux, Bazel runs tools in a sandboxed environment that contain only the minimum necessary files required.
See More
Top
Con
Draconian sandboxing, explicit inputs requirement
Requirement to explicitly name all inputs disqualifies Bazel for many workflows, e.g. those relying on tools that scan a directory tree themselves looking for files to process. Sandboxing as implemented in Bazel imposes further restrictions. If a command is successful when you type it in the shell, it should also be successful when pasted verbatim into a rule, but with Bazel it very often isn't.
See More
Top
Pro
Fast even at scale
Even at large scale it's pretty fast (it's based on what Google uses internally for their huge code base).
See More
Top
Con
Confusing for beginners
With so many capabilities, trying to implement with a simple project is overkill and unpleasant.
See More
Top
Pro
Can rule shell commands
See More
Top
Pro
Handles mixed language builds
See More
Top
Pro
High level build descriptions
See More
Top
Pro
Build rule errors are informative
When builds fail because of an issue in the build rules, the errors provided are usually very informative and helpful to resolve the issue.
See More
Top
Pro
Good IDE support
See More
Top
Pro
Standard protocol for remote execution and caching
See More
Top
Pro
Remote execution of commands
See More
Hide
See All
Experiences
Get it
here
18
6
RUDDER
All
9
Experiences
Pros
6
Cons
2
Specs
Top
Pro
Continuous configuration - dedicated to production
Rudder checks every rule that has been set up to keep it compliant over time. It is a tool made to be used in production. It's not a dev tool where there is no continuity constraint.
See More
Top
Con
Community growing but not very big at this day
There is more and more people getting involved in the Rudder community, but it's nothing compared to Puppet community so far.
See More
Top
Pro
Web UI + CLI + API
There is 3 ways to use Rudder. The biggest surprise is that everything that can be done with code is also possible with the web interface, without knowing anything about development or automation, generally speaking.
See More
Top
Con
Not a one-shot deployment tool
Rudder is overkill if the goal is only to push one-time actions. Thankully, a plugin is available to connect Rudder with Ansible and enhance its capability.
See More
Top
Pro
Light agent developed in C - up to 10 000 nodes
The agent has nearly no impact concerning resources and that is the reason why Rudder is able to manage thousands of servers without any performance issues.
See More
Top
Pro
Codeless user interface with built-in template library and editor
Non-expert users can define parameters in a central interface, and Rudder will automatically make sure that IT services are installed, configured, running and in good health. All actions (checks, warnings, fixed errors…) are reported upon immediately in the user interface, keeping drift from nominal behaviour low.
See More
Top
Pro
Free and open source
Apart the agent on proprietary OS (AIX, Windows, ...) , Rudder is an open source and free software. This means that the code source is available on Github for every part of Rudder (Rudder webapp, and every other Normation repository). This also means that packages for a wide range of distributions are released and available to download freely.
See More
Top
Pro
Running on Linux, Windows, AIX, Solaris, Android...
Rudder can manage quite everything. So far only HP-UX and iOS don't have their own agent version, but everything else is available already.
See More
Specs
Platforms:
Windows, Linux, AIX, Raspbian
Technology:
Scala
Hide
See All
Experiences
Free / paid
24
0
Please
All
4
Experiences
Pros
3
Cons
1
Top
Pro
Cross-platform
Linux, macOS, FreeBSD.
See More
Top
Con
No support for Android or iOS yet
See More
Top
Pro
Intuitive syntax and workflow
Much simpler than multi-tier build systems, like Make and Ninja.
See More
Top
Pro
Code Completion
Works with many IDEs, including Visual Studio Code.
See More
Hide
Free
2
1
SaltStack
All
8
Experiences
Pros
7
Specs
Top
Pro
Friendly and open community
Salt has an impressive welcoming and active community of users. There are user groups all over the world (Stockhom, Silicon Valley, Paris, and lots more), and an active live chat.
See More
Top
Pro
Easy to read output
Salt's configuration files and setups are organized into YAML files. This makes them very easy to read and understand since YAML is considered very readable.
See More
Top
Pro
Agentless via SSH is an option
Salt can run agentless just like ansible, allowing it to manage devices that you can't run an agent on (routers/switches, etc).
See More
Top
Pro
Communicates through SSH or agents
Salt can communicate with clients through agents called minions, or through SSH.
See More
Top
Pro
Scalable
With Salt you can have multiple layers of masters which result in an arrangement which distributes load and increases redundancy. Upstream masters can then control downstream masters and their minions.
See More
Top
Pro
Cross-platform
Salt has support for Windows, Linux and Unix. Though it's fair to say that it's easier to use and it's more useful in Unix and Linux systems.
See More
Top
Pro
Fast execution of commands
Salt works around a Salt master which has multiple agents (Salt minions) that have a persistent connection to the master. Because of this persistent connection, commands to the master are fast to reach the minions. Furthermore, the minions also save various data to the cache in order to make execution faster. When compared against other tools to run the same actions, Salt almost always completes the actions in significantly less time.
See More
Specs
Platforms:
Windows, Linux, Mac
Technology:
Python
Hide
See All
Experiences
Free / paid
17
0
AppVeyor
All
8
Experiences
Pros
5
Cons
2
Specs
Top
Pro
Free for open-source projects
AppVeyor is free for public GitHub repositories.
See More
Top
Con
Not free
This is open-source but not free.
See More
Top
Pro
Supports Windows build enviroment
AppVeyor has a build environment for Windows available.
See More
Top
Con
Configuration is limited
AppVeyor's configuration (which is done from the .yaml file in the root of the project) is unfortunately very limited. The configuration is either tied to a branch or, in other cases, it's global. This limits the developer to a single build process. However, since you can use arbitrary scripts for building, all those limitations can be overcome. Configuration can also be done from the web UI without a .yaml file.
See More
Top
Pro
Clear, straight-forward user interface
Well I suggest you check it out for yourself, but what I like most is that it's simple yet effective: no bells and whistles, simple black/grey/light-blue/white color scheme, it's immediately clear where you have to go for each specific task, and build settings pages are like that as well. Getting a 'standard' build running literally took me a minute the first time I used it.
See More
Top
Pro
Easy access to build VM
AppVeyor allows the user to login to the actual build VM.
See More
Top
Pro
The initial setup is easy
There's practically no setup involved prior to working with AppVeyor: simply sign in, add the project, and start a new build.
See More
Specs
Platforms:
Web, Windows, Linux, Mac
Hide
See All
Experiences
Get it
here
12
0
LINQPad
All
5
Experiences
Pros
3
Cons
2
Top
Con
PostgreSQL driver
PostgreSQL support is not included, but a driver can downloaded from GitHub.
See More
Top
Pro
The ideal coding scratch pad
See More
Top
Con
Windows only
But LINQ Pad 6 will support .Net Core 3.0.
See More
Top
Pro
Dark theme
See More
Top
Pro
Portable
Can be deployed portable all files are optional apart from LINQPad.exe and LINQPad.exe.config.
See More
Hide
Free / paid
4
0
dotPeek
All
3
Experiences
Pros
2
Cons
1
Top
Pro
Uses a very familiar interface
The dotPeek's UI is very reminiscent of a text editor, it has a large section with decompiled code, file browser, a search and navigation tool, etc. Developers will easily find themselves at home and get used to it quickly.
See More
Top
Con
Slow
Starts up slowly, not a lightweight tool.
See More
Top
Pro
Diagram
View dependencies between assemblies.
See More
Hide
Free
4
0
Snyk
All
5
Experiences
Pros
3
Cons
2
Top
Con
Shallow .NET support
Only seems to check the NuGet packages and not much else.
See More
Top
Pro
Integrations
Snyk can connect directly to GitHub, GitLab, Heroku, AWS Lambda, Bitbucket Server etc. It is also possible to use the CLI.
See More
Top
Con
ASP.NET Core is "High risk"
The TeamCity plugin fails the build for all ASP.NET Core applications stating that it is vulnerable to DOS attacks and that "there is no fix available".
See More
Top
Pro
TeamCity plugin
TeamCity plugin available.
See More
Top
Pro
Multi language support
Snyk supports .NET, GO, Java. Node.js, PHP, Python, Ruby, Scala.
See More
Hide
Free / paid
3
0
Waf
All
7
Experiences
Pros
5
Cons
2
Top
Con
Obfuscated documentation
See More
Top
Pro
Written in Python
You don't have to learn a domain specific syntax. If you know Python, it's a breeze.
See More
Top
Con
Non-standard Python
See More
Top
Pro
File changes are tracked based on a hash of their changes not the time stamp
This means that switching branches in git isn't a big deal.
See More
Top
Pro
Very fast
Much faster than its predecessor SCons.
See More
Top
Pro
Fairly easy to extend
See More
Top
Pro
Very simple graph based API
See More
Hide
See All
Experiences
Get it
here
9
1
Gulp
All
17
Experiences
Pros
11
Cons
5
Specs
Top
Pro
Large plugin ecosystem
Currently gulp offers a selection of 1000+ plugins and it is growing rapidly.
See More
Top
Con
Dead
Gulp is dead, hasn't been updated in 4 years.
See More
Top
Pro
Focuses on code instead of configuration
This depends on your style, but gulp is closer to the code, the actual execution isn't hidden by multiple layers and it's much easier to customize the build system without writing bloated modules. This also brings rather small configuration files.
See More
Top
Con
Rapidly changing API
While it's good that the gulp maintainers want the api to be as good as possible, it comes at the expense of stability. The upcoming gulp 4.0 release has another update to the way dependency management works which will require everyone to update their build scripts. It also makes it hard to look up information on best practices as the best practices keep changing, making a lot of the blog posts and questions about gulp out of date.
See More
Top
Pro
Allows creating task dependencies
Any task can be set to have other tasks as dependencies. The dependencies are specified through piping streams, and tasks run concurrently if they do not block in dependencies.
See More
Top
Con
You need to know some limitations that are not very intuitive
There are some features in Gulp which may not be very intuitive, or that otherwise should have been the default features instead of having to implement them through arguments. For example, to keep the correct folder structure when you are copying a file, you have to add {base: "lib/"} as an argument.
See More
Top
Pro
It is possible to use projects that use streams without plugins
Since Gulp just uses streams at its core, you don't actually need a plugin wrapper to use a project that uses streams. If you use this approach, the you don't even have to worry about plugin maintenance at all, and get the bleeding edge updates as soon as they come out even if the plugin hasn't been updated. It also means if a project happens to not have a plugin, you don't need to write a new one, you can just use it as is.
See More
Top
Con
No incremental building
See More
Top
Pro
Streaming build system makes it easier to apply code transformations
In gulp, it's easy to pipe multiple steps together which you commonly need with build systems. For example, you may need to compile the javascript source files, then package them together, and then minify it. The streaming system makes this much easier. Additionally, it improves performance since all operations are done in memory (compared to I/O operations) and avoids the need of unnecessarily compiling files (compared to Grunt that has to compile all files even if just one has changed).
See More
Top
Con
Not suited for big and complex apps
Writing gulpfile for complex app which consists of many source types is very cumbersome and flawy process. You'll know when you want to move to webpack.
See More
Top
Pro
Chaining API that's simple and elegant
In Gulp, the transforms are performed through chains which makes it easier to understand the order of operations, and easier to modify it.
See More
Top
Pro
Concurrency allows for high-speed perfomance
Because streams in Gulp use pipes to establish dependency order, they are parallel by default without having to rely on plugins or hacks.
See More
Top
Pro
Minimizes disk operations for improved performance
Because Gulp is built using streams, it can store intermediate transformations in memory and defer writing to disk until the very end. This improves performance by not requiring expensive blocking disk operations for task dependencies.
See More
Top
Pro
The configuration file is easily readable
Gulp's configuration file is actually very readable because it's actual JavaScript instead of a large file of JSON objects. The entry barrier is very low for developers who have never used a task runner before and it's API is very simple, with only 4 methods.
See More
Top
Pro
Gulp modules are usable without Gulp
Because Gulp is built on top of the streaming API, you don't actually need gulp to use them. This could be helpful if you want to re-use those modules outside of gulp, possibly for testing, and using the same modules would be more consistent.
See More
Top
Pro
Gulp tasks run from terminal
See More
Specs
Task instruction style:
code
Hide
See All
Experiences
Get it
here
110
12
CFEngine
All
8
Experiences
Pros
5
Cons
2
Specs
Top
Pro
Fast
The cfengine agent is written in C and has some of the fastest execution times around.
See More
Top
Con
Lacking ready to use modules like puppet
Because there is no ECOsystem like the puppetforge to share code you have to figure things out for yourself, which is good if you want to learn things but bad when you need to get things done.
See More
Top
Pro
Scaleable
The decentralized architecture and innate speed allow cfengine to easily scale to thousands of nodes.
See More
Top
Con
Steep learning curve
It takes time and lots of practice to learn. Documentation is a bit lacking and if there are no examples to look to, it's that much more difficult to work with.
See More
Top
Pro
Secure
Very good security track record.
See More
Top
Pro
Helpful community
Although the community is not as big as puppets its very friendly and helpful to get thing's fixed or to point you in the right direction.
See More
Top
Pro
Works great on low power devices and appliances
Because CFEngine is written in C it's not only very fast and scaleable but it only uses a few MB of memory and it's easy on the CPU.
See More
Specs
Platforms:
Windows, Linux, Mac, Web
Technology:
C
Hide
See All
Experiences
Free / paid
11
2
ReSharper
All
8
Experiences
Pros
4
Cons
4
Top
Pro
Testing tools are handy
See More
Top
Con
Increases build (compile) time
Adds a considerable time onto building my Xamarin Forms project.
See More
Top
Pro
Ctrl + T is useful look of classes, enums, interfaces, etc
See More
Top
Con
It can mangle Visual Studio settings
Occasionally Visual Studio and Resharper settings can get into a tug of war. Features can disappear, for example, Intellisense can vanish, and you're often resetting options in hopes of getting yourself back to a working IDE.
See More
Top
Pro
Refactoring tools are powerful
Extract interfaces, generate constructors, rename namespaces, create equality statements, create ToString() summaries, etc.
See More
Top
Con
Licencing cost and T&Cs
The license T&Cs are somewhat harsh. The yearly license gets you a year's worth of updates, but you don't get major version release within that window. Instead, you're downgraded to the previous major version that you bought the license on.
See More
Top
Pro
Extremely useful when reading code written by others
ReSharper has a built-in "go to implementation" feature which takes you to the body of the implementation of a method from an interface. This makes it easy to read code written by other people simply by going over the interfaces and using this feature to quickly find the implementation of a particular method.
See More
Top
Con
Performance leaves something to be desired
The performance has been an issue for years, and many developers who have tried this tool gave up because of the performance hit running it. You may often find the tool to make Visual Studio slow down to almost an intolerable level.
See More
Hide
See All
Experiences
Paid
1
0
Topshelf
All
4
Experiences
Pros
4
Top
Pro
Works with Mono
Makes it possible to deploy services to Linux.
See More
Top
Pro
Small
Only ~200 Kb.
See More
Top
Pro
Service Recovery options
Including restart, reboot, or run program.
See More
Top
Pro
No need to use InstallUtil
See More
Hide
Free
1
0
Fody.Costura
All
4
Experiences
Pros
2
Cons
2
Top
Con
Newest version is complicated
Earlier versions were simple to use, but with the focus on .NET Core things have become complicated.
See More
Top
Pro
Compression
Compresses multiple dll's into one.
See More
Top
Con
Not a magic bullet
Complicated projects can be problematic.
See More
Top
Pro
Better than ILMerge
See More
Hide
Free
1
0
Built By the Slant team
Find the best product instantly.
4.7 star rating
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now - it's free
{}
undefined
url next
price drop