Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
We are a startup based in India with an application built on Qt Quick, which is deployed in HD touch devices in retail stores. The application runs more like a web-app rather than a desktop app. But we have serious hiring problems and fear of future while using Qt Quick. Hence we need to know if to go ahead with the same or shift to a more widely adopted stack like HTML, CSS and JS.
The data is served using a locally deployed web server(syncs with cloud from time to time) which serves data using the recommendation and search engine. We use Qt Quick for both getting data using AJAX and the UI is made using QML's elements, Touch Events, Animations, State - Transitions. We are left with very basic operations in C++ which read configuration files, etc.
We had developed a prototype 2 years ago in HTML5 using Sencha and were not very happy with the performance and touch behaviour, hence we picked Qt. But because it is much harder to develop 'beautiful' looking apps in a fast development cycle on Qt, stylesheet'ing is extremely naive on Qt, I want to reconsider if to move from Qt back to HTML5 or think of another framework. You can safely assume we want to deploy across Windows and Android.
Both tools can help developers to have high-quality graphical UI in embedded and mobile space. It all depends on your needs to choose one for developing your application. I think that QML/C++ is better in terms of fluidity, quick iterations, consistency and scalable data visualization.
HTML5 has some difficulties:
Implementing rich UI’s with good performance
Mixing with native technologies
Finding developers with knowledge of HTML5 & CSS3 in resource-limited environments
You can also use HTML5 in Qt-based applications. So i think having hybrid applications leveraging the best of native and Web depending on the use case seems a good idea.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
Has anyone tried OpenFin? What are its pros and cons?
In terms of Development effort, stability, development support, maintenance, performance, memory footprint.
I am part of the OpenFin Dev team and I have to say in terms of Development effort we are always improving our development tools, and have a large collection of example code that tackles some of the popular scenarios, we also have a yeoman generator that makes it super easy to get started: https://github.com/openfin/generator-openfin
In regards of stability, we ship a mayor release twice a year and you can chose to stick to a particular version at an application level. each deployed application can choose a particular version and it only takes a change in the server to have the clients updated on next app start.
Development support is highly active and we will work with you to resolve any issues. as I mentioned above we have created example code for popular scenarios.
Maintenance, would be similar to any web application without the need to support multiple browser versions, additionally we provide API's to create Windows installers for any OpenFin application.
Performance, you get all of the benefits of the V8 engine for JavaScript and the Blink layout engine. you also get API calls to monitor CPU and Memory.
Memory footprint, The OpenFin Runtime will create processes for each application and has several internal processes of its own, the actual footprint depends on what features you are using.
You can see a feature comparison between OpenFin and other solutions here https://openfin.co/runtime/compare/
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
i'm working on a project - an office information management system,
the database is a MySQL database, and now i have to build the front end GUI.
already I drawed a model of a screen example with PP (from total of 15 in my system),
my question is how to build the GUI? which tool/language is simple and easy to learn?
i thought about C++ but i no experience with it...
the information have to be retrived from the DB, read, write, queries, and so on.
will be happy to read your thoughts
![Powerpoint initial model][1]
The implementation that should come to your mind is one in a programming language you know. You can program this in many languages:
Visual Basic. If you already know it, this can be the fastest. Start the IDE and put together a forms project for you DB app.
Java. Many people know Java and you can pick it up in a matter of days and you're likely to have use for it in several projects. A Swing or AWT project that you build in Eclipse or Netbeans with the DB driver for the DB connection will work.
Python is also a popular choice. You can use the library tkinter to make quick GUIs.
C/C++ will also work. But if you don't know C/C++ already you might want to build GUIs with higher abstraction.
A web application with CSS/JScript using some Javascript framework to do DB i/o. But from your question it definitely seems that you want a desktop app.
Use this project to learn a new language. You might not know Lua, Haskell, Clojure, Scala, Kotlin, Fantom, Erlang or some other tool that you don't know how to connect to MySQL with, then it'll be good practice to do so in a new language.
Any of the above will work and if I faced this project I would use tool of the above.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
In my 4 years of experience,I have developed a lot of web applications. Now, the concept of programmable web getting more and more popular, new APIs are being released almost everyday. I would like to develop a java API/library for a few of these endpoints.Ex stackapps,reddit,digg etc... What I would like to know from you people is ,
How is the API of the regular web
apps differ from the API of these
libraries. Or what is the difference
between these two from design
perspective
What are the best API development
practices.
What are all the factors that I need to consider before designing the API
.
Please comment, if the details are not sufficient.
Stability
If you offer an API to your web app, it is probably because you want other people to build applications using it. If it is not stable they will hate you for forcing them to follow through your frequent changes. If this takes too long, their site might remain non-functional for a long time while they are figuring out the new way of doing things in your API.
Compactness
You want the API to be complete but compact, as in not too much to remember.
Orthogonality
Design it so there is one and only one way to change each property or trigger an action. Actions in an orthogonal API should have minimal (if ever) side effects.
Also, it's not a good practice to remove a feature from a public API once released.
Security and Authentication
Since the API is web-exposed, you will have to authenticate each request and grant appropriate access. Security common sense applies here.
Fast Responses or Break into pieces
I believe in a web environment we should have fast responses and avoid requests that will take too long to complete. If it's unavoidable then it is better to send an ACK and break the task into several pieces and subsequent calls.
From my experience, all good API were not made to solve a generic problem, but to solve a problem for some that requires a certain abstraction. This abstraction is then evolving as the requirement and/or the underlying layer change.
So instead of finding the API that will do it all, I'd start by finding one or two good case problem were your API could help.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I am a software development guy. Lately I was thinking of trying out some firmware development, as the company I work for is trying to enter that domain.
I have many questions regarding firmware devlopment - like:
What are the tools used - like IDE?
In which language is most of the code written in?
How to port the code into microcontroller?
How to code for different microcontrollers?
How to determine things I would need for building a specific application(choosing the microcontroller etc.)?
Anything else I should know about and where do I start? Sorry if this question is too basic, but I could not find out any satisfactory answers elsewhere.
Most microcontrollers have decent C compilers so are best coded for in C, although you might need to delve into assembly routines for occassional high performance routines. The choice of microcontroller is usually determined by the hardware demands, on board peripherals, performance and cost constraints.
You wouldn't generally be porting code from a Windows/Linux/Mac environment to a microcontroller one; you would generally be writing directly for the microcontroller, so strictly the compiler is a cross compiler - compiling on your PC to run on a different processor. You typically get debuggers, emulators and full editor capabilities in the IDE, so its a similar experience to writing code in a PC environment, but it runs slower, and has to be downloaded to the target hardware or emulated to be tested.
A great authority to start reading about embedded development is Jack Gansle and his firmware handbook. Also www.embedded.com for general articles.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
The crawler needs to have an extendable architecture to allow changing the internal process, like implementing new steps (pre-parser, parser, etc...)
I found the Heritrix Project (http://crawler.archive.org/).
But there are other nice projects like that?
Nutch is the best you can do when it comes to a free crawler. It is built off of the concept of Lucene (in an enterprise scaled manner) and is supported by the Hadoop back end using MapReduce (similar to Google) for large scale data querying. Great products! I am currently reading all about Hadoop in the new (not yet released) Hadoop in Action from manning. If you go this route I suggest getting onto their technical review team to get an early copy of this title!
These are all Java based. If you are a .net guy (like me!!) then you might be more interested in Lucene.NET, Nutch.NET, and Hadoop.NET which are all class by class and api by api ports to C#.
You May also want to try Scrapy http://scrapy.org/
It is really easy to specify and run your crawlers.
Abot is a good extensible web-crawler. Every part of the architecture is pluggable giving you complete control over its behavior. Its open source, free for commercial and personal use, written in C#.
https://github.com/sjdirect/abot
I've discovered recently one called - Nutch.
If you're not tied down to platform, I've had very good experiences with Nutch in the past.
It's written in Java and goes hand in hand with the Lucene indexer.