The future of Engineering: Will we all become software developers?

VIKTOR

by VIKTOR

Bouwen met Staal is a branch organisation representing the Dutch steel construction industry. They mainly organise events related to steel and the application of steel in the construction industry. Last year, Bouwen met Staal launched a webinar series called “Digital Innovation”. In this webinar series the state of art and implementation of digital innovation in the construction industry is discussed. As a part of these series, our colleague Robert-Jan Lub talked about the role of software development in the future of engineering. With a strong background in visual programming and tools as Dynamo, Grasshopper, and Python, Robert-Jan is involved in application development projects for all kinds of parametric design tools. Together with Rayaan Ajouz, design automation specialist at Bouwen met Staal, he discusses how engineers can benefit from developing their own software and designing their own professional applications.
Download the white paper and get INSPIRED

Collaborative parametric design models allow you to work together for better solutions

Embracing new technologies

All kinds of companies in all kinds of sectors are increasingly using new technologies to work more efficient on products and projects. It is important to highlight what these technologies are and how they can benefit business to keep inspiring people to use these findings and improve their industry. As part of this inspiration process, Robert-Jan was invited to talk about these new innovations. Sitting in front a background picture of Back to the Future, he takes us on a time travel to both the past and the future of technology in the Engineering and Construction industry.

Software evolution in the E&C industry

“Back in the ’50s” Robert-Jan explains, “engineers used to work in big rooms, with big tables, drawing their designs on big pieces of paper, all by hand. Those people could probably not imagine that the tools they were using back then were all going to be replaced by technology at some point”.

Around the 1950’s was also the time that the first Computer Aided Design (CAD) was released, which embarked the start of it all. At the time, it was not immediately successful. It was just a big machine that literally replaced real pen and paper with a digital pen and computer screen, not very user-friendly. It was not until the 1980’s that the Autodesk came with the first AutoCAD program. That is when computers finally took over the drawing process, which then led to the next innovation in design as well: 3D modelling. This took about 20 years to get successful, but once it was, that is when the implication of BIM (Building Information Modelling) came around, which allowed for more analysis and the addition of extra data to models.

Robert-Jan remembers a situation from two years ago when he was involved in a project where they started arguing about whether they should use 3D models or not. “That exact situation provides a good example of how slow this process of embracing new technologies goes, especially in the Engineering and Construction industry. Not even by now, the use of 3D models is truly embraced.”

Parametric design as part of the evolution

This gets us to another innovation that is a very hot topic nowadays, which is parametric design. According to Robert-Jan, a lot of people see this as a huge evolution in design methods and even call it the holy grail. Robert-Jan himself however does not see it that way. He rather sees parametric design as part of the visual programming evolution that already started back in the 1980's.

Another way of drawing

Parametric design is actually just another way of drawing: It is drawing with nodes. Of course, this gives you more freedom, but in the end, we are still creating the same end-product as before: Drawings. However, what I do think is very interesting about this development is that in comparison with a 3D model you get to put some knowledge within a parametric model. When you shift a wall in a 3D model else nothing happens. When you do this in a parametric design model, everything linked starts to shift as well.”, Robert-Jan explains. “Unfortunately, parametric design tools still lack accessibility and need democratization of knowledge. It is hard to communicate what they are and expose what they can do to the rest of the world. Most of the time, these models are stand-alone documents on someone’s machine, and the only end-user is also the one who created it.”

Friendly visual programming

Starting with programming is still scary to a lot of people due to the weird syntax, bright colours, and other stuff that does not make any sense to them at all. It is a big step to start programming when you possess zero knowledge about or experience with coding. However, you don’t have to go from zero to hundred all at once. An interesting way to introduce programming principles to for example an engineer is by starting with visual programming instead.

“With visual programming, everything looks a lot more friendly and accessible. You have this little block that is a function, you have an input and an output, and you put those together and create something.” – Robert-Jan

From visual programming to actual coding

