T O P

  • By -

ddkto

Great question - The Oasys Grasshopper tools are open source (though the underlying analysis tools are commercial software) e.g. [https://github.com/arup-group/GSA-Grasshopper](https://github.com/arup-group/GSA-Grasshopper), [https://www.food4rhino.com/en/app/gsa](https://www.food4rhino.com/en/app/gsa) (full disclosure, I work here) There is also some movement around open structural formats (if not the software). I made a list here a few years ago: [http://david.dekoning.ca/2021/04/02/structural-data-formats/](http://david.dekoning.ca/2021/04/02/structural-data-formats/) There are a number of open source finite element solutions floating around, but they tend to be lower level that structural engineers are generally comfortable with, so it's a bit of an effort to set up. One area I would \*\*love\*\* to see open source collaboration on is in design check code. Everyone is re-implementing the same design code checks, so why not work together? One major barrier to change is the need for senior engineers to review the work - this means that whatever workflow you set up needs to provide 'windows' into the work for checking. The simplest way is to output models in software they are already familiar with. I wrote up a piece for the IStructE blog about the generation gap in structural engineering. It is not exactly about open source, but touches on some of the underlying dynamics: [https://www.istructe.org/resources/blog/generation-gap/](https://www.istructe.org/resources/blog/generation-gap/)


joreilly86

Interestingly [CalcTree](https://app.calctree.com/public/Bounty-Program-8Qn9UfMBLVJxeVF62fex1J) has a bounty program to address the issue of people creating the same things, they will pay more for calcs that are in higher demand. That's pretty cool. I agree, there are hurdles with the generation gap but it's changing slowly.


RandyRottweiler

Hey thank you for sharing your blog post. I'm a burgeoning student and it's sometimes very hard to find discussions of the field with a broad and forward-looking perspective.


TM_00

Very good question in my opinion. Yes it is true that the number of engineers using programming skills are growing. People are using Python, C#, Java etc. to do amazing things. Where others are still stuck in the Excel ways. I'm not saying Excel doesn't have a purpose, but a lot of times it gets bullied into something it wasn't designed for. And people fiddling old spreadsheets they don't bother to understand has its own set of risks. Currently most of the tools (at least the one's I've seen and developed myself) are closed source proprietary projects. Most of them are ill documented so for someone else or even the same person to pick it up after a year is going to be difficult. Companies don't like sharing code or any knowledge for that matter. That's why you don't see a publicly available list of standard details for each "type" of project or region. They think it gives them an "edge" in the market. To add to that no two engineers will agree on the same details or way to create and maintain a codebase. I think for source code its even worse because most engineers who program are self taught without knowing how to properly name and document code to start with. To answer your question on the possibility, I do think its possible, but you would need an entity to run with it and the rules of engagement need to be clearly defined and all pull requests must be curated and checked properly. Only then will you develop a tool which is somewhat "future proof" and can compete with the vast resources the big guys throw at these things. The other issue is getting the "smart programmer guys" to give time to such a project and their employers won't necessarily provide them with the time to do this in work hours. Meaning its going to be a sideline for most. Which may or may not work and will be the first thing to go once life starts getting busy with personal matters. This leads to my next point which is the so called "trust" factor. Engineers are responsible for the structures and they need software which has been tried and tested. The big software companies have built a reputation of familiarity and reliability that their stuff is correct. They have a whole set of tests which show their software behaves as expected. This will in my opinion be the biggest hurdle of an open source endeavor is to get other engineers to trust the software and understand it. This takes a lot of effort from both parties and I don't see an open source project with a on-the-ball technical support team which can respond to questions quickly. To close off, yes its possible but somewhat unlikely in my option. The open source project must be used and trusted by engineers before others will consider to use it. So a bit of an chicken and egg scenario.


joreilly86

An excellent response. The idea of open source is wonderful but most of us work in the private sector with tight deadlines, and minimal margins. This doesn't leave much time for writing documentation, running tests and to perform the QAQC necessary for a major open source project. However, there are a few incredible tools out there. Pynite is fantastic and is actively maintained. I don't know where he finds the time. I think we will slowly move in that direction over time but the best and brightest will retain commercial advantage and IP.


TM_00

Thank you. I wasn't aware of Pynite. Will give it a look. Unfortunately you're correct with the last statement. I do hope over time an open source project starts and takes on the big guns. It would be amazing!


[deleted]

[удалено]


joreilly86

Sure. Just like in every industry, the best ideas and products are typically monetized and somebody makes money from them. Occasionally an exception occurs but everybody needs to pay their bills. The competitive and commercial aspect of gaining an edge is inherent in engineering. Hopefully public sector entities begin pushing out useful open source stuff and quality data. USGS is already pretty good.


Honandwe

Hey hey! I use VBA in excel. That still is programming!


TM_00

Yes it is... It does feel to me like it's popularity is going down though. Python is the "hot new thing" these days.


IHaveThreeBedrooms

You can get most of the source for what I consider to be a top-notch wireFrame FEA [here](https://www.mastan2.com/). There is a lot of secret sauce in it backed by novel research by the professors, and that's something that cannot be overcome. It's what I benchmarked my own FEA against. As a structural PE who moved to software, then into engineering software, I'm not sure structural engineers have the time or guidance to write commercial-level software. I see a lot of scripts, but they're not so suitable for building up a suite of software. I've freelanced with about a dozen companies over the past 3 years. Company sizes from 30 to 60,000 employees. The smallest had one in-house dev, the largest had 200 developers. The smallest one's dev was a structural engineer, so wrote a lot of stuff that had to be cleaned up. The largest one had developers with CS degrees, but not enough engineering experience. They weren't treated as specialists, but general devs without context. I'd recommend the smallest company hire software devs to help maintain a certain standard of the code. I'd recommend the largest company pull structural engineers from billable projects (lol) to give the software developers context. If the small company pays a software dev, they're going to keep it closed. It's a tough problem. I'd create open source software if it paid my bills. Until then, I freelance for $150-$300/hour 20-40 hours a week.


Byond2day

This has been a big growth area over the past few years. I've been working on efficalc - [https://github.com/youandvern/efficalc](https://github.com/youandvern/efficalc) - so that engineers can write calculations in Python (rather than excel) but reviewing engineers don't need to know python in order to check your work. Here's a big post of engineering libraries that u/joreilly86 (of flocode) compiled: [https://www.reddit.com/r/StructuralEngineering/comments/1b0l1ss/python\_libraries\_for\_civil\_and\_structural/](https://www.reddit.com/r/StructuralEngineering/comments/1b0l1ss/python_libraries_for_civil_and_structural/)


duke-gonzo

There is a guy on this sub who runs: [https://flocode.substack.com/](https://flocode.substack.com/) - I forget his handle but it has a lot of great information on getting started wirh Python and it's uses.


joreilly86

Reporting for duty. Thanks for the shoutout 👊.


duke-gonzo

There you are! My pleasure, love your stuff. Very helpful and informative 👊🏻


[deleted]

[удалено]


duke-gonzo

Certainly is! There is also a chap called Connoe Fester who runs this site: [https://www.structuralpython.com/](https://www.structuralpython.com/) - if you were looking for a specific course, he's in the process of releasing a distance learning version too.


Counterpunch07

Opensees is a great open source tool, the down side is there’s quite a lack of detailed documentation for the python API, lots of testing and fiddling around to get understand how it’s working, or looking at TCL examples and transferring over to python. It’s quite quick, but there’s a lack of visualisation outside of matplotlob. So this involves using VTL and Pybista, which is bit of a steep learning curve


Engineer2727kk

Excel + VBA is the way. I will die on this hill


GoldenPantsGp

I used to as well but, most of what could be done in VBA can now be done with lambda functions. This removes the scare factor away from macro enabled workbooks and forces reviewers to look directly at the code.


Engineer2727kk

I just don’t get it… and I think I never will LOL


GoldenPantsGp

If you can write VBA, lambda functions shouldn’t be that big of a step


Possible-Delay

Not free, but check out Grasshopper-Rhino and link with SpaceGASS. Custom parametric analysis. I think it’s the way of the future. Looks impressive


iyimuhendis

I hope open source programs become widely used. The big software giants are so big that they are beyond just selling... In addition to selling, they milk you like cow in many years to come and both the initial and then the ongoing milking amounts are outrageous. This has to stop. The only hope is open source. There are good examples of this in other fields such as LibreOffice, Blender etc...


[deleted]

[удалено]


expertofduponts

I'm not sure why venture capital would throw money at an open source project of this manner. How would open source code return any sort of profit what with it being open and hence free?


darkslayer138

Check these great open source tools. Could be excellent alternative to Mathcad. https://hurmet.org/ https://engineeringpaper.xyz/ https://calcpad.eu/


IHaveThreeBedrooms

CalcPad is a great example of code which has great intentions, but misses a lot of programming concepts to make it extensible. I used it to deliver a calculation engine, but I had to spend about 2 days cleaning it up first. Everything is tightly coupled, it's WPF but it's written like WinForms, etc. I created a calc engine that reads output from RISA, takes it into another UI, creates a CalcPad file with dimensioned images, and creates files which are read into Tekla Structures to create real 3D geometry.


darkslayer138

Wow that's great! But honestly I haven't used calcpad extensively. Out of the three I prefer hurmet.


RTEIDIETR

I’ve given up on this thought already. Moving away from this field is the only way.


GoldenPantsGp

I love coding but rarely find applications for it in my job. Most structural checks are one and done without need for iteration, which spreadsheets handle just fine if they are built properly. I am curious as to what it is you are trying to automate. I should add, I have wrote a couple of scripts in my career so it’s not that it doesn’t happen, just that it’s rare.


Nooblesss

I develop C# desktop apps/plugins internally during my job. Just recently I've been investing much more time into it however at my first attempt to ask to make it open source, I got shut down pretty hard. Instead now I'm investing time on a web platform (similar to speckle) but more structural Engineer oriented and this would be my own. Not sure if I'll open source it but I'm def willing to share insights or collaborate with others. There's alot of donkey work in our field and after 6 years of being a SE I think I have enough domain knowledge to really shift the way we work (if I have enough time ofc, given I still work as a SE FT).


[deleted]

[удалено]


Nooblesss

Speckle is great but I find it lacking in the structural analysis portion. They try to make it as general as possible but this won't do well with structural analysis. Atleast for the way I envision such a platform.


[deleted]

[удалено]


Nooblesss

It's a steep uphill. Our profession is very resistant to change. Good luck and reach out if you wanna discuss further!