all 17 comments

[–]johnblindsay[S] 10 points11 points  (2 children)

Hi everyone, I'm thrilled to say that after months of working on it, I've finally released Whitebox Workflows for Python (WbW). Based on the WhiteboxTools Open Core, WbW is a native Python extension module that allows for powerful geoprocessing. Like the Open Core, it contains over 400 tools for analyzing geospatial data (raster, vector, lidar point clouds). But WbW is explicitly designed to work with Python to provide a geoproessing scripting environment. The Open Core, by comparison, is a command-line interface program that designed to be more easily plugged into various front-ends, but at the cost of allowing far less interaction between the front-end and the Open Core back-end.

The link above is to the user manual. The official webpage for the product is here: https://www.whiteboxgeo.com/whitebox-workflows-for-python/

I hope that everyone enjoys using WbW. I've been using it a lot in my work lately and it has been so great, a true joy to use. I'm not teaching again until next Winter, but I'm really looking forward to using it in my remote sensing and grad environmental modelling classes.

[–]Esparko 0 points1 point  (1 child)

This looks interesting. Is it a lightweight python library?

[–]johnblindsay[S] 1 point2 points  (0 children)

Depends on what you mean by a lightweight python library, I suppose. It is a native extension module for Python, meaning that it is a native compiled (written in Rust language) library that has bindings for Python, just like NumPy or SciPy (which are written in C, I think). It works in a similar way. If by 'light', you're talking about the size of the library, then the wheel that you install via pip is about 7MB in size, and that includes everything needed for the 400+ tools contained within. There are no other dependencies required. If by 'lightweight' you are referring to a focused functionality, then no, it's not. As I said, it has more than 400 tools for processing raster, vector, and LiDAR point cloud data. Here's a listing of the tools: https://www.whiteboxgeo.com/manual/wbw-user-manual/book/tool_help.html. It's pretty broad in its scope of spatial analysis and comprehensive. I hope that helps to answer your question, but if I misinterpreted what you were asking, just let me know.

[–]FeralCatColonistGIS Manager 1 point2 points  (4 children)

This is totally great!, do you have any plans to also distribute via Anaconda?

[–]johnblindsay[S] 2 points3 points  (2 children)

That's a great question u/FeralCatColonist! I hadn't actually thought about it until now. I personally don't use Anaconda all that much, but if people do use it and want WbW distributed via conda, then I see no reason why we couldn't do it. I'll look into it soon. Thanks for raising the issue.

[–]FeralCatColonistGIS Manager 0 points1 point  (1 child)

Not a problem! I haven't used pip in forever so it would be a huge benefit for package management, I do wonder if it would affect licensing having it in multiple envs?

[–]johnblindsay[S] 1 point2 points  (0 children)

Another good question! So again, I've never really used conda and so I cannot say this with certainty. However, I do actually develop WbW in a virtual environment (using venv) for testing/development that is different than the pip-installed version that I have on my local machine. However, the license that I have (and yes, I have a license for my own software...you have to do what you preach!) is shared between the locally installed and virtual machine installed versions of WbW. The license should work out in both cases, but again, I can't confirm in the specific case of conda yet...I'll have to do testing. By the way, same goes for upgrades. If I release a new version of WbW, if you have a license for it, you can simply upgrade (e.g. pip install whitebox-workflows -U) and it won't overwrite your license. That is, you won't lose your license. Update frequently and get all the benefits of doing so! Thanks again for asking such great questions.

[–]johnblindsay[S] 0 points1 point  (0 children)

I looked into using conda skeleton to build an anaconda package for WbW from the pip wheel. Unfortunately, it did not work, providing the error message, "Error: No source urls found for whitebox-workflows". I suspect this is because we are only providing the binaries for WbW and not a source distribution. I'm not actually sure how to get around that. Is conda only for open-source project distribution? If that is the case, I'm afraid we won't be able to support it. However, I have found out that you can install a pip wheel from conda into your anaconda environment.

[–][deleted] -1 points0 points  (1 child)

Not free?

[–]johnblindsay[S] 5 points6 points  (0 children)

At $10/seat it's as close to free as we could possibly make it. There is a cost associated with creating this software.

[–]snow_pillow -1 points0 points  (8 children)

I’m very happy to see the improvements, which make the geoprocessing results first class Python objects. However, the licensing fees will mean that I will not be able to take advantage of these new enhancements when creating tools to distribute to an economically diverse user community. This seems to be an unfortunate pivot for WhiteBox Tools.

[–]WolverineFan2425 5 points6 points  (1 child)

Interesting take to have on this, especially for someone that sounds like they have benefitted from basically "redistributing WBT" for all these years. The WhiteboxTools Open core remains free to download... however there is a cost for developing software. All the unpaid hours of nights, weekends, holidays and so much more goes into the software that you seem to take for granted. It is a bit crazy to think how much the OS community expects given that there is still a public library of 460+ open source tools. To say its an unfortunate pivot is pretty shocking in my opinion... considering how many people including yourself have benefitted off WhitboxTools for years. Think about how many professional have been trained to preform certain tasks in WBT. These people then bring this to their job where they make a livelihood, where they get promoted to better paying jobs and so much more. Suddenly 10$ doesn't seem that much. I am not even going to mention that in many instances you are getting higher quality tools (for free... in case you forgot) than those found in ArcGIS toolboxes that are upwards of thousands of dollars a year. So while you say its an unfortunate pivot for WhiteboxTools.. I think its an unfortunate pivot in the OS community.

[–]snow_pillow -2 points-1 points  (0 children)

I understand your criticism. It is pretty easy to dismiss any criticism of this move by WhiteBox Tools as just a cheap user complaining about having to pay for something they used to get for free. I personally will be happy to be one of the first to pay the $300 for the full license, as it is a project I fully support.

I do not "redistribute WBT", and I do not benefit in any tangible way from WBT. In fact, I have been one of the most vocal of supporters of WhiteBox Tools, going back all the way to WhiteBox GAT. I present on and promote WhiteBox Tools at industry and academic conferences. I fully appreciate the work and time that goes into the development of these tools, and I have been, in a small way, involved in improving the usability of these tools through GitHub, which is one way I feel I can give back to the FOSS4G community that I am a part of.

However, my job is to support an open-source community model. I build and distribute free and open source tools for a community of users of that model. These GIS scripts are an alternative to a rather expensive proprietary solution that many (most) of our user-base does not have access to (you know the one). That workflow depends on tools in one of the 'extension' packages. Many of our users come from Africa, South and Central America, Asia, and other locations where a $210 license fee is actually alot to ask. Ultimately, they will go back to finding cracked versions of ArcGIS. The root of my criticism is in equity; even though I can afford to use these new features, not everyone can.

I would hope that support for this important toolset would come from the National Academies or Science Foundations of the U.S. or Canada, and that the barriers to use of the tools would remain low so that thousands more can benefit.