“Visual programming makes the threshold to learning how to code much lower. Visual programming contains the same principles found in conventional programming, but you can obtain a better understanding about what you are doing since everything is visualised now. To me, this is fundamental to increase people's confidence, which is needed to take the step to much more abstract conventional programming. Right now, I have been using C#, Python, and visual programming. The complexity of the computational process determines which one I choose. In some cases you come to face the limitations of visual programming. That is when conventional programming becomes a good alternative.” – Rayaan Ajouz, Design Automation Specialist at Bouwen met Staal.

The rise of custom developed software tools

Companies and people themselves are increasingly using all kinds of programming tools to start developing their own their own custom software tools to help meet their unique requirements. But what kind of tools are currently the most popular? And for whom do people develop custom software tools? How much time do they spend doing this? These are the questions that Robert-Jan asks the audience to get an accurate image of the current situation regarding the software developer community.

From a survey at the start of the webinar it was concluded that:

  • A significant part of the audience was part of the structural engineering sector.
  • These people indicated to use platforms as Dynamo, Excel, and Python most often to develop their own software tools.
  • Most people developed custom software tools not for themselves, but for their colleagues.
  • And they spend half a week up to a week per month doing so.

parametric design engineering construction automation application

A new generation in engineering software

The bars are shifting

03_01.png

This picture shows the levels of knowledge between technology companies (left) and engineering companies (right) in the 1950’s. Back then, technology companies did not have a lot of knowledge. That was until they adopted Computer Aided Design (CAD) and started using this to get some better understandings in the field of engineering. Although CAD helped technology companies gain knowledge, it made engineering companies lose some due to the fact that they started using computers, which now took over some of the work. Then, technology companies started implementing BIM and 3D models and gained even more knowledge. Slowly, the knowledge of engineering companies was getting replaced more and more by technological innovations, making the bars shift once again.

03_GIF.gif

“If you are a structural engineer right now, you might find this an ominous future perspective for engineering companies. However, this is not how I see the future.”, Robert-Jan explains. “I see a future where the bars are actually moving more towards each other. Engineering companies have a lot of people that only just now are getting introduced to the concept of visual programming and are beginning to see the potential of coding. They are doing it for all kinds of different reasons: To improve internal work processes, to be able to create a design quicker and more efficiently, or to explore the terrain of improving their business model, for example by offering micro services of applications to the world.”

A better future starts with yourself

So, if you are an engineer and this scares you, Robert-Jan has some advice for you: “Don’t be like those engineers from the ‘50s that are stuck in their old design methods. Start improving your skills by using these new technologies that are now around, if you haven’t already. Set a deadline for yourself: In five years I will have written my first Python script and started replacing my technologies!”

“The world is changing, and technology is starting to play a far more profound role within the engineering industry. It is up to us to determine how far the blue line will progress and the green line will decline. So, let’s get busy!” – Robert-Jan

Our way is already paved

Compared to other industries, the Engineering and Construction industry seems to be lagging on technological developments. The Aviation and Aerospace industry are for example very high-tech. They were front-runners from the beginning on. You can't compete with that.

“In the Construction industry, we are very slow and sceptical about the adoption of new technologies. In many projects there is a lot of pressure regarding time and cost, which means there isn’t much room for innovation left. Therefore, we are not the front-runners.”, says Robert-Jan. “However, we are not doing too bad either. Other industries aren’t doing worse, but we shouldn’t compare. It could actually be beneficial that we are not the first ones that are doing all this developing. The others have been blowing money and resources on stuff that did not work as well as they hoped it would and we are now getting the stuff that does work from them!”

Democratization of knowledge through web applications

Why web applications are gaining popularity

This timeline shows where we want to head with software development. In the 1950’s was when the digitising process started. The goal is to fully democratize all knowledge to the point where anyone can use it. Currently, most companies are in the optimising stage: They are doing optimizations, but having difficulties distributing their knowledge. The capturing of knowledge into assets and distributing it this way is a logical next step.

