Database for Open Source Project [closed] - database

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Which database would you use for an Open Source Project?
I am looking for something that has little or no setup required by the end-user.
Update: Database size will be relatively small (less than 100,000 records). Application will be written in C#.

If you're looking for embedded database (I guess you do if you ask for something easy for end-user), then SQLite is the most widely deployed SQL database in the world.
Depends on what language you're using, you might need appropriate wrapper for SQLite library.
Update: For .NET, the best wrapper for SQLite is System.Data.SQLite.dll from phxsoftware.

SQLite is nice if you want an SQL-queryable DB:
http://www.sqlite.org/
It doesn't require a server; you just need to include and use the appropriate API libraries in your project. Your database gets stored as a single file on disk.

It depends so very much on how much heavy-lifting that database has to do, but I think it's worth looking into SQLite. It's an amazing little piece of C/C++ code, it's distributed under a public domain license (meaning you can literally do anything you want with it, including resell it).
If you do not need atomic transactions, or very intense type-checking, then there probably isn't a better database. You add the library to your application and it works like a SQL database. Most programming languages have bindings for it. It would be hard for you to describe a case where some other database would be needed.

If it's a web app with PHP then MySQL ... it's installed pretty much everywhere that has PHP installed (which is almost every host).
If it's not... consult the other answers :)

Go with SQLite. It does not need any kind of installation by the end user. It just works.

What about an object database like db4o.net?

Have you looked at SQL Server Express It isn't open source but it is free. I'm a big fan of SQLite but if your in the .net world and want to use a microsoft stack it may be a better choice. It provides some things like T-SQL and a strong type system that SQLite doesn't provide. It does have performance and db size limits not found in the full SQL Server versions but this probably doesn't matter for your application.

I'd second the comments regarding SQLite. It's great for what it is - and for most small, no install DBs, it works very well.
There are a couple of other options, though.
Firebird is one option. It has a pretty impressive feature list, and also includes a .net provider (albeit in beta still).
Another option, though not open source, is VistaDB. It's a 100% managed option, unlike SQLite and Firebird (and most other DBs out there), and has a lot of advantages because of that. It's fairly consistent with MS SQL syntax, supports stored procedures, and many other nice features. They have an "Express Edition" that's free, and can be used in open source projects.

It would depend on what you mean by "end-user"
As others have said SQLite is a great choice if you are looking for something embeddable or for a desktop use.
If you are thinking of some sort of web app, I'd say either MySQL or PostgreSQL as these will provide better performance and be able to handle a large data set more naturally.

If it's windows only Sql Server Compact Edition is a good choice for small apps. It is freely redistributable.

Related

NuGet feed hosting options including MyGet [closed]

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 9 years ago.
Improve this question
I have been investigating options for NuGet feed hosts.
Currently, we use TeamCity to build/publish packages to TC's built-in server. For a Visual Studio package-source pointed to TC, we've found that the subscription/update process to be painfully slow -- even though our developer workstations are within the same local subnet and we have only a few dozen packages.
Other package-feed options I know about :
nw share
internal web-server(s) based on NuGet.Server
MyGet
ProGet
Does anyone have enterprise-level experience with any of these solutions ?
MyGet looks very promising, but one cause for concern is that ( at least according to their website ) only around 1500 feeds are active. If MyGet had truly caught on, it would seem that this should be 150,000 or so.
Also: is there anything in the NuGet world similar to Maven's concept of a local-only "snapshot" package engine and feed server ?
Thanks.
As one of the founders of MyGet let me take this question :-) We indeed have around 1.500 feeds hosted on our public website, we also have some enterprise users who have their own domains and are not listed here. Feel free to contact us if you require more info or want to be in touch with one of them. We're also open for just a chat so feel free.
In the Gallery (http://www.myget.org/gallery) we have famous projects like SignalR, RavenDB, Glimpse and the ASP.NET team is pushing their nightlies as well.
In the field, we see a lot of "self hosted" solutions based on NuGet.Server but these are typically smaller installations. Just as with network shares, it lacks a bit in performance when too many packages are in that feed.
Speaking to performance, our newest 2.0 release of ProGet underwent some performance enhancements, mainly caching of LDAP credentials and the fact that package data is now cached in the database, so adding packages doesn't have to rebuild the full index of packages (where previously if combined with something like 1000s of packages stored by RedGate's Deployment Manager, it would have slowed things a bit).
I'd like to add two products to the list.
Sonatype's Nexus pro - If you are running a mixed Java/.NET shop it might be a good
alternative. http://www.sonatype.com/nexus/features. I'm not sure here but since Nexus is a maven tool from beginning it would be plausible that it has some kind of snapshot support for nuget feeds as well, however not local.
Teamcity - it has built in support for nuget that integrates and works well with teamcity but it (version 7.1.4) does not support all native nuget operations like managing packages from outside teamcity and there is no easy way to proxy other feeds nor support for multiple feeds. http://jetbrains.com/teamcity

