As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Is there a tool, similar to MS Access but for Web. Which will allow users to create line-of-business applications and report-applications in a visual environment, but also is backed with a scripting/programming environment?
Note:
In general, I am not fan of MS Access, but in many situation it showed as very efficient way to let the user manipulate data, screens and reports by them self and just help them with the most difficult parts, which required programming.
I have been looking for something similar to MS Access for a while.
I have used access for a long time to build data acquisition tools in a similar way to how lab-view works. I have found the strength of access are the form designer, the query designer, and its ability to work with MSSQL in .adp mode. Also it's ability to use other components from MS office and other com object model based libraries etc. The immediate mode allows for very rapid testing of the vba code. I can not work as productively in visual studio VB.net or any IDE I have tried thus far. However I am not a computer science expert so I hope someone has more knowledge than I do about this.
So far the closest tools I have seen are Alpha 5 v11 and RAD Studio X3 Delphi.
I looked at Limnor Studio VS, MS Light-switch. I tried Python but couldn't find a GUI work as well as in Access. Most of the uses I have are in the area of controlling devices by LAN or GPIB and pulling data off of them for later plotting or other analysis.
I would be very interested to hear of more possibilities.
Maybe you should look at Morfik (http://morfik.com/).
If you know your way around in Access, you'll pick up Morfik in no-time.
You can program your stuff in Java, C#, BASIC and Object Pascal.
It'll be easy to deploy it as a website, and the UI is really slick.
There are many videos online that demonstrate how it works.
You might want to check out m-Power. I wouldn't really compare it with MS Access, but it will let users create line-of-business applications and report-applications in a visual environment.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
We've started to research the possibility of creating the LOB W8 Store apps pushed to Surfaces through our/customers' domain store. We've got a portfolio of working WinForms and WPF apps written in .Net, and are thinking of migrating some of them to Surface because of the customers' preferences.
Now I've got a dilemma: I've made a research about development technologies in Windows 8, and from what I have read and tried it seems the best way to utilize the W8 Store development techs is to use this combination:
HTML, CSS, JQuery and JS for UI development (View), and
C# and proper .Net for the Model/Domain part of the solution.
The fact is (or IMHO), that XAML is heavily bloated compared to lightweight HTML/CSS/JQuery when creating triggers, effects, animations and UI, we don't have that much developers' time creating the UIs.
On the other hand, JS is (IMHO, again) unusable for Domain/Model application because the code would have to be rewritten (no time for that) and, despite the language and type-checks introduced in JS, I think the language is hardly usable for our Domain/Model requirements and learning curves.
From what I was thinking, is there a possibility of writing the UI part in HTML/CSS/JQuery/JS and Domain/Model parts in .Net/C#? So that we'd have a bunch of HTMLs, JS and, let's say ViewModels to bind to, and a domain DLL written in C#?
I mean to use it similarly to creating a solution in C++.Net and adding a couple of C# and VB.Net projects/dll references to it and referencing the classes in it?
I read that the only way how to achieve this (since the JS app is native AFAIK), is to use the Interops and COMs, and, I'm afraid that this would not be possible with our software.
Thank you guys.
A Windows Runtime Component should enable what you want here and provide a seamless integration with the JS front end (read: no messy interop/COM for you to worry about). The Windows Runtime component you write in C# can use any of the .NET functionality allowed for the Windows Store (so you're not losing any capability there); however, what you expose from the Windows Runtime Component can only use Windows Runtime types for parameters and return values, which you probably expected anyway.
Check out the Walkthrough on the Dev Center and Creating Windows Runtime Components in C# and Visual Basic for more details.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What are the disadvantages/drawbacks of using Xtend?
By asking the development team of Xtend, I got the following answer:
Dear Mr. X,
The major drawback compared to Java development might be that although
Xtend's tooling is much better than the tooling provided by other
languages, it's still not as good as what Eclipse can do for Java
development.
Also note, that Xtend misses some features you might need when
integrating with existing Java projects :
- definition of constructors
- field initialization
- declaration of static methods and fields
The next release will have these features and will also come with an
easy to use integration to run the compiler in Maven or Ant. It's
planned for later this year.
Best Regards, Sven Efftinge
So, to conclude:
(as bjz mentioned) it's quite coupled with an Eclipse environment
critical features are missing
Nevertheless, they seem to be working on them. There is also, a What's next Section
Since version 2.2 - The Eclipse Xtend Language ( released December 2011 ) now ships with support for both the Apache Ant and Apache Maven build tools.
With the additional of this support, a major drawback of not being about to use Xtend in your continuous integration/build process has been resolved.
Whislt official/native IDE support is still limited to the Eclipse IDE, both IntelliJ IDEA from Jetbrains and Netbeans from Oracle offer excellent Maven support which will assist development until IDE specific support is developed.
I haven't tried out Xtend extensively, but I did come across this article last week, and I found very enlightening:
Tight coupling with eclipse tooling
Xtend and Xtext are doubtlessly eclipse technologies through and
through. This is a definite advantage for starting to use these
technologies since they offer nice integration with the eclipse IDE.
As a downside, however, code written in the Xtend language might be
difficult to use with other tools apart from eclipse. On the other
hand, the Java code generated by Xtend is vanilla Java code (apart
from the lightweight Xtend library used in the generated code). This
code, of course, can be used by most other tools. Therefore, I have
chosen above to place the xtend source files not in the main Java
source code folder of the project (src/main/java) but into a separate
folder (src/main/xtext). This enabled to let Java code be generated
into the src/main/java folder. From there, it can be picked up and
used by other tools such as Maven.
In places, insufficient documentation
The documentation available for Xtend is far from extensive. In
comparison, the documentation available for Groovy is extensive
including books and various web sites.
EDIT: Xtend now has a standalone compiler, but they still seem to be pushing the Eclipse integration. Which is completely fine by mean, but it does mean that you won't have as great of an experience in other IDEs. Check out their site to see their future plans.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Ok, so I've only recently started getting serious about learning how to program, and I've started using Mercurial to manage my projects. I chose Mercurial over SVN because of it's ability to commit changes to a repo while not connected to the internet (these days I find myself in areas without internet access). I'm looking for a piece of software (preferably free, because I'm on a really tight budget :-P) that will allow me to manage a bug database and TODO list for each of my projects without requiring an internet connection. Is there anything out there that'll allow me to do exactly that (maybe more)? I'd prefer something that can work alongside Mercurial, because it'd be a pain to switch source control systems at this point.
Dot Project, best so far in my view.
http://www.dotproject.net/
http://bugseverywhere.org/be/show/HomePage : Bugs Everywhere is a “distributed bugtracker”, designed to complement distributed revision control systems.
Supports Arch, Bazaar, Darcs, GIT, Mercurial
You may be interested in a DVCS called Fossil which has a built-in bug tracker and wiki. I've never used it but it looks like it might meet your needs.
Ok, so it's been a few days and I still haven't found anything that's suitable for my needs. Fossil sounds great, but I miss the Windows shell extensions that TortoiseHg provides (I don't like working on command lines), dotProject is a hosted solution and if I want to run it locally I have to set up WAMP. The BugsEverywhere repo seems to be down (I cant get anything from it using bzr), and Artemis is good but its easier for me to work with something that has a GUI. I found FogBugz, and its a step in the right direction for me, but it's not free (I'm using their 40-day online trial right now. I'm probably going to end up writing one, in Python using Django since I have some experience with it. I know that I shouldn't be re-inventing the wheel, but in this case the wheels available just don't fit right...
Here's a Mercurial extension that tries to provide this - ArtemisExtension.
ticgit, a git based distributed ticketing system, including a command line client and web viewer. it works alongside git. but if you really need distributed source and bugtracking
and you like this application, the cost of switching vc may be acceptable.
CodeBeamer MR looks interesting: http://www.intland.com/products/cb-mr/overview.html
and promises to be free 'forever'...
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
What are CAD applications (Rhino, Autocad) of today written in and how are they organized internally ?
I gave as an example, Autocad and Rhino, although I would love to hear of other examples as well. I'm particularly interested in knowing what is their backend written in (multilanguage ?) and how is it organized, and how do they handle their frontend (GUI) in real time ? Do they use native windows API's or some libraries of their own, since I imagine, as good as may be, the open source solutions on today's market won't cut it. I may be wrong ...
As most of you who have used them know, they handle amongs other things relatively complex rotational operations in realtime (shading is not interesting me). I've been doing some experiments with several packages recently, and for some larger models found that there is considerable difference in speed in, for example, programed rotation (big full ship models) amongst some of them (which I won't name). So I'm wondering about their internals ...
Also, if someone knows of some book on the subject, I'd be interested to hear of it.
3D Mechanical CAD software such as CATIAv5, Pro/Engineer and Solidworks are mostly written in C++, sometimes with a thin COM interface for publishing basic API to customers.
Since these applications are really huge and are being developped by several teams, they rely on large scale C++ design principles, such as Interface/Implementation patterns to insulate the modules from changes.
They are composed of several subsystems such as:
a base framework to provide abstraction from the underlaying OS
a framework for GUI, dialogs and user interaction
a 3D renderer (mostly using OpenGL with some custom scene graph layer)
a geometric kernel, with a tessellation module (so that geometry can be displayed in the renderer)
a parametric modeler build upon the geometric kernel
and a lot specific modelers targeted at different domains (Mechanical, Drafting, Simulation, ...)
As my company is a registered developer for AutoCAD, I know for certain that its written in C++. It exposes a COM interface, as well as a .Net wrapper. Also, it graphics display is componentized and could be possibly replaced.
Way back in its history it used be cross-platform. However its been Windows only for about 10 years and now takes advantage every Windows feature I've seen.
You may be interested in the Open Design Alliance.
AutoLISP is a flavor of lisp that has been used for years to program AutoCAD. Very powerful, not at all friendly.
AutoCAD (and most verticals) have had VBA built-in for about 10 years. Kind of powerful, very friendly. VBA projects are stored in a separate file that is loaded by a mechanism internal to the host program.
The latest version (currently 2010) no longer includes VBA by default. You must install a separate VBA enabler. This is to put us on notice that VBA (VB6 for that matter) will at some point be a thing of the past. The .NET platform is currently the preferred choice. VB.NET, C#.NET, C++ are commonly used. Some have experimented with other .NET languages like F# and IronPython.
The open source project BRL-CAD might interest you.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Recently I found out that the company a friend of mine co-owns uses 4D, which I've never heard of before. They swear by it, but they're non-technical and what they say about it sounds like memorized marketing blurb. Unfortunately the 4D website also seems devoid of any actual information and is filled with words like "comprehensive", "solution", "platform" and "integrated" instead.
Since that thing is rather expensive and uses a custom language that I don't have much inclination to learn just for one project, I'm cautious about it and I'm wondering if anyone had any experience with it? Would you recommend it? What is it good for? What competitive advantage would I gain by learning it as a programmer, or using it as a company?
4D has been around for a long time (~25 years), so it's much older than e.g. MySQL. Think of it as a professional version of Microsoft Access: It has its own Pascal-inspired host language, its own relational database engine, a very mature IDE for rapid GUI development and a custom runtime which allows for true "write once, run anywhere" (anywhere being Mac OS (X) and Windows, that is). Nowadays, it also understands SQL, there's a server version and even an integrated web server. It's fairly powerful, so the comparison to Access probably does not do it justice.
Today, I believe it's mostly used for legacy apps which are as old as 4D is. I don't think I would learn it again today, much less start new projects with it, since you can get the same functionality and then some by stacking up open source components.
I used to do some very serious 4D work, one of the systems I wrote is still in use as an enterprise system about 16 years later. I got frustrated because they were taking years to come out with the new object-oriented version of the language and I was writing thousands of lines of code to use a third-party table control.
4D delivers cross-platform, very high-performance client-server systems using a proprietary server. The database model is much more set-oriented than SQL and pulls the sets all the way into the core language. It does a nice job of delivering code to the clients because it compiles all procedures to native code which is cached locally and updated on-demand when it is out of date.
The language and GUI environment have their quirks but the flip-side is that there will probably be a good living to be made from supporting it as a legacy platform. if you can get someone else to pick up the tab for the tools, it may be a useful addition to your consulting toolbox. You have to consider how much business-specific code is gonna be out there for a unique product with that long a history!
An engineer for whom I have huge respect was recently hired by 4D which says a lot about their commitment to the future, hiring this kind of guy.
I've been working a lot with legacy systems recently, doing a port from old Mac stuff to WPF and the contrast between the mostly-unused complexity of Visual Studio and old Mac tools reminded me of 4D. I'm also porting my OOFILE C++ database and reporting frameworks to REALbasic - the OOFILE set-oriented operations came directly from what I loved about 4D and this too made me think I was too harsh in this answer originally.
The thing to remember about 4D is that it was set-oriented from the beginning (written by a mathematician) and much easier to use for many things than SQL. The deployment model of 4D Server is a superb combination of desktop app and network provision - compiled components are cached on the server and automatically sent to a client when needed. There's no need to shutdown or actively push or deploy updates. The GUI model of 4D was frustrating but looking at the site today, they have solved most of the issues that I had to use third party solutions for years ago.
Avoid it like the plague. My company uses it and it's just a constant exercise in frustration. It performs no where near as well as the sales pitch would have you believe, and documentation is either non-existent or not helpful.
In my opinion, there is no reason to begin learning 4D unless you want a simple database app and are unable or unwilling to learn how to create GUIs in a bigger language. The main advantage that 4D has is that the built in functionality between the UI and the database can handle most of what is needed. If you want something quick, small, and inhouse, you can get by with 4D but if you need to develop a powerful commercial application you will run into a few walls. If you need something that 4D doesn't provide automatically it will be very difficult to get it working.
I consider the language completely archaic. It works for what it does but our product has become limited by the language and database itself. We keep running into weird quirks and have to code our way around them.
I have experience in 4D 2003 and 2004 but we haven't upgraded to the latest version because of the costs. It is extremely expensive. Each customer needs to buy licenses for each computer that needs to run the software. Our product costs over $1000 for a new office because of the licenses. When a new version of 4D is released every single customer has to pay to upgrade their licenses.
After looking at https://www.4duk.com/products/ataglance.html, I'd recommend you stay clear - it looks like one of those products that's going nowhere.
It reminds me of the time I was made use a development platform called Witango - absolute nightmare to use, and all apps had to be rewritten in .NET very shortly afterwards.
Invest your time learning something more mainstream/employable.
Avoid at all cost. 4D used to be a good Mac database twenty years ago but is obsolete today. Extremely expensive to deploy and poorly supported. I have used it for many years and have since moved to Real Studio for cross-platform database development, which has a more modern language and a far more active developer community.
I'll be wary of investing too much into something like this. On the good side, if that's what your company uses learning it will pay dividends. But the skills you learn will be hard to use in other places.
I think more than half the replies over here are inaccurate. I know of more than 20 companies with over 1000 users. And I believe there are a lot more.
With 4D v12.1 (www.4d.com) you can easily deploy at the click of a button for single-user, client server, Mac, Win. And there are easy to setup plugins for integration with Flex, iPhone and Android OS. Their KB and documentation is very neat and comprehensive.
They have a great engineering team and the support from 4D and the online community is just fabulous. I have been using 4D for several years and I have no complaints.
4D as someone else pointed out gives you a fully integrated backend database and frontend. The client server connections are stateful so you dont need to worry about record handling and client server session handling.
At less than $1000 per year it is not expensive and you can deploy unlimited single user apps. Which other propreitory development platform gives you that?
I am sure Real Software has its Pros and Cons too. There are many choices nowadays and there are many ways to skin a cat.