For this, you must move to the internet by developing web applications that allow you to better capture and distribute knowledge. Web applications are very accessible, since you don't have to install any software or whatsoever on your device, you simply have to log in on the online platform, which can be done from anywhere you want if you have an internet connection. Additionally, a web application ensures that you are always working with the latest version and that all changes are tracked neatly as well.

01.png

App development is no Rocket Science

Creating a web application is easier said than done when you are part of an engineering company that doesn’t know anything about programming languages, setting up services, cyber security, version control, or back-end developing. Luckily, all of this is not necessary. There are a lot of software development platforms out there to help you along the way. In a lot of other industries, people (we call them 'citizen developers') are already using these platforms to develop their own digital tools and the benefit of that is really noticeable!

“A citizen developer is not a true software developer. They haven’t studied Computer Science or something alike but thanks to these online platforms they are enabled to share their knowledge with other people and easily create their own applications.”, Explains Robert-Jan. “Even in the construction industry, where a lot of people are not that 'tech-savvy' at all, a lot more citizen developers are popping op!”

Build your own application with a development platform

Stop reinventing the wheel

Lately, a lot of different application development platforms are emerging, that are here to help you build your own applications. Each one of them has its pros and cons, and there is always a good reason to choose one over the other. Luckily, there is still so much to do that there is more than enough room for all of them.

VIKTOR is also one of these platforms. What are we specialized at? We help you reduce workload by automating repetitive tasks. Why try to reinvent the wheel when you can use a platform that helps you design all the tools you need? See how you in only three steps you can create awesome applications using just a few lines of Python code in this video:

Build company-wide asset

We provide a Python software development kit, which basically means that you can create web applications very easily by writing Python code, instead of HTML, JavaScript, back-end, and all of that. You can also easily integrate already existing models from other tools if you like to. Once your application is ready, you just have to deploy it in the cloud and work on it together with whomever you want.

Building a company-wide asset from scratch will cost a lot of time and money. Using a software development platform like VIKTOR gives you a head start since you have access to standard components, version control, user management and whatnot. All you have to bring is your domain knowledge and get it out there by sharing with colleagues and clients!

Easily integrate with Python

There are a lot of open-source packages that can be implemented into VIKTOR. Python is one of those, and it’s a great tool as well. What Robert-Jan really likes about Python is that there is a big community with a lot of support. “If you have a question about something, someone else probably already asked the same and the answer is somewhere out there.”

“Programming with VIKTOR and Python is not scary at all. You are really going to enjoy it! Automate the boring and engineer the awesome, that is what it is all about. It allows you to create awesome tools that let you develop awesome things for the world.” – Robert-Jan

So, what will the future look like?

“There are so many of these application development platforms, maybe one day they will work together to integrate their features as well.” - Robert-Jan

Robert-Jan is on the application team and they can help you with developing your own application if you don’t know Python or your company doesn’t have people that understand how to develop their own tools. However, they don’t want to develop the tool for you. The development team wants you to develop your own tool and they can help you with that along the way. Because if everyone develops their own tools, the sharing of knowledge between companies can be boosted.

New ways to share knowledge

The Digital Engineering Community (DEC) is a combination of a few of the biggest construction companies. They are jointly working together to build application on the VIKTOR platform. They are all co-owners of the code that has been created and share all knowledge within their community. What would be great is if this could be opened further and more people get involved!

Want to watch the whole webinar? Go to the YouTube video here!

https://www.youtube.com/watch?v=k6NPcSGPuHE&list=PL4Yo2I-oZ8-5gdW_0hwUbxW7-bMkiRidQ&index=7&ab_channel=BouwenmetStaal

Share

Related Blog Posts

Save time by automating PLAXIS in the Cloud

Read more
Parametric football stadium Grasshopper

Sample app parametric football stadium with Grasshopper

Read more
Parametric building design with Dynamo

Sample app Dynamo

Read more