I'm very new to using Qlik and at the moment I've only used the cloud via my browser. I would like to integrate python and Qlik such that I can run my code on data in the QlikCloud and visualize using Qlik. I am using a Mac, therefore I can not install the desktop version of Qlik to do the integration.
Do you have any suggestions on how to integrate python in Qlik while using a Mac?
Any suggestions are highly appreciated, I have not been able to find any complete answers yet.
Thank you!
Use Data Load Script
When I first started Qlik, I had a very similar situation. My goal was to manipulate data to do calculations in Python, then basically import that into Qlik. What I ended up learning and realizing is that there's a 90% chance what you're trying to calculate outside of Qlik can be done in Qlik's data load script.
Get started with the Qlik data script: https://help.qlik.com/en-US/sense/September2019/Subsystems/Hub/Content/Sense_Hub/Scripting/introduction-data-modeling.htm
In my opinion and experience, Qlik Community Forum is more active than Stack Overflow. I highly recommend checking it out for help: https://community.qlik.com/
But If You Still Need External Calculation...
That said, if you do have crazy calculations and math to do and/or need to use an external "thing", Qlik has a repo for a server-side extension. Repo at: https://github.com/qlik-oss/server-side-extension (Docs and instructions in the link)
It has extensions for Java, C++, C#, Go, and Python.
I highly recommend this Server Side Extension developed by Nabeel which you can run in a docker on your machine. https://github.com/nabeel-oz/qlik-py-tools
Related
I am trying to implement remote desktop server using libvnc, I have downloaded the libvnc and build the library and able to run sample code. And in the example code I can see the function rfbGetScreen http://libvnc.github.io/doc/html/libvncserver_doc.html which display plain background not the desktop. Does that mean I have to find some other library to get desktop and share using vnc, or vnc has some inbuilt function to do this.
it does seem so. You need to put into rfbScreenInfoPtr::framebuffer screenshots. I've never saw any inbuilt functions yet. May be I've poorly searched.
Try SDL2. May be it will help.
I've been digging into the IBM Cloud Services, Watson and NLP. Just installed the CLI and tried with Node SDKs, and a starterkit, unfortunately I did not succeed by trying to get a sample code by default to understand how it works.
After that, I did some research get a better open minded approach to how actually I could use some of their free services to get started, but there's actually to vague information, even though the IBM Docs are pretty extensive and well written, it can get very confusing.
I would appreciate any open source repo, or working/live project that you are willing to share to make a better image in my mind about it IBM cloud services.
A few days ago I wrote a sample application using the Natural Language Understanding service. Check the source code here: https://github.com/watson-developer-cloud/natural-language-understanding-code-pattern
The README has instructions on how to get the apikey which is the way you will use to authenticate your API calls.
Since you are using Node.js you can start with the sample above and also look at this page: https://cloud.ibm.com/apidocs/natural-language-understanding/natural-language-understanding?code=node which includes examples for all the features in Node.js using the node-sdk: https://github.com/watson-developer-cloud/node-sdk/
Right now I can create a simple Ms.Excel automation program using Python3 but I want to others can also use my program.
What kind of features or packages that I could learn to make others able to use my program? Such as turn my program into portable software or web application?
You need to look into packaging your python application with all its dependedncies. Pyinstaller is a good way to go you can find a very good tutorial here.
I am trying to take existing python code and run it as a web application. I am not entirely sure on how to do this, I was thinking about connecting the code to flask or django, but have no idea where to start.
Amrit, what you are asking is possible, but you should consider reading the documentations of both flask and django, aswell as doing some research to try to understand which would serve you better. You will learn a lot from chasing those answers on your own.
If you want to start with django: https://docs.djangoproject.com/en/2.2/intro/tutorial01/
If you want to start with flask:
http://flask.pocoo.org/docs/1.0/quickstart/
I am about to begin the process of creating a Windows-based utility app to manage localized expressjs server that will utilize a graphical Windows based application to manage some of the features of this service
however before I begin I would like to speak with the community to try to get some advice Advice on how to properly protect the code since it will all be node JS bees I need to make sure it’s protected and some of my initial reading online seems to show that using electron by not be the most Safeway saw that being said how are you guys handling this to keep node JS these code protected with electron and in my case On windows environment
Any advice would be greatly appreciated much thanks
tl;dr You can and it is not worth the effort. Just pack your source into an asar file, it keeps most people away from it.
Long answer:
Use the asar option when building your app.
Obfuscate the code with an uglifier.
Use WASM
Language bindings to grab your data from a compiled format
neonjs for Rust
edge-js for C#
N-API, NAN for C/C++
Otherwise, your files are scripts, all these steps only slow down an attacker (tactic of many defenses), but they will not prevent them from accessing them. The devTools are fairly easy to get opened and people will be able to read the code in some way, shape or form. And if someone gets your obfuscated code, it is simple to reconstruct what is happening (see here for reference: https://www.youtube.com/watch?v=y6Uzinz3DRU)
If you want to protect yourself from code manipulation, there are better ways to do it, like Hashing, Context Isolation etc. Electron has a whole chapter on the matter.
https://github.com/electron/electron/blob/master/docs/tutorial/security.md
Small Update (2020):
I've seen this library a few weeks ago and thought it would show a nice way to further obfuscate the code from being read by external parties
https://github.com/OsamaAbbas/bytenode
The basic idea is to compile the JS into bytecode for V8. This works very well for Electron and is definitely a hurdle not everyone will get over. But, this will not protect your code from being turned back into readable JS. It's just another layer of protection to make it more difficult.