Autodesk Forge - Best training for transitioning from desktop .Net coding - autodesk-forge

I have background in Inventor/Revit API development only, and need to learn enough JS to be able to work comfortably with the Forge APIs. I'll be booking myself into a JS training course to learn general skills, but what topics/modules must I definitely cover to have a solid foundation for Forge API development. I'll be working with BOM data, viewers and possibly web configurators.
Many thanks for your help.

We're a .Net shop that recently implemented the Forge Viewer for a client with Inventor Files. We built our service on top of Azure Functions and utilized as much .Net C# code as possible, as it is where we have the most experience and comfortability. The provided .Net SDK is very helpful: https://www.nuget.org/packages/Autodesk.Forge/.
The only API that you can't do entirely in .Net is the Viewer API. However, to get started I was able to use boilerplate code from the provided examples and get the models loading. From there I had our web developers get involved to handle the more extensive javascript programming for me.
Feel free to bounce any questions you may have off of me. We've just finished going down this road and it is very rewarding, but somewhat challenging at times for us .Net developers.

You need the JavaScript, as you already know. Take some time to improve security and OAuth authentication workflow. This sample includes most of it.
In most cases, you'll need a hybrid desktop app that can connect to the cloud, the image below (from the blog post) shows a generic approach for the architecture using Autodesk Forge (or any other cloud APIs).

Related

Training and experimentation system for developing software interfacing with SAP ERP

I am trying to find a good place to start for a potentially SAP related project.
Suppose I wanted to develop stand-alone software that could connect with an SAP ERP (S4/HANA) system and analyze material management and accounting data. What resources would I need to accomplish that? Where could I get an SDK/the proper training for this? How would I get a system to experiment on? I've tried Googling this question but there doesn't seem to be clear authoritative information on this and what I find also seems to be mostly about SAP Business One, which is a different product.
Insights would be much appreciated!
Thank you in advance,
Joshua
You must use REST/OData to connect to ECC and Hana S/4.
Currently, SAP has around 800+ REST APIs for SD/MM/PP/FICO, and almost every quarter, new APIs are added to Hana S/4.
You can check all the available APIs # https://api.sap.com/package/SAPS4HANACloud/all
You can check out the demo below if you want to view an application that provides similar functionalities.
https://demo.inoerp.com:8090
Select Hana SandBox. This is a single app that provides similar functionalities for Oracle, SAP, Dynamics etc.
If you need an API that is not yet published. You can also create your own APIs using ABAP
Regarding technology - You can use anything Java(Springboot/ADF), C# .net, node.js. You will be fine as long as you stay away from the SAP technology stack (i.e., ABAP and UI5 :-))

Web Development with BIM 360 and Forge - Backend

Anybody recommend any backends or frameworks for Forge?
I'm seeing resources for Nodejs, PHP, .Net Core and others which are for the backend.
Are any of these any more convenient or dependable with Forge than the others?
I also know Python and thought Django would be another option but I don't see too many resources on the Python side of things.
Any perspectives on the tools (pro or con) would be great.
The more I understand the kinds of tech stacks, user projects and ways people use Forge to expand on BIM 360 and other APIs the more it can help me and the community get familiar with the service.
This relies completely on the excisting stack used by your company. Forge is a collection of API's accessible via endpoints.
Any library just abstracts the calls away in a accesible way. I've had moderate succes with the dotnet core Forge package, it works very well but you are giving away some strict typing.
If you dont wanna be bound by abstractions made by other people, create your own ! This will ultimately lead to the most lightweight solution since you are only creating what you need.
Cheers

SpringBoot-MySQL or ExpressJS-MongoDB which one is best for building rest API of online BookStore?