Alternative to MS Access with Forms and Reporting Capabilities [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I have been looking on SO and can't seem to find something more recent than around 2008.
I am looking for an alternative to Microsoft Access with similar capabilities. I.e:
Forms
Macros
Reports
Etc
In another question VS Lightswitch was recommended (Still in Beta 2). I had a look at it, although it seems good it is still reasonably new and unsuported at this stage.
My main purpose is to have a DB that is simple, portable and can be accessed easily (mostly by 1 person at a time, but also sometimes by multiple people). I know Access can provide this and if it seems to be the best solution I might stick with it, but are there anything else out there that someone has found useful for custom data capture, filtering and creating reports?
I know that Visual Studio or alike can be used, but would prefer something more in line with Access.
The link to similar questions are (but seem to be somewhat old):
Front-End for MS Access migration?
Replacing MS Access forms
Alternatives to Access
Good Free Alternative To MS Access
People are usually looking for Alternative to MS Access either because:
They, for some reasons, consider
that Microsoft is Evil
They don't want to pay for the extra Access licensing
For people from Group 1,I do not have that much to say. I was part of it till I realised how fast and simple it was to use some of these great software (not all ...) sold for a very fair price. Up to now, I have spared years of headache using them. Thanks Microsoft, I owe you one.
For people from group 2, there is a runtime\free version of Access that you can deploy (for free, I insist) on your final user's computers. It means that you do not have to buy any basic office software for your users but you still can have your users running an Access App on their machines ...
Try OpenOffice.org. It has the Base program, which is similar to Access. It is also free and open source.
One of the reasons people are looking for this is because Access 2013 is quite different than previous versions and it looks like it will soon be the end of the road for this product. The problem with Kexi and Base as well as the other office clone versions is that they are very weak in their support for scripting. With MS VBA many things can be accomplished which are not available in these (as yet).
Access has a built in IDE for developing VBA and it is almost the full visual basic 6 IDE with nice a debugger etc. The only product I have found thus far which have something like this usually have a much higher price tag than access. (Alpha 5)
You can Consider Kaxi ( http://kexi-project.org/ ) , as it a database component of KDE-office.

MS SQL and my need for a little direction [closed]

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 11 years ago.
Improve this question
I've been lurking around for several weeks and have been totally blown away by the amount of information and how the community quickly responds. I have noticed that questions like this typically receive sarcastic remarks and sometimes get down voted. Please bear with me as I attempt my first post :)
I little background..
I work at a tiny software company as the "QA department". Our application has a MS SQL back to store customer data and short term loan information for financial service companies. I started working here 6 years ago as a gernal technician to provide support for their call center, so I've been overly exposed to SQL and have become fairly familiar with working with it. You probably wouldn't pay me to develop a enterprise level database, but at this point I've become familiar enough to do most things in SQL.
Why I'm asking my question..
I want to develop an application to store and track our software issues and new dev. I've done research on this website along with asking around and I still feel sort of lost as to which direction I should take. I want the core of the application to be pretty basic at first, to provide various screens between my entities/modules and to create reports to show their various relationships. In the future I want it to be more complex, to provide a web portal of some sort and to start getting into various complex QA software concepts. I've read around and it sounds like I might want some variation of C/VB for the windows portion, but all of the topics have sort of overwhelmed me. Do I want to start with a more basic one that was created 20 or 30 years ago? (I think that's C and C++, right?) or a more recent one like C#? Will I be able to develop a web portal with both of these? (by web portal I'm thinking it would provide access to our database of defects and have username/password sign-in). I've seen that the various .NET languages lean more towards web development, should I start with one of these?
I am at the very beginning of this and I fully understand that I'm jumping into some deep waters here. I want to make sure I don't end up spinning my wheels and that I focus my energy on something that won't end up being a bad idea in 1 or 2 years after I start. So far I've found this website very helpful, if I can pick a direction I know I won't have any problems finding what the next step is. It might help to know that I have no formal or informal programming background (if it wasn't obvious). I'm a 27yo techie who is starting his first venture into programming, go easy on me! Thanks for taking the time to read this :)
I won't recommend that you go to C, C++, or VB. C and C++ are used mainly for developement of system software, compilers, etc. VB is deprecated by now; there is a .net version VB.NET, but my preference is C#.
Looks like you are a Microsoft shop. Steer youself towards using C#. Visual Studio provides great support for development of Web Applications with support for holding state in entities backed by MS SQL.
I would start with a simple example as given in MSDN http://msdn.microsoft.com/en-us/library/dd410597.aspx.
This example uses an Model View Controller based framework that is fairly easy to configure and use. They have great examples.
There is a free framework that also supports MS SQL Entity store http://www.coderun.com/ide/
Enjoy
Don't write a line of code. There are literally hundreds of open source and commercial software packages that already do what you want to do. You'd be better of spending time researching them and finding the package that most closely meets your requirements. A good solution will also be extensible enough that you'll be able to modify it to meet all of your requirements.
Since you work for a small company I can guarantee you that using your limited development hours "writing your own" will be counterproductive. You'd be better off adopting something off the shelf and becoming proficient at it. You'll learn more about developing systems like this once you've become intimately familiar with one of them.
Check out JIRA or
http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems for some other ideas.
For the benefit of your company I would recommend to use an existing
solution. But if you want to learn and build something of your own, I
would suggest that you check out some popular web application
frameworks, like:
Django
Ruby On Rails
Zend
Good Luck with your project!
Given that your intent is to learn and create something yourself I think you should consider a LAMP stack and PHP with one of the PHP frameworks on top (Cake PHP, code-igniter or the like).
The C++ route is a long hard way (C++ is my language of choice) to learn; as a learning experience I think you will get quicker and more satisfying results with PHP.
I also think that this is a realistic project for someone of your skills over a period of a 6 to 12 months - start with a simple requirement and then build it up to have all the features you need.
If you just want a bug tracking system obviously there are many options that won't demand any development.
How much experience do you have with things like installing Linux, Apache, Mysql, etc? If you are completely new to this, then this will be a much tougher task, because there are many layers you'll have to learn before you can even get to the point of writing an end-to-end application.
I would avoid C/C++/C# because there are a lot of things you would need to learn about basic programming before you even got to the stage where you could make database calls.
On the assumption that you don't have experience with LAMP (Linux/Apache/Mysql/(Perl/Python/PHP)), my suggestion would be to start simply, by using a scripting language like Python or Perl. You can very easily get a database connection, and start writing queries, and extracting data from there. If you are used to Windows, I would install ActivePerl or ActivePython, and start from there. You can start building a command line program that does what you want, and then from there, you can move on to creating a web application that can do something similar.
Building a web application would likely be much easier than writing a Windows application, so after you have gotten comfortable with the scripting language, that's the direction I would go afterwards.
Good luck!

UI Testing Tool? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
Improve this question
Looking for a tool to UI testing of a Windows (.NET WinForms) application. The idea is that the analysts will record the tests via some UI and it will be able to be played back over and over again.
Commercial tools are fine but bonus points for free ones.
Some others:
NUnitForms
Quail
I believe they're both free, and Quail looks really nice!
(I was going to just comment on an answer above, but ran out of room.)
We bought Ranorex, and I wouldn't do it again. Their licensing for 1.5 (what we're using) was unclear. Their written license was per user, their marketing said per machine. Still, enforcement was key-based, and not a big deal when a machine got wiped or a replacement tester came in.
For the 2.0 product, their licensing is now tied to the machine. Reimage a machine and you get to relicense it. I'm just not going to support that kind of hassle with my company's thousands of dollars, and we didn't upgrade.
For what they want for the product, a lot of the functionality could be easily written using the UI Automation Framework. Ranorex is a decent product, but I question its value for the money. We're moving a lot of our new tests to just coding to the UI Automation Framework, as we often end up modifying Ranorex-generated code anyway.
TestComplete.
You can definitely use capture-replay to capture and run the test script. But I would suggest that you must at least manually edit your scripts to make them
more readable
easier to maintain.
The good thing about TestComplete is that it is able to look into your form's properties, capture those properties so that you can refer to those properties by their name, not by just screen coordinates.
Like Tom E stated, do take caution while considering going down the record/playback path for test automation.
See Uncle Bob's article on Ruining your Test Automation Strategy.
The main problem is that the record/playback tools couple the tests to the GUI which makes them very fragile.
Uncle Bob's article does point out that some testing needs to occur on the GUI...but that he recommends stubbing out the business rule code.
Sorry I can't provide you with a specific UI test automation tool...but hopefully this caveat will help you make the best decision on how to employ the tool that you eventually use.
So far I have found:
Ranorex which looks really good.
Test Automation FX, also looks good and seems very well priced.
Microsoft's UI Automation Framework, which does not have the recorder but if I had to I could code one using this.
white which looks similar to the UI Automation Framework, but has an alpha quality recorder.
Comments please if you have used any of these.
At my company, we decided to go with http://www.sikuli.org/. We felt it was the perfect mix of cost (free), ease-of-use, functionality and extend-ability.
Sikuli is Python based (Jython, really) which is great and its open-source. There's a tiny bit of coding required, but it can be as easy as just calling functions. Their IDE makes it really easy to get started. It is not a record and playback tool. It functions based on computer vision algorithms - you give it screenshots of what to look for and it finds it on the screen and then performs the requested action (click, type, etc) on what it found. This is true independent testing since Sikuli knows nothing about the software its testing. It does not know about underlying APIs - it just does what a real human would do.
We have integrated Sikuli with Robot Framework, http://robotframework.org/, and have created lots of custom python code to build a robust testing platform. This may not be as easy as licensing a tool from a vendor but the time and talent investment in these two open source tools has been well worth it.
There are a bunch of similar questions on SO:
automate-interaction-with-a-gui-interface (Edit: no longer available)
automated-testing-of-windows-forms (Edit: no longer available)
automated-testing-of-gui
In my experience, there are a lot of good open source tools for the web, but not so much selection for open source thick client test automation tools. If you want good support with robust functionality, especially recording, you will need to look at the commercial tools (QTP, RFT, TestPartner, etc...)
You should have a look at http://opensourcetesting.org/functional.php A lot of tools are listed here and you should find something that meet your needs.
Visual Studio Team Test 2010 is coming with a tool for recording and playing back UI tests. You'll find some pointers at:
Introduction to Record and Playback Engine in VSTT 2010
Checkout Ranorex, commercial, quite expensive but powerful (not affiliated).
We were using Mercury TestDirector a few years ago and quite happy with it. (All the caveats as mentioned by others apply.)
Mercury was aquired by HP and the tools have been rebranded as HP QuickTest. Not sure how much has changed, but certainly worth a look.
I tried to include a link to the HP website, but the URL doesn't look too "stable". Not exactly a confidence builder ....
My proposal is QA Agent(http://qaagent.com/). It is free web based IDE for development of web automated tests. Basically you are using jQuery to develop your tests. You can run tests in your browser. It looks like a new projects, but I really like the idea to develop tests in the browser. You know how long it takes to set up your testing environment. With QA Agent it takes 10 seconds.

Easy way for Crystal Reports to MS SQL Server Reporting Services conversion [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
Is there a way to easily convert Crystal Reports reports to Reporting Services RDL format?
We have quite a few reports that will be needing conversion soon.
I know about the manual process (which is basically rebuilding all your reports from scratch in SSRS), but my searches pointed to a few possibilities with automatic conversion "acceleration" with several consulting firms. (As described on .... - link broken).
Do any of you have any valid experiences or recomendations regarding this particular issue?
Are there any tools around that I do not know about?
I have searched previously for this, with no luck. There does not seem to be any tools available for this conversion, the manual method thereby becomes the only method. And yes, there are consulting firms who will do the manual work for you, but they still do it manually.
Crystal Reports and Reporting Services have different architectural styles, making it a difficult task for a conversion tool, so I view it as unlikely that someone will build one anytime soon.
I work for one of those consulting firms mentioned by Carlton, and let me tell you that we are the only company to have developed an in-house (proprietary) tool that helps us jump start the conversion process from RPTs to RDLs. Our current tool only supports Crystal Rpts 9 and older, and the RDL 2000 and 2005 formats.
I have done several of these conversion projects myself, and there are lots of things that cannot be automatically converted due to the nature of each product. Things like expressions, data source information, and dataset queries just cannot be automagically "translated" by a tool.
Cheers.
An alternative would be to use a much cheaper reporting solution which can read Crystal Reports templates, such as (our very own) Java-based i-net Clear Reports (used to be i-net Crystal-Clear).
Note that unlike most solutions, we do NOT lose information such as data source information, formulas, SQL expressions, etc. from the original templates. Even charts are converted quite well.
Also, we now offer a fully functional, free report designer (which can also run reports).
My original VB code was converted to C#. See RptToXml.
We're in a very similar situation at the moment. Dozens of crystal reports in place and we're shifting to Reporting Services (mainly for its ease of deployment and more flexible UI for the end user) - our solution is to leave them be, but anything new is being created in RptgSvcs. Ideally we'd translate them, but the .rpt format is too opaque.
In my search I got to know a product of KTL Solutions with the name KTL Crystal Converter which is capable of converting a Crystal report to SSRS.
As suggested by Microsoft you may try any of the following migration tools for SAP Crystal Reports to SSRS conversion:
Hitachi Consulting http://www.hitachiconsulting.com/page.cfm?ID=bi
TCS http://www.tcs.com/Microsoft2005Launch/download/Microsoft_Recast.pdf
Sonata Software Ltd. http://microsoftcc.sonata-software.com/html/mcc_bi.htm
KTL Solutions http://www.ktlsolutions.com/t-crystalconverter.aspx
90DegreeSoftware http://www.90degreesoftware.com
Jeff-Net http://www.rpttosql.com/index.html
Neudesic http://www.neudesic.com
PLUS-IT http://www.plus-it.de

Resources