How are you all? I'm a beginner with the web programming. I am planning to develop my personal e-commerce Bookstore for myself. I've basic knowledge of ReactJS, ExpressJS, Spring MVC, MongoDB, and Mysql. I've already done some basic project in ReactJS, Spring MVC-MySQL and Express-MongoDB like Personal Diary, Cost management system, School management system etc. My future plan is to build a native mobile app for this Bookstore. I am a little bit confused to select the language and framework. I've some question and need experts opinion and suggestion like you.
ReactJS or NextJS(Server Side Rendering), which one will best for the frontend of this Bookstore?
Do I have any possibility to face any problem in SEO in the SPA?
Which Framework and Database will best for building the backend for better performance and lower hosting cost?
By using that backend service, can I use the same API endpoint to build a native app?
Any alternative technology to develop the bookstore?
Thank you all in advance.
-ReactJS has a vibrant and big community, so you would find plenty of support
-As far as i understand type of language for the front-end or SPA's shouldn't affect your SEO
-Java is rock solid, battle tested whereas NodeJs is new and a lot of experiments still going around it. Although it is claimed to be faster and easier to work with.
-Cost ? the cheapest would be PHP Apache shared hosting. Java and or JavaScript will both cost almost the same on platforms like heroku or digital ocean.
-Yes you should be able to build native apps using the same endpoints.
-With what you know do not look for alternate technologies. (What you have is more than enough)
-Moral of the story - If you are alone doing everything, JavaScript can save you a lot of time and effort. (Building web-apps, hybrid mobiles apps and server side APIs, all using JavaScript), however if you choose Java for server side, that knowledge may help you build a native android app and then you will need to learn Swift for a native IOS app and JavaScript anyway for web apps.
Everything boils down to what you are doing and how you are doing it.
All the best!

Is it possible to use BIM360 Team (formerly A360) commenting and markup tools in Forge?

BIM 360 Team has a nice built-in commenting tool that tracks issues. Is it possible if we can use the exact same feature inside Forge Viewer API? (my question may sound convoluted because I'm not a software engineer..) For any one who doesn't know the feature, please see below article. Any help is much appreciated.
https://blog.a360.autodesk.com/a360-release-enhanced-commenting-and-markup-tools/
Thanks!
Yes, it is definitely possible. The Autodesk development teams make use of Forge web services to implement A360 features. You have access to the same web services. You may even be able to peruse and analyse their code in the JavaScript debugger to see how they implement the client side user interface on top of the server side web service. In this case, the web service being used is the Issues API. More on that topic here:
http://thebuildingcoder.typepad.com/blog/2016/11/bim-360-docs-issues-forge-devday-and-accelerator.html#5

Mobile platform (android?) for developing apps (offline website)

Some years ago I dipped my foot in the water of developing WML websites and J2ME apps - and found it a rather unpleasant experience.
Hearing stories about developers making $$$ in their free time, writing trivial apps for iphone and android, and having a (top secret - don't tell anybody) idea for an app that everyone will immediately rush out and buy, I thought I'd have a look at the current state of play regarding development tools - however while there are no end of people pushing branded products, its often unclear what the programming language is like and what integration it provides with mobile devices.
I could develop most of the functionality as an online website - but for reasons of confidentiality and the ridiculous cost and low speed of mobile internet connections, it makes a lot of sense to deploy most of the functionality client-side.
Google gears like the ideal tool for implementing this - but Google have pulled the plug on the project.
The reasons I liked GG were:
html rendering (there will be a lot of content in the app)
a standard programming language (javascript)
integration with geolocation
If it had supported the accelerometer and bluetooth it would have been perfect!
Looking around at other approaches, I see that standard Android apps are developed using Java. While I'm not a big fan of the language, I could stretch a point in this case - but what about all the content rendering? Is there an off-the-shelf html renderer for android which I could then build my own handler for?
(if you're getting the impression that I'm something of a programming snob - you're probably right)
I had a quick look at Appcelerator - which has lots of pages telling me how wonderful it is - but I've yet to see any details of how it works, what the language looks like, how it integrates with hardware on the client, how to produced a packaged app for resale....
Any suggestions for a suitable toolkit/platform?
TIA
Yes google gears is deprecated but so what? As they clearly state they intend to continue with the product until a suitable replacement is found (AKA HTML5). Just be sure to write your application with a migration path to HTML5 in mind and you're sweet.
Besides, its open source... So if you need something added or changed the code is all there.
I am currently in the process of gambling my entire future on the google gears platform. Don’t forget that they currently use it in GMail so I don’t see them stopping at least basic continuing development on the platform.