Slashdot Mirror


Ask Slashdot: Linux Database GUI Application Development?

New submitter msubieta writes I have been developing some applications to use in small businesses using Windows and SQL Server. I would like to move on and start doing the same thing in Linux. I have looked at several Frameworks/Databases/Development environments and I really don't know what is the best/simplest/fastest to learn approach. I use VS and C# mostly, although I could easily go back to C++. I found Qt and GTK+ are the most common frameworks, but they seem to lack controls that deal with datasets and stuff (sorry, spoiled by the .net form controls), but I also know that I could use Mono in order to make the jump. I would have no problem on moving to MySQL, as I have done quite a lot of work on that side, and I would like to stick with the traditional client server application, as I find it easier to maintain, and a whole lot more robust when it comes to user interaction (web apps for POS applications don't seem to be the right way to go in my view). Any suggestions/comments/recommendations?

264 comments

  1. Hakija by Anonymous Coward · · Score: 0

    Yes, stick to Windows/SQL Server/C#

    1. Re:Hakija by Anonymous Coward · · Score: 0, Troll

      I second this. Linux isn't good for that sort of thing. You'll get quickly frustrated at how clunky everything is and how long and unnecessarily drawn out the development cycles are. Imagine working at a place that required you to use Notepad for all development, that's Linux.

    2. Re:Hakija by jedidiah · · Score: 5, Insightful

      You couldn't be more wrong if you tried.

      If you're willing to explore something other than what Microsoft has spoon fed you, there's more than enough shiny happy development interfaces out there.

      --
      A Pirate and a Puritan look the same on a balance sheet.
    3. Re:Hakija by PRMan · · Score: 1

      Name 3.

      --
      Peter predicted that you would "deliberately forget" creation 2000 years ago...
    4. Re:Hakija by ClickOnThis · · Score: 3, Informative

      Name 3.

      You want 3? Here are ten. And there are more.

      --
      If it weren't for deadlines, nothing would be late.
    5. Re:Hakija by Anonymous Coward · · Score: 0

      He didn't ask for ones that exists, he asked for good ones. Netbeans is the only one close. VS is still way better.

    6. Re:Hakija by Anonymous Coward · · Score: 2, Insightful

      Are you seriously comparing a list with IDE's like Komodo and Eclipse to Visual Studio?

      Look, you can hate on MS all you want to. But at a certain point you can cross over into true delusion.

    7. Re:Hakija by Anonymous Coward · · Score: 0

      I've been developing for Linux and Windows since '98, I've tried every single IDE for Linux and I can say with out any guilt that all of them suck big time. Java based IDEs? Decent code competition when it comes to big C++ projects? Debugging from an IDE? Don't get me wrong, VS sucks too (esp. when they rewrote big parts of it in .net), but VS with Visual Assist is still the best IDE combo.

    8. Re:Hakija by Anonymous Coward · · Score: 0

      Most MS haters these days don't even know why they hate Microsoft, they just follow the herd.

    9. Re:Hakija by Anonymous Coward · · Score: 0

      Emacs is a pretty nifty IDE.

    10. Re:Hakija by Anonymous Coward · · Score: 5, Interesting

      Yup. I develop on Microsoft, Linux, and OS X, and anyone who thinks there are better IDEs than VS are fucking delusional. There's a reason I charge a hell of a lot more to develop on Linux and OS X vs on a MS platform.

    11. Re:Hakija by ClickOnThis · · Score: 2

      It's the Linux-haters who are being modded down in this thread.

      --
      If it weren't for deadlines, nothing would be late.
    12. Re:Hakija by Maury+Markowitz · · Score: 1

      > There's a reason I charge a hell of a lot more to develop on Linux and OS X vs on a MS platform.

      Especially under VS13 where you can finally use GIT.

      That said, Xcode did get better in 6.x, but you still can't do a "find all references" ?!

    13. Re:Hakija by Anonymous Coward · · Score: 1

      I agree. I am in the same boat.

      I have used them all both paid and 'free'. Netbeans is about the nicest outside of VS. VS is seriously that good.

      Most of the big ones out there are basically 'not done' is the best I can say about them but that description is not right. VS feels like a finished product for you to get stuff done. The others feel like something someone hacked together to get something done. I just can not put my finger on it. I keep giving the others a shot (as in use them for a month or so) but go back to VS. It is sort of like slackware I keep going back to it.

    14. Re:Hakija by Anonymous Coward · · Score: 0

      Hmm, Codelite is there. +1

    15. Re:Hakija by Anonymous Coward · · Score: 0

      yeah... fucking whippersnappers with their ides... lol

    16. Re:Hakija by Anonymous Coward · · Score: 1

      IDEs? VS? Come on. Real programmers use C:\copy con: app.exe

    17. Re:Hakija by Anonymous Coward · · Score: 0

      Imagine working at a place that required you to use Notepad for all development, that's Linux.

      Notepad with the ability to replace every third Q with a W unless it's at the end of the line next to a U. Even VS IDE can't do that.

    18. Re:Hakija by Anonymous Coward · · Score: 0

      "More wrong? Wrong is an absolute state and not subject to gradation".

    19. Re:Hakija by Anonymous Coward · · Score: 1

      Come on now - IntelliJ IDEA and its brethren are the best.

    20. Re:Hakija by Anonymous Coward · · Score: 0

      Xcode has gotten a lot better. They seem to be using VS / Borland type IDEs for their motivation. Good for them. I'd rate XCode as #2 behind VS.

    21. Re:Hakija by angel'o'sphere · · Score: 1

      IDE wars are like old editor wars.

      Sorry, there is nothing interesting in MS VS IDE.

      Neither does it support proper C++ nor Java ... ah, you only do VB and C# ... well what is your point then?

      Frankly: if someone claims that an IDE made by MS is "the best", I really challenge his IQ.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    22. Re:Hakija by cheesybagel · · Score: 1

      Don't be stupid. IntelliJ, Netbeans or Eclipse are at least comparable if not better than Visual Studio if you compare Java with C# development. The C++ support maybe be lackluster but you would be better off with a good text editor like Sublime Text than a buggy IDE for something like that anyway.

    23. Re:Hakija by cheesybagel · · Score: 1

      VS is crap. It only becomes useable with add-ons like Resharper.

    24. Re:Hakija by Anonymous Coward · · Score: 0

      I do C and Java development (I don't go near C++), and Eclipse is by far better than VS for those. The C++ support may be better in VS, but Microsoft have done everything in their power since the mid 90s to try to pretend that C doesn't exist any more. Current versions of VS _still_ don't even support C99.

    25. Re:Hakija by Anonymous Coward · · Score: 0

      learn VS/C#, eat your own bullshit.

      Is that what learning VS/C# is like? Ew.

    26. Re:Hakija by ILongForDarkness · · Score: 1

      I totally agree. Linux devs live on the command line so much that they think if you have syntax highlighting you have an IDE. How about remote debugging? How about well designed UI designers that also have an XML/HTML like codeable component (Java comes close here I suppose), multiple languages sharing the same intermediate language, etc. Then there is the tooling, fairly well supported ORMs, plugin ecosystem, integration with THE major OS, THE major office suite, one of the major DBMSs, one of 2 mainstream cloud providers etc.

      If you are coding for Linux that is one thing. But if you are coding business productivity software you usually have a reason to make things work well with MS products. VS just works out of the box for 99% of those scenarios versus lots of late nights figuring out how to do office interop via COM from Ruby using Emacs or whatever. Given that my time in a couple weeks is easily worth the cost of an MSDN license (let alone all the free stuff coming out now) I know what IDE I'm using. Now if I was working for someone making the hardware to run the POS systems on in the first place yeah I might go for a FOSS solution and get the specs of the device as far down as I can but given I'm making business software to either customers already running windows or customers with such high margins that my time is worth more than the cost of spinning up a couple more instances of windows VMs: I'll use whatever is easiest for me.

    27. Re:Hakija by ILongForDarkness · · Score: 1

      Mah IMO git is still pretty broke in 2013, hopefully they fix it for 2015. Lots of common features weren't there: cherry pick, rebase, gated checkins etc. You essentially could use the features you learn with git on day one but you have to throw away your continuous integration system to do it. We use git at my work but we use Jira/Stash for bug tracking/source control, and Jenkins for CI because we found TFS too broke under git and common things (admittedly not necessarily the best git work flow) like cherry picking from a release branch into the current dev branch required jumping over to git extensions/command line anyways.

      If they fix Git support, or you can live with the legacy workflow TFS is again probably best in breed: nothing else integrates bug tracking, CI, and reporting so well. Web based solutions like Atlassian supplies just end up being a sea of links to other services you are paying for and you quickly run out of room for new tabs in your browser, FOSS tools I've dealt with each seem to fit a piece of the puzzle but need hours of massaging to get them to talk to each other. TFS: next, next, install, wait 10 minutes and you are 90% there and you get it with MSDN anyways so you might as well try it if you are a MS shop.

    28. Re:Hakija by csirac · · Score: 1

      To be fair, I do actually do remote debugging in vim with vdebug, but I guess my vim is pretty blinged out. It's no VS of course. And perhaps I'm being ignorant about what it is you actually mean by multiple language support, the toolchains all do this with varying levels of success but I get that managing it can be painful (hence things like pootle).

      Virtually my entire career of the last 8 years has been doing productivity software in *nix, so hearing about "THE major [foo]" seems a bit shrill. I did maintain a windows port for something at a previous company, though - Qt wasn't too bad, but again, not as painless as a greenfield app done in .NET would have been but windows wasn't the core business. It's a pity the gnome project has driven any decent devs out of the community, those windows-hating clowns have pretty much doomed Glade's future.

    29. Re: Hakija by Anonymous Coward · · Score: 0

      codeblocks, kdevelop ? i wouldn't call them abysmal...

    30. Re:Hakija by phantomfive · · Score: 2

      Yup. I develop on Microsoft, Linux, and OS X, and anyone who thinks there are better IDEs than VS are fucking delusional.

      I'd love to hear your reasons.

      Maven is so much better than Nuget that it would be worth using Eclipse just for that.
      The way Java sets up projects is better. If you know the package, you know where the file is located.
      VS doesn't even compare to Eclipse/IntelliJ unless you buy the IntelliJ plugin for VS.
      IntelliJ has better integration with git/svn/cvs/mercurial.

      On the other hand, if all you want is drag-and-drop buttons, then you're right, VS is better. But in that case you won't be charging much no matter what platform you work on. :)

      --
      "First they came for the slanderers and i said nothing."
    31. Re:Hakija by phantomfive · · Score: 2

      Here's a funny thing:
      I recently read an interview with Anders Hejlsberg. He literally said, "My primary debugging tool is Console.Writeline." The guy who is in charge of creating the C# language at Microsoft, uses print statements for debugging. That tells you something.

      --
      "First they came for the slanderers and i said nothing."
    32. Re:Hakija by Anonymous Coward · · Score: 0

      Eclipse is horrendous. It is a UI disaster. Half the time you can't get the extensions that you need to work. I question whether you've seriously used it, or if you've seriously used VS.

    33. Re:Hakija by fractoid · · Score: 2

      Nor, to be fair, is it often called upon to do so.

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    34. Re:Hakija by hattig · · Score: 1

      IntelliJ is a whole level above Eclipse, in my experience. I used to use Eclipse only, for many many years, but since using IntelliJ I can see that the difference is night and day.

      In my opinion, the person asking this ask slashdot should learn Java backend/middleware and Javascript Front End programming, because I've talked to a lot of businesses in the past year, and that's the model they are moving to, from Windows Forms front-ends for simple data presentation. Maybe his clients aren't right now, but one day they might, and his market is going to shrink.

      If the users just want interactive reports, then it may be that using report generation software (Splunk, Birt, etc) is the sane way forward, rather than writing custom platform-specific tools.

    35. Re:Hakija by sproketboy · · Score: 1

      IntelliJ IDEA.

    36. Re:Hakija by Anonymous Coward · · Score: 0

      It doesn't tell me anything. I use Console.Writeline quite a bit as well. It's either that or setup a bunch of watches. What does that tell you?

    37. Re:Hakija by Anonymous Coward · · Score: 0

      I use IntelliJ from JetBrains all day, every day. And I haven't written a line of Java in ten years - despite the name, IntelliJ is multi-language. I found it to be a nice balance between the point-and-click but bloated NetBeans and the fast-but-black-magic of Sublime.

      Is everything about it (or any of these others) as slick as VS? Nope. But after a little acclimation time, I'm perfectly happy and very productive with it.

    38. Re:Hakija by Anonymous Coward · · Score: 0

      I totally agree. Linux devs live on the command line so much that they think if you have syntax highlighting you have an IDE. How about remote debugging? How about well designed UI designers that also have an XML/HTML like codeable component (Java comes close here I suppose), multiple languages sharing the same intermediate language, etc. Then there is the tooling, fairly well supported ORMs, plugin ecosystem, integration with THE major OS, THE major office suite, one of the major DBMSs, one of 2 mainstream cloud providers etc.

      There's not a whole lot to your argument for VS. Multiple languages sharing the same intermediate language is a .NET feature and not really relevant to VS. Nor is remote debugging (which must be something new to VS programmers because it's been around forever). XML/HTML editors? Really?

      There are plenty of good screen designers like those for Qt and JavaFX.

      If you haven't guessed, this MCP has never thought much of Visual Studio. It's great if you can't have anything else installed, which is usually the case with Windows machines, but Linux provides so many tools, why limit yourself to MS's crappy implement of said tools?

    39. Re:Hakija by phantomfive · · Score: 1

      It tells me that IDEs and debuggers aren't all that useful lol. Did you know VS has an option where you can rewind the code and run it again? It records the state on every line that gets run. It's really cool. I haven't figured out an effective use for it yet.

      --
      "First they came for the slanderers and i said nothing."
    40. Re:Hakija by slapout · · Score: 1

      For a guy who is designing/testing new language features (that don't have tooling support yet) I imagine he does use the console a lot.

      --
      Coder's Stone: The programming language quick ref for iPad
    41. Re:Hakija by phantomfive · · Score: 2

      That's an interesting thought, but he went on to say, "To be honest I think that's true of a lot of programmers....quite often you can quickly get to the bottom of it just with some simple little probes." (this comes from Masterminds of Programming).

      --
      "First they came for the slanderers and i said nothing."
    42. Re:Hakija by angel'o'sphere · · Score: 1

      My point is: if you know where to place a print line you can as well place a breakpoint there. Or a conditional breakpoint, or a breakpoint that executes code (e.g. said print line)

      The advantage is you don't modify the source (check it in, forget the print line etc.) and you can disable and reenable breakpoints easily.

      On the other hand I met quite a lot of "good developers/programmers" who could not use a debugger effectively.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    43. Re:Hakija by phantomfive · · Score: 1

      My point is: if you know where to place a print line you can as well place a breakpoint there.

      lol really? I thought your point was " if someone claims that an IDE made by MS is "the best", I really challenge his IQ."

      Most of the time it doesn't really matter, breakpoints or print statements, sometimes breakpoints are better; when print statements are really better is when you want to quickly examine every iteration of a loop because you don't know exactly which iteration has the problem....you can put a print statement and see them, and compare them, and don't need to press next a bunch of times.

      But the most important thing is that you actually test your code before committing. You'd think that's obvious, but a lot of people don't.

      --
      "First they came for the slanderers and i said nothing."
    44. Re:Hakija by angel'o'sphere · · Score: 1

      That was my point the post a few days back :D

      Most people proclaiming that one IDE is the best simply don't know (m)any other(s).

      I only use print statements if I can pipe them into a file and have several print statements correlated to the same "problem".

      Otherwise I consider them a waste of time ... but well, everyone has his one "approach" which usually works "for him".

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    45. Re:Hakija by phantomfive · · Score: 1

      There's a story back in the day of a programming contest in silicon valley. Everyone got the new time-sharing machines except they gave Donald Knuth an old batch machine. He was walking back and forth carrying punch cards. He finished before everyone else, and his solution ran faster.

      They asked him how he did it on that old computer, and he said, "When you have a computer that bad, you really think before typing. It's like carving in stone."

      That's the story I think of every time I hear people arguing over editors.

      --
      "First they came for the slanderers and i said nothing."
    46. Re:Hakija by angel'o'sphere · · Score: 1

      Never heard about that story :D

      But I'm often accused for not working because I sit around and drink tea.

      The code I write is often 10% the size other coworkers write ... but I also managed like 200%, no idea :D

      But I like to think and to code like I'm on an old school terminal.

      Our day modern IDE powered code looks like this: obj.method(args).method2(args2).method(args).method3(args3).method(args). ... etc. not really the "meaningful code" I like. Except in "fluent frameworks" or "builder pattern" situations.

      And for that kind of code any IDE with "intellisense" (actually: auto completion or completion suggestions) is "good enough".

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    47. Re:Hakija by phantomfive · · Score: 1

      Speaking of intellisense........

      When I first saw it, I thought, "hey, that's really cool, I like that." Soon I got worried and I thought, "I'll bet there will be poorly built projects that are impossible to understand without intellisense." Sure enough, at my next job I started working on a codebase that was impossible to work with without Intellisense. Intellisense had become the central organizing methodology.

      Here's the orginal quote about the programming contest. I haven't found its original source, but I believe it was said by Alan Kay.

      --
      "First they came for the slanderers and i said nothing."
    48. Re:Hakija by Anonymous Coward · · Score: 0

      Why 3? Can you name 3 .Net-ide's?

    49. Re:Hakija by Anonymous Coward · · Score: 0

      There's a reason I charge a hell of a lot more to develop on Linux and OS X vs on a MS platform.

      Let me guess? Incompetence?

    50. Re:Hakija by Anonymous Coward · · Score: 0

      Very true. On projects where it's reasonable to let the IDE dictate the application platform, there aren't much money to be made...

      On Microsofts platform there are no choices, hence VS is the best, per definition. On best-of-breed-platforms there are lots of choices, what's best depends on the task at hand, and the preferences and skills of the individual developer.

      The truth is - buttons and menus doesn't really help that much, what it really does is locking your skill set into a tool that has a large set of limitations too.

      I usually work on large projects using Java. The stuff often runs on Linux servers and Microsoft virtualisation. Developers use Windows, Mac and Linux. Most use IDE's like IntelliJ, Eclipse and Netbeans, and some use vi. Until this day I've not noticed any toolset that "stands out", the best tool is defined by the developers individual skills and preferences. True, many prefer IntelliJ, including me, but I've still been outperformed by the "vi-guys" many times.

      You are the most important resources in any project, not the toolchain!

    51. Re:Hakija by phantomfive · · Score: 1

      The truth is - buttons and menus doesn't really help that much, what it really does is locking your skill set into a tool that has a large set of limitations too.

      Yeah. For a while I was working on an ASP.net project, which lets you drag-and-drop buttons, or you can write the HTML/ASP by hand. At first I was dragging and dropping stuff, but soon I switched to the HTML because it was so much easier.

      You are the most important resources in any project, not the toolchain!

      Well said, very true.

      --
      "First they came for the slanderers and i said nothing."
  2. REALbasic by Major+Blud · · Score: 1

    Have a look at Xojo. It used to go by the name REALbasic.

    --
    If you post as Anonymous Coward, don't expect a reply.
    1. Re:REALbasic by Anonymous Coward · · Score: 0

      I just to use Xojo back when it was still called REALbasic and back then it was clearly targeted to Mac development, but worked OK on Linux and Windows. Not sure how well it works now, but would absolutely try it out.

    2. Re:REALbasic by they_call_me_quag · · Score: 2

      Xojo (as it's called today) is definitely worth a look. You can download the IDE and try it out for as long as you like. They only charge you for a license when you want to compile a standalone app.

    3. Re:REALbasic by Anonymous Coward · · Score: 0

      Is is only 32 bit right now. Xojo says 64 bit is coming in 2015...famous last words.

  3. MySQL GUI tools list by shmorhay · · Score: 2, Informative

    Here is a Database Journal article from 2010 listing some useful MySQL GUI development tools that may provide some leads -- http://www.databasejournal.com...

    1. Re:MySQL GUI tools list by Anonymous Coward · · Score: 2, Funny

      Here's some five year old crap I googled up rather than not posting anything at all.

    2. Re:MySQL GUI tools list by Anonymous Coward · · Score: 0

      Criticism is easy, n'est-ce pas? Where's your insightful/informative comment? I know I shouldn't feed the trolls, but your brand of negativity simply isn't needed.

  4. Lazarus by Tablizer · · Score: 5, Interesting

    Look into the Lazarus project. It's a Delphi semi-clone.

    1. Re:Lazarus by Anonymous Coward · · Score: 1

      I totally agree.
      IMO the best open source developement platform there currently exists, and still improving. The choice for smaller scale projects

      Similar experience with Delphi : is also cross platform, a littlebit faster, language is a littlebit more extended . More third party components, more debugging, code refactoring etc etc. The choice for commercial developement. Unmatched productivity.

      In short : if you want to get a job and work for other people choose java, c++, c#, python .
      If you work for your selves and require high productivity, choose depending on budget either Lazarus or Delphi.

    2. Re:Lazarus by Harlequin80 · · Score: 1

      Be aware that in my experience Lazarus isn't seeing a lot of updating and had stagnated with some difficult bugs (for us amyway). We moved away from it in the end we went with Qt

    3. Re:Lazarus by Anonymous Coward · · Score: 0

      Not as well known as Lazarus but there's also MSEide+MSEgui: http://www.msegui.org/. It's an IDE and component set built on FreePascal which offers GUI and database access components.

    4. Re:Lazarus by Anonymous Coward · · Score: 0

      And depending on your server system you could also use Delphi in combination with VirtualUI to project the user interface to anything with a good enough HTML5 browser. It's pretty cool.

    5. Re:Lazarus by jma05 · · Score: 1

      What advantages does MSEide+MSEgui have over Lazarus? When I looked at it a few years ago, it seemed way behind Lazarus in every way.

    6. Re:Lazarus by Tablizer · · Score: 1

      Tools often assume or are built around certain patterns or ways of doing things. If you force it outside of those ways, odd things happen. It just may be that Qt more closely fit your original vision than Lazarus.

      I remember working with Oracle Forms. If you do things according to its assumed look-and-feel, things go smooth. However, when we tried to force it to act like a more modern desktop GUI, it balked and the work-arounds triggered oddities.

    7. Re:Lazarus by Harlequin80 · · Score: 1

      Potentially.

      The problems I was encountering were to do with virtual trees and lists. At the time these were marked as known bugs in lazarus.

  5. Java by Anonymous Coward · · Score: 0

    C# is basically MS Java. Just go and develop in Java. Why make it hard on yourself?

    1. Re:Java by Sowelu · · Score: 2

      C# is basically MS Java. Just go and develop in Java. Why make it hard on yourself?

      You'd normally be correct, but UI is the one place where they are fairly different. Speaking as a dev who's switched between C# and Java just about every job for the last ten years, that's the only thing that gives me a headache.

      My last job was a Windows client that used Silverlight for its UI. It really made me appreciate how much I like Java web development.

    2. Re:Java by Anonymous Coward · · Score: 0

      How about Java FX 8?

    3. Re:Java by tom229 · · Score: 2

      Netbeans makes working with swing forms a breeze. I'd like to vote for java as well.

      --
      If it ain't broke, don't fix it.
    4. Re:Java by AqD · · Score: 5, Insightful

      How about Java FX 8?

      Being actually using it for half of a year. It's a significant improvement over Swing and definitely superior to winform or GTK#, not so over WPF.

      A few problems with it:

      • * The data-binding/observable mechanism isn't directly compatible with old Java beans. The mechanism is the only reason I choose JavaFX. It also requires some learning and adaption to get used to the programming style but definitely worth it.
      • * Toolset is incomplete and you wouldn't even find any IDE with proper FXML support
      • * Documentation isn't too good and you'd need to read source code instead. The code is quite readable though.
      • * Lacks some basic controls (dialogs will be in next release) and you'd need 3rd-party libraries from the start (ex: ControlsFX).
      • * Loading complex UI takes time, as can be seen from their own demo Modena. Instead of constructing everything at once (as can be done in Qt or WPF without problem), you might need to manually lazy-load parts.
      • * Be careful of weak references/events used everywhere in JavaFX. Things could be GC'ed when you don't think they're supposed to be.
      • * Oracle deprecated the fluent builders API in v8. I recreated the generator and the API here JXTN which is also customizable
      • * It cannot embed native controls/widgets, though it can be embedded into others such as Eclipse RCP/SWT, as what I'm doing now.

      .
      .
      I don't think you'd find a better cross-platform choice. However it'd be very unsuitable for tighter integration with Linux desktop (notifications/WM/process/shell controls etc).

    5. Re:Java by Livius · · Score: 1

      C# just looks like Java. It's really Delphi.

    6. Re:Java by Simploid · · Score: 1
      I have been using Javafx for over two years and javafx 8 for about a year. It's modern take on rich GUI and I highly recommend it. That said, I haven't used it much with linux or Mac.

      Javafx is newer than most others and the major challenge I see is not having an established application framework available for it. This means unless you're planning to use for the long run, you might have it easier with other application stacks.

      Another thing to keep in mind is that other technologies like QT are available on mobile platforms while Javafx8 is not. Officially, Oracle has not committed itself to address this but there are some promising projects outside oracle that are doing this.

      Off the top of my head

      Pro:
      Multiplatform, same app will run in Windows, Linux and Mac. No official mobile platform support though.
      You can embed HTML and existence of WEB controls
      Nice separation of GUI, styling and code. You can use FXML for GUI layout and CSS for styling.
      Java tools and libraries are readily available to use and all advantages of Java are there!
      Comes standard with Java8
      Good performance as a result of using graphic acceleration.
      Good data binding with controls

      Cons:
      Last I checked, no proper application framework. This is not a big deal For a simple application!
      No controls to directly integrate with database
      All disadvantages of Java!

      The easiest approach is to go with whatever is closest to what you already know. If you know Java or want to learn it, then I strongly recommend Javafx. Let me know if you need some help or advice.

    7. Re:Java by Anonymous Coward · · Score: 0

      Though largely correct I feel like I must point out that the official javafx scene builder is awesome at visually creating interfaces. IIRC it can even be integrated into eclipse.

    8. Re:Java by chooks · · Score: 1

      JavaFX is definitely an improvement over Swing. One other big improvement is its use of annotation based injection (@FXML annotation) to reduce lots of boiler-plate code to handle events from the UI and such.

      As to IDE support, Oracle's SceneBuilder is OK - not the best but it can be helpful in getting layouts set up.

      I really hate Swing but find JavaFX very nice to work in.

      --
      -- The Genesis project? What's that?
    9. Re:Java by AqD · · Score: 1

      SceneBuilder is more like a toy or showcase of JavaFX itself. It can't even discover 3rd-party controls from your own code and there is zero support for expression.

      With their deprecated JavaFX builders you could build UI much easier, like:

      JFX.borderPane() .top(JFX.toolBar() .items(
                              JFX.button().text("update") .bindDisable(this.activeProperty.not()) .onAction(e -> this.doUpdate()) .build(),
                              JFX.separator().build(),
                              JFX.label.text("Scale: ").build(),
                              JFX.slider().min(0.1).max(1.0) .bindBidirectionalValue(this.scaleProperty) .onMouseClicked(e -> System.out.println("clicked!") .build(),
                              JFX.label .bindText(this.scaleProperty.asString(
                                              s -> String.format("%.0f%%", s.doubleValue() * 100))) .build()
                      )
              ) .center(...) .build()

      Imagine how much extra mouse dragging and typing you'd need to make that with FXML in scene builder and code the controller.

  6. Biased, but... by tyroneking · · Score: 4, Informative

    I'm biased towards Python - and the following suggestions have nice UIs but they are web-based - so please forgive me in advance ;)

    After years working in Siebel (UI dev tools, transparent database interface, etc) moved over to Linux dev and was stuck for a while - finally settled on Flask (http://flask.pocoo.org/) a Python micro-framework, which is light (i.e. not as incomprehensible as Django ;) but comes with a lot of functionality if you need it. Jump in. Here's a good guide that mixes in Bootstrap to make a very appealing UI - http://flaskbook.com/

    Alternatively, go all ERP with lots of built in business functionality and nice UI features and try ERP Next (https://erpnext.com/) - which I'm looking at right now. It has some poor documentation, but the dev guide for the underlying framework (Frappe) is pretty clear (e.g. https://frappe.io/developers/g...) and looks less scary.

    1. Re:Biased, but... by blueshift_1 · · Score: 1

      I have to agree - python just makes life easier.

    2. Re:Biased, but... by Anonymous Coward · · Score: 0

      I'd recommend not using Python, despite being a Python fan. The DBI is a complete mess thanks to the multiple methods of passing args. You want your application to be as DB agnostic as possible, but Oracle, PostgreSQL and MySQL python modules all do things differently. You can use middleware like SQLAlchemy or elixir, but they'll shit on you as soon as you turn your back with basic functionality changes that'll break your code, so they shouldn't be used remotely close to anything business related.

    3. Re:Biased, but... by TechyImmigrant · · Score: 2

      My small business runs on python, and as much as possible, text mode and command line programs.
      The (non technical - it's a yarn store) staff quickly decided they loved it, compared to the slow, pointy, clicky software they had dealt with before (I'm guessing its usually Intuit).

      Need a point-of-sale program to check someone out? type 'checkout'
      Want an annual year end stock report for 2014 taxes? Type 'annual_stock_report 2014'
      etc.

      Eliminating the GUI eliminated huge amounts of complexity and flattened the learning curve.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    4. Re:Biased, but... by Maury+Markowitz · · Score: 1

      > t Oracle, PostgreSQL and MySQL python modules all do things differently

      But so do the underlying DB's. That might sound like deflection, but considering that there's still no way to do cross-platform "return the first 10 rows" on the DB, I'm willing to give the API guys some leeway.

    5. Re:Biased, but... by vux984 · · Score: 2

      "Want an annual year end stock report for 2014 taxes? Type 'annual_stock_report 2014'
      etc."

      Want to file your payroll taxes for january? "Type "file_payroll_taxes 01 2014"

      Want to view your receiables type "list_receivables"
      Want to filter that list to anything over 3 months?
      Type "list_receivables filtered to aged>90 days" ? Was I close? Probably not close enough that I just got what I wanted.

      But put me in front of a GUI and I'll find them efficienltly enough; no training required.

      "Eliminating the GUI eliminated huge amounts of complexity and flattened the learning curve.

      I doubt that very much.

      But there are some truly excellent off-the-shelf point of sale systems (the restaurant industry for example has some great ones). Most of the really 'terrible ones' out there these days are usually terrible because they're layered on 20 years of previous systems, and are windows 7 layers on top of windows 95 wrappers of OS/2 terminal apps.

      The good ones today, usually integrate with off-the-shelf accounting packages which while more complicated than yours are widely used and you can easily hire people who already know them; or can send them to 3rd party training if really necessary.

      Not that there is anything even slightly wrong with your small business or anything like that; it works for you. I just think your wrongly critical of what's available.

    6. Re:Biased, but... by Anonymous Coward · · Score: 0

      And also cuts development time in half.

      I swear I spend just as much time on the actual complexities and requirements of the code as I do on the GUI of that code.

      Why? Because people are retarded. You really need to design your GUI so that a toddler can figure it out. Which in turn somehow requires more from the backend, increasing complexity, increasing cost, decreasing performance, and increasing my headache from ~6 to a ~7.5...

    7. Re:Biased, but... by Anonymous Coward · · Score: 0

      /r/thatHappened

    8. Re:Biased, but... by tyroneking · · Score: 1

      First - why db agnostic? A normal business would normally just pick one db and stick with it.

      Secondly - SQLAlchemy only changes if you upgrade the version, which you never have to do.

  7. outsource the work by SethJohnson · · Score: 1

    Have you thought about hiring a programmer to do this stuff? It's probably going to save you a lot of time and hassle to go this route than actually doing it yourself.

    1. Re:outsource the work by hawguy · · Score: 1

      Have you thought about hiring a programmer to do this stuff? It's probably going to save you a lot of time and hassle to go this route than actually doing it yourself.

      By using libraries and tools to do the nitty gritty work, he's essentially paying a team of programmers to do this stuff (and likely paying a fraction of the price he'd pay if he did it himself)... or, if he goes the open source route, he may be getting the output of that team of developers for free. If he has to write everything himself (even if he hires another developer to do it), he's committed to supporting that work himself forever, no one is going to port it to a new platform for him, no one is going to issue security patches for him, and his own customers are going to be the only ones that discover bugs in the code since no one else is using it.

  8. I'd consider Go and PostgreSQL by MillerHighLife21 · · Score: 4, Informative

    Go is still young so if you're looking from a "language saturation" standpoint, it's not where you want it to be yet but it's gaining traction fast. It will be familiar from a typing standpoint and as a language it provides excellent concurrency, which in certain types of applications becomes a really big help. By learning Go you'd be providing yourself with a language that helps solve a complicated use case rather than just another language that does exactly the same things as other server side languages. It's compile time is almost instantaneous which is similar to a scripting language. Runs well on both Windows and non-Windows environments too, which will make it easier to use it along side your existing .NET stuff if needed.

    PostgreSQL as a database is pretty much amazing. Everything you like from SQL Server is there without a lot of the stuff that you don't. Here's a writeup that I did a few months back breaking down what's great about PostgreSQL in as concise of a post as I could. http://www.brightball.com/post...

    Since this is a specific "what should I learn based on my current background" type question, that's my recommendation for YOU based on the post.

    --
    "Don't teach a man to fish, feed yourself. He's a grown man. Fishing's not that hard." - Ron Swanson
    1. Re:I'd consider Go and PostgreSQL by MillerHighLife21 · · Score: 1

      Actually, that will only help you with web based stuff. Go doesn't do any UI stuff (that I know of, but I haven't looked hard) so it might not be what you're looking for.

      --
      "Don't teach a man to fish, feed yourself. He's a grown man. Fishing's not that hard." - Ron Swanson
    2. Re:I'd consider Go and PostgreSQL by greg1104 · · Score: 4, Informative

      That's a nice outline of Postgres features; small and very pedantic correction for you. CREATE INDEX CONCURRENTLY in PostgreSQL isn't really asynchronous, since the client running it is stuck there waiting for it. And it does still need a full table lock to complete. It just only needs that for a brief moment in most cases, to install the index when it's built. But that's not guaranteed. I added a caveat to the docs a version or two ago that warns about the bad case; see building indexes concurrently, in particular the bit starting with "Any transaction active when the second table scan starts..." It's really rare that happens, but if you have long-running transactions eventually you'll run into it painfully.

      I would restate the situation as "You can even create indexes with minimal locking of large tables when a new index is added". The code can't quite avoid locks altogether and remain transaction safe.

    3. Re: I'd consider Go and PostgreSQL by Anonymous Coward · · Score: 0

      Will make the edit

    4. Re:I'd consider Go and PostgreSQL by Anonymous Coward · · Score: 0

      Porting from SQL Server to PostgreSQL is very easy. PostgreSQL's syntax is like a merge of Oracle and SQL Server syntax. If you happen to know both Oracle and SQL Server, then you already know PostgreSQL. This is also great for your employment skill sets. Of course, you have to guess which of those two syntax's to use, but that is easy. Also, it has great documentation: http://www.postgresql.org/docs/ If you like the MSDN, you will like this. PostgreSQL also has both text based and binary JSON formats, so you can keep up with that trend if you care to. MySQL's syntax seems to be written by a web developer who did not care for SQL, databases, or good coding practices. They just wanted a SQL like front end to a file system and took whatever hackish shortcuts they could.

    5. Re:I'd consider Go and PostgreSQL by Anonymous Coward · · Score: 0

      This is one of the things that I love about PostgreSQL. It makes guarantees and stays transaction safe. The reason why the client that created the index has to wait until the index can go in is to report back if there is a failure because some transaction in progress violated the unique index that you may be adding.

  9. Java FX by cyronix99 · · Score: 2

    Java FX is your friend

  10. If you really don't like web apps by OrangeTide · · Score: 2

    Then you should either write your own QT controls (and sell them or open source them). Or stick with Windows.

    I think POS is fine as a web app, as you can run a browser on any POS these days, and have it communicate to a small stub on localhost so that local operations (like system management) and cached/offline operations can still work in case the POS is temporarily disconnected.

    That opens you up to doing a mix of javascript for the GUI part, and the server back-end in C++, Java, Python, Ruby, NodeJS, Haskell, whatever. There are good server frameworks for just about all of those (except maybe C++).

    --
    “Common sense is not so common.” — Voltaire
    1. Re:If you really don't like web apps by gbjbaanb · · Score: 1

      In C++ you just don;t want a framework, you want libraries that do the heard work for you as you provide the application logic.

      For web servers/services, there are a lot of "embedded" libraries that are brilliant. Mongoose or NxWeb come to mind, best thing about them is that they are really easy to use and you don't need to learn a huge amount of "magic" ways that a framework has decided that you'll work in.

    2. Re:If you really don't like web apps by OrangeTide · · Score: 1

      Agreed there are a lot of tools at a developer's disposal. The original point was why not use web development for this project. Linux's GUI is not great in my opinion (long time Xlib, GTK+, XForms developer), but web GUI is mature, fairly easy to develop and can be combined in new and interesting ways.

      --
      “Common sense is not so common.” — Voltaire
    3. Re:If you really don't like web apps by gbjbaanb · · Score: 1

      I agree, web dev is getting so good even Microsoft is not only embracing stuff like Cordova but is saying its a great way to write Metro apps!

      Personally, I just like the way it forces people to design their programs into client and server sides, hopefully making a good, reusable API on the latter.

    4. Re:If you really don't like web apps by angel'o'sphere · · Score: 1

      I guess you mean the opposite.
      You just don't wand libraries but frameworks that do the hard work for you.
      You are one of the many who don't grasp what the difference between a framework and a library is. But you are the first one who completely exchanges the meaning of both words.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    5. Re:If you really don't like web apps by OrangeTide · · Score: 1

      Even 25 years ago we would see various ads selling "C++ Frameworks" and "Toolkits" being sold in the back of the programming magazines. These would range from a library of GUI controls that may or may not be extended and that often featured the ability to to be added on to an existing application without altering its basic flow (so caller gets to drive the activity instead of the library/framework, not very frameworky). You might be placing a narrower definition on the word "framework" than exists in the software industry as a whole. Perhaps a definition that is more specific to the industry that you work in.

      An example of something that I consider a framework that others do not is GLUT. (yes, it's very old. and it's C not class-based).
      A less controversial example in C would be Athena Widgets (aka Xaw). It has most of the properties people associate with modern frameworks, even if the way it goes about things is terrible. (nor very C99-friendly)

      --
      “Common sense is not so common.” — Voltaire
    6. Re:If you really don't like web apps by gbjbaanb · · Score: 1

      No, I understand them completely.

      A library will do the hard work for a limited section of what you need, like a XML parser library will give you functions you can use to manipulate your own XML, or a SSL library that will manage the hard work of encryption. Nice and easy, neatly compartmentalized to do 1 thing (hopefully well).

      A framework bundles a load of these in, and then also provides you with a load of "boilerplate" that helps you do things the framework is designed to do - eg a web site framework that adds routes and templates for you - so all you need to do is put application logic in the spaces marked "todo".

      The problem is that most frameworks do far more than I like, so if you want to step outside what they do, or the way they do it, you're SOL. Similarly, I find that I can more easily create the same functionality using libraries.

    7. Re:If you really don't like web apps by angel'o'sphere · · Score: 1

      No, I understand them completely.
      Well your example for a framework is not a very good one, so I doubt it :D

      A framework bundles a load of these in, and then also provides you with a load of "boilerplate" that helps you do things the framework is designed to do - eg a web site framework that adds routes and templates for you - so all you need to do is put application logic in the spaces marked "todo".
      Oki, in a non oo language like C ... that would perhaps qualify as a framework.

      But I guess true frameworks like ET++, Think Class Library, Mac App, Bedrock, Taligent etc. are so old and no longer en vogue that no one really realizes the power of a(n) (application) framework anymore.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  11. LibreOffice Base by chill · · Score: 2

    LibreOffice Base seems to be what you're asking about.

    http://www.libreoffice.org/discover/base/

    --
    Learning HOW to think is more important than learning WHAT to think.
    1. Re:LibreOffice Base by Tablizer · · Score: 2

      Have they improved the scripting? It used to have convoluted scripting with convoluted documentation.

    2. Re:LibreOffice Base by Anonymous Coward · · Score: 0

      mod parent up, and it supports a ton of db back ends

  12. use php + mysql by Anonymous Coward · · Score: 0

    Databases are handled with best using web services. If you switch to PHP and MySQL, you will have your work done. You will find excellent documentation and examples on net. And your app will be cross-platform.

  13. Not a joke, Microsoft is open sourcing good bits by Anonymous Coward · · Score: 0

    I agree except that you don't need Microsoft SQL Server. The C# Entity Framework works just fine with Open Source servers. Also Visual Studio Community 2013 is now fully featured for teams of up to five.

    Next version of ASP.NET 5 (aka vNext) which contains MVC6 and Web Api is open source, and it runs already on linux rather easily taken the fact it's just unleashed. After working on Python and Django for years, the C# is godsend with IDE that knows the types. (Soon though Python may support gradual typing since Guido is interested to bake mypy in the Python, but that day is not here yet)

    The developer tools are abysmal on Linux side, if you can use Windows to develope your linux applications you are pretty well off.

  14. GTK by DarkOx · · Score: 1

    GTK actually has lots of good widgets for 'data' not sure what that means exactly, forms, spreadsheets that stuff is there, but you are correct anything complex you will have to build up from more basic controls. I would also characterize GTK as a royal PITA even with glade.

    Why don't you like web for POS? Honestly there are plenty of great 'data' interfaces. Building your app an in-process webserver that just binds 127.0.0.1 on some high port. There are plenty of frameworks out there that should make building a POS app UI a breeze and because your app is still a local process if you need to do something like trigger a cash draw that should be just as strait forward as anything else you could do.

    --
    Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    1. Re:GTK by TheRealMindChild · · Score: 2

      GTK actually has lots of good widgets for 'data' not sure what that means exactly

      It means he wants databound controls. As in, widgets that update themselves when the dataset changes and changes the dataset when the widget is manipulated

      --

      "When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
  15. Qt has model-driven views. by TurboStar · · Score: 3, Interesting

    Qt has model-driven views. Here's some videos. See #47 for a bit about model-view: https://www.youtube.com/playli... Also, be sure to catch up on C++11/14 if you do come back to us from the dark side.

    1. Re:Qt has model-driven views. by Anonymous Coward · · Score: 1

      Besides Qt has plenty of classes to deal with SQL, so I don't quite get the "Qt [...] seem to lack controls that deal with datasets and stuff".

      http://qt-project.org/doc/qt-4.8/sql-programming.html
      http://qt-project.org/doc/qt-4.8/sql-connecting.html
      http://qt-project.org/doc/qt-4.8/sql-sqlstatements.html

    2. Re:Qt has model-driven views. by Anonymous Coward · · Score: 0

      Qt's SQL is not that good (SQL types QVariant mappings are slow), but it works well enough. But that is besides the point. What he seems to be complaining about is that Qt has no data driven controls, which is ridicules.

      Then again, he's asking about "quickest to learn", which tells you something about amount of research done anyway.

    3. Re:Qt has model-driven views. by ClayDowling · · Score: 1

      And the model drive views are really powerful. The first one you write is a bit tedious, but after that it's smooth sailing. You can get that data from anywhere: text files, network packet processing, database queries.

      Qt does have database access components, but you might be happier working with a native interface. Part of the beauty of C++ is that there's a native interface to most things that's C++ compatible.

  16. GUI Datasets by StormReaver · · Score: 3, Informative

    Having programmed in GTK+, Qt, Java, and C#: I find C# to be the most painful for database interactivity. Its data bound controls (to me) are infuriatingly convoluted, complex, inefficient, and inflexible.

    I find it far, far easier to use a tool that generates database models, create readers and writers based on those models to abstract them away from the application, and then use those readers/writers in the mainline application. The payoff is immense.

    The closest fit for you is Java (since C# started life as Microsoft's attempt to make a Windows-specific version of Java). The two best IDE choices then become Netbeans and IntelliJ (do yourself a favor, and skip Eclipse).

    1. Re:GUI Datasets by Richard_at_work · · Score: 5, Informative

      You might want to take a longer look at C# because there is no reason you can't just use Entity Framework to do exactly what you find it easier to do - create the model, creates readers and writers, abstract the database stuff away and just get to use plain C# objects, lists, collections and other things instead of cumbersome DataTables or Datasets etc.

    2. Re:GUI Datasets by PmanAce · · Score: 1

      Take a look at code-first design with Entity Framework, the database creation and modeling is abstracted away, your database is created for you based on your domain driven design.

      --
      Tired of my customary (Score:1)
    3. Re:GUI Datasets by tom229 · · Score: 0

      This. Port your entire project to Java/MariaDB and then you never have to ask this question again. Make your life easy and build your forms with netbeans.

      --
      If it ain't broke, don't fix it.
    4. Re:GUI Datasets by Anonymous Coward · · Score: 0

      It's extremely obvious that you have very little knowledge of C# and it's ecosystem. You really should stay clear of offering any thoughts/advice on it. Please go educate yourself before attempting to provide any info other than asking questions on the topic.

    5. Re:GUI Datasets by Anonymous Coward · · Score: 0

      Until MariaDB is sold off, which seems to be in the planning, and becomes closed source. Then he needs to start all over again.

    6. Re:GUI Datasets by Anonymous Coward · · Score: 0

      Yeah, +1. OP is living in the past.

    7. Re:GUI Datasets by Anonymous Coward · · Score: 0

      Do yourself a favor and skip Java on the Desktop. It's often blacklisted due to its fundamental security problems and on the way back to the server.

    8. Re:GUI Datasets by Anonymous Coward · · Score: 0

      sounds like the perfect way to get a totally fucked up DB design that is in efficient and shite!!!

  17. You're picking your tool before your problem. by davidsheckler · · Score: 4, Insightful

    FIrst decide the right way to solve the problem, then look at the available tools to solve it.

    Client server is better at solving specific problems, anything graphics heavy usually. For pure data entry a straight up server side web application is usually the best choice. You don't need to support multiple client installs, just the server instance.

    For ease of development: PHP, for scalability, some java based framework (Spring, Wicket, etc...) or even Scala/Play if you feel somewhat daring.

    1. Re:You're picking your tool before your problem. by Anonymous Coward · · Score: 0

      This. PHP, with a framework if you must, and Javascript front-end.

    2. Re:You're picking your tool before your problem. by DickBreath · · Score: 5, Funny

      When the only hammer you have is C++, every problem begins to look like a thumb.

      --

      I'll see your senator, and I'll raise you two judges.
    3. Re:You're picking your tool before your problem. by Anonymous Coward · · Score: 0

      For loss of customers due to bugs and exploits - PHP, for loss of new features and slow development - Spring and Wicket.. just saying.. you might as well compare a Tesla to Suzuki.

    4. Re:You're picking your tool before your problem. by davidsheckler · · Score: 1

      I'm personally not a fan of PHP, but I'd be foolish to discount the reasons for it's success. Mainly an easy to use, stateless framework. All frameworks have bugs and exploits, PHP has more due to one of it's virtues. It's easy to pick up and develop with. So large numbers of neophytes contribute functional but buggy code.

      Spring and Wicket were mentioned as a class of java frameworks. Yes, they take longer to develop. It's a trade off.

      I think you can compare Tesla to Suzuki, both manufacture vehicles for transportation. Which is comparing a car to ... a car.

      Otherwise, what would you suggest?

    5. Re:You're picking your tool before your problem. by Anonymous Coward · · Score: 1

      ASP.NET MVC is like the Tesla, Spring MVC is like a Suzuki.. and PHP is like a Daewoo - the company that sold cars for 2 years and then left all the drivers and repair shops stranded with no parts

    6. Re:You're picking your tool before your problem. by Jaime2 · · Score: 1

      For pure data entry a straight up server side web application is usually the best choice. You don't need to support multiple client installs, just the server instance.

      Web apps are great for when you need an app to reach everyone on the Internet. Web apps are almost never the best choice if you have a captive audience. The challenges of deploying desktop apps are pretty small and approximately equivalent to the amount of effort needed to keep up to date with the march of progress in browsers. With a native app, you get to choose your own technology rather than be forced to use JavaScript for the UI tier and you get a much better user experience with less effort.

    7. Re:You're picking your tool before your problem. by Harlequin80 · · Score: 1

      This 100 times this.

      One thing that web apps always fall down on is speed and sync. If I have 100 people using a database and I want real time updating of the data that people have open on their screen you can't use a web app. In particular if you need to cause a client to redo its search because a new entry now matches their criteria.

      If you are going down a linux build path you can go down a linux front end. Then you add in puppet and all your clients are identical - new release - push, bad release, pull and its all fixed in seconds.

    8. Re:You're picking your tool before your problem. by davidsheckler · · Score: 1

      I'll concede, that if you have a captive audience, web apps versus client server possess equivalent effort to develop. As well as native clients providing a superior experience. An easy example of this would be to compare any native mobile app to a web based mobile app. Web based mobile apps often suck because they are really hard to do well.

      Though I also believe web apps are usually good enough for most data entry applications.

      Define the problem, come up with a design and pick the tools you think will work best. That's what I was trying to say. I wasn't really advocating one thing as superior to another. I was advocating right tool for the job.

    9. Re:You're picking your tool before your problem. by Anonymous Coward · · Score: 0

      1999 called, they want their Web back.

    10. Re:You're picking your tool before your problem. by Anonymous Coward · · Score: 0

      If you knew how to program, you might know how to do that!!!

    11. Re:You're picking your tool before your problem. by hattig · · Score: 1

      You aren't describing a web app there, you're describing a web page with a search form.

      There is nothing stopping dynamic, fast, real-time updates of data within a web-app. A web app will have the front end UI and a (typically json) api to the backend (ajax or websocket) which is doing the hard work of running the searches, filtering, connectivity, authentication, etc.

    12. Re:You're picking your tool before your problem. by cant_get_a_good_nick · · Score: 1

      When the only hammer you have is C++, every problem begins to look like a thumb.

      My new .signature

  18. Look at Java/Postgresql by Anonymous Coward · · Score: 2, Informative

    I've been exploring the same route. There are a lot of options but none as mature (from the developer's perspective) as what you are used to. After a lot of search and trial and error,

    I've settled on PostgreSQL for database since it is mature, fast, easy to manage, and generally solid. It's really comparable to what you are used to in MS SQL Server.

    For languages, I've settled on Java, which I swore never to do. It's not as robust as C# since there was a leadership vacuum for too long at Sun's demise and Oracle's stumbling. It's catching up, though. Just avoid using reflection. It's a dog in Java. Also, don't assume that generics are the same thing in C# as in Java. C# allows a lot of runtime generic goodness where Java allows it for coding but it compiles down differently, stripping out a lot of what you would expect. Other than that it's very close to C# in use and a stable language.

    For the IDE, I recommend going with Eclipse. It can be a pain when you are user to VS but it's the closest I've found for maturity and features. Also, being written in Java, the "eat you own dog food" test has proven useful. It's good for Java, not so much for other languages. Not that you can't do a lot with other languages in Eclipse... Lord known I've tried. Use the Kepler or later build. Older versions had some issues, particularly with source control integration. I'm on Luna and it works well on Linux AND Windows.

    Another side note: This setup works equally well on Linux, OS-X, and Windows. I've been looking for a solid cross-platform setup for years. Avoiding Java was a waste of time. I miss the C#/VS/MS stack for it's solid performance on Windows but, as you know, it was a no show for every other OS out there. This stack works on everything. It's a pain to switch but if you've been in the business for long you'll be productive again in a week or two.

    Good luck.

    1. Re:Look at Java/Postgresql by Anonymous Coward · · Score: 1, Insightful

      I've always thought IntelliJ IDEA was Visual Studio's Java equivalent. In fact IntelliJ IDEA is so much more superior to Visual Studio that they ported many of the IntelliJ features to Visual Studio in order to complete it (aka Resharper plugin). IntellIJ is also free open source unless you want to do Java EE and some other things.

    2. Re:Look at Java/Postgresql by Unordained · · Score: 2

      Firebird is also cross-platform, extremely safe and reliable, and would also be a good fit for someone with MSSQL experience.

      Firebird (was: Interbase) has a significant following in the standalone-app world (because you can deploy an app backed by a full Firebird instance as a DLL, rather than a separate server process, and later switch to the service when you want networked clients) and in the thick-client world (because Interbase was bundled with Borland Builder/Delphi).

    3. Re:Look at Java/Postgresql by Anonymous Coward · · Score: 0

      I have no idea why your comment has a score of -1. You are pretty much right on target.

    4. Re:Look at Java/Postgresql by phantomfive · · Score: 1

      I've settled on PostgreSQL for database since it is mature, fast, easy to manage, and generally solid. It's really comparable to what you are used to in MS SQL Server.

      Yes.

      --
      "First they came for the slanderers and i said nothing."
    5. Re:Look at Java/Postgresql by hattig · · Score: 1

      Apart from not suggesting IntelliJ, this comment is pretty much spot on.

      However typically he'll be integrating with his client's database, so he doesn't get to pick that - however Java has leading support for different databases and a decent ORM in Hibernate for abstracting away the database specifics.

      In addition if you want to go funkier, but remain compatible with the JVM, you've got Clojure, Scala, Jython and more.

      If the clients don't want Java on their systems, they will still be okay with it on their servers. Nothing simpler and more standard that a Java webapp in a Tomcat, and a Javascript front end to present the data dynamically to the users.

  19. Heresy Alert by Jawnn · · Score: 5, Interesting

    I'm going to get jumped for saying this, but stick with Windows for fat client development. Unless you are looking at developing web apps, you are going to be almost completely disappointed at the selection of tools available to you on Linux when compared to those for Windows. I'm not saying that there aren't tools for doing this on Linux, but dear gawd, why would you want to when the VS tools are so much easier to work with. And by "work with" I mean get work done. Use MySQL on Linux as your db server, by all means, but do your client development with what you already know.

    1. Re:Heresy Alert by Anonymous Coward · · Score: 0

      also when u consider POS may have current/future local hardware to communicate with (bar code scanner, credit card processing terminal, mobile payments...and whatever else comes up tomorrow). this has to be 100% and most likely certified from a compliance viewpoint. You might be better with windows on these.

    2. Re:Heresy Alert by Anonymous Coward · · Score: 0

      Seriously, stick with Windows and .NET for fat clients. Unless you move to an HTML/JS solution for the client. If you're set on ditching MSSQL, go with PostgreSQL, it's worth it.

    3. Re:Heresy Alert by eionmac · · Score: 1

      Good workmen always use the best tool for the job, even if it is thousands of years old. My flint knife cut seaweed beatifully when on holiday.

      --
      Regards Eion MacDonald
  20. Go web based by kdub007 · · Score: 2

    The company I work at has lots (probably 50% or more) of apps built in-house. Many of them VB6...we're still transitioning to .NET, and aren't even close. The problem we see (and part of why I was hired) is that legacy apps require legacy systems to run them. My suggestion is to go web-based. Deployment is easy, cross-platform is relatively easy, and there are lots of libraries out there for PHP or other languages to make rich user interfaces. The LAMP platform is solid and flexible, but using other languages or databases than mySQL and/or PHP is still fine. Unless you're developing apps for image editing or hard-core word-processing/spreadsheet type stuff, you can do about whatever you want using LAMP. And, the user support community is enormous.

    --
    The correct answer is 42.
    1. Re:Go web based by TechyImmigrant · · Score: 1

      I read that title as meaning you'd implemented web based tools with go.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re:Go web based by Anonymous Coward · · Score: 0

      he said he was developing a Point of Sale application. Can't do that on web. As someone who has worked in the industry and having problems because a pressed button animation took .8 seconds instead of .5, i can tell you web won't cut it.

    3. Re:Go web based by Gramie2 · · Score: 1

      I beg to differ. My former company has done it, and it's slick and beautiful. They have targeted clothing retailers, but the software could be used elsewhere.

  21. Re:Not a joke, Microsoft is open sourcing good bit by Anonymous Coward · · Score: 4, Informative

    We're looking at 2 years minimum for .Net Core to be solid and complete for Linux. I've been following this closely. Tools are totally missing as well, which you mentioned. I don't see something like Visual Studio even being ported unless MS abandons the "Windows is dominant" position. If they do, I don't expect a solid showing for VS until 2020 at the earliest. For now you are stuck with Mono, which isn't bad, it's just anemic compared to VS.

  22. The level of the language by Anonymous Coward · · Score: 0

    Some day, schools will have to start to teach students that there are languages best suited for different levels of the stack - a language used to write a hardware driver is not well suited to build a presentation layer GUI. Know what you're doing, partition the problem, and we'll all be better off.

    1. Re:The level of the language by __aaclcg7560 · · Score: 1

      My community college couldn't afford to renew the Microsoft site license when I went back to school to learn computer programming after the dot com bust. Everything was in Java, including the stack. I wanted to take assembly language but I was the only person who showed up and the class got cancelled.

  23. What about Kexi by cmachemer73 · · Score: 1

    I get the impression its kinda like MS Access

  24. Rule #1 of development: Know your requirements. by RingDev · · Score: 4, Insightful

    If you're just developing for the fun of it, have at.

    But if your goal is to have a POS application, stop writing code right now. There exist hundreds of off the shelf POS apps all ready. For Windows, for Linux, thick clients, thin clients, web, desktop, green screen, etc...

    Your time would be vastly better spent finding an existing product and adapting your business process to it. Especially if it is something that can tie into your accounting/inventory systems.

    As the old saying goes, "Good developers write good code, great developers steal good code."

    -Rick

    --
    "Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
    1. Re:Rule #1 of development: Know your requirements. by TechyImmigrant · · Score: 5, Interesting

      >But if your goal is to have a POS application, stop writing code right now. There exist hundreds of off the shelf POS apps all ready. For Windows, for Linux, thick clients, thin clients, web, desktop, green screen, etc...

      And they are all shit.
      So I wrote my own. It's not shit. The staff tell me it's not shit.

      POSs are shit because they have to attend to the general case, whereas each store is a special case. I our case, there is nothing that comes close to addressing the particular needs of a yarn store (SKUd and non SKUd goods, hand made goods, goods my weight and/or volume, consignment goods, classes, group sessions etc). Go into a yarn store and see if they check you out by slowly clicking and typing at some horrible POS, they usually do.

      If you took my POS and put it in a hardware store, it would be shit.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re:Rule #1 of development: Know your requirements. by Anonymous Coward · · Score: 0

      goods my weight and/or volume

      If you took my POS and put it in a hardware store, it would be shit.

      Do you know how nails are sold in every hardware store except those "weekend warrior" home stores? Have you watched the clerk at your local grocery store ring up your bananas(PLU# 4011)?

      They plop the merchandise on a scale, punch in a code to tell the system what type of item it's weighing, and the POS multiplies the current weight by the price of the coded item. Learning this process takes a tiny amount of time, as any current or former grocery store checkout clerk can attest. After just a couple of weeks on the job, you can memorize most of a set of 4-digit codes. The clerks at a yarn store need to learn some codes.

      I can sympathize with selling classes and group sessions, though. I've had to add that exact feature to more than one POS system. And it's never easy.

    3. Re:Rule #1 of development: Know your requirements. by Anonymous Coward · · Score: 0

      Good on you for scratching your own itch.

      I worked at a hardware store and often wanted to write our own POS.

        I actually think there would be some shared use cases with things sold by the foot. You always need to charge the customer for what they asked for but take a bit more then that out of the inventory. That is something the existing systems never did right.

    4. Re:Rule #1 of development: Know your requirements. by bmajik · · Score: 2

      Actually, I'm going to disagree here.

      I spent the last 10 years working on the unglamorous parts of the MS stack that deal with writing business software. I worked on ERP systems (big stuff, big money) and small stuff (VS Lightswitch).

      It turns out that there are zillions of little apps that make businesses run. Some of them are no more robust than an excel workbook on a well known file share. Some are Access applications. Lots of VB6 apps are still keeping businesses running.

      Integrating with existing systems is notoriously hard. The larger a system is, the more likely you are to need a VAR/integrator for an industry specific vertical to build customizations for you.

      There is absolutely a need for tooling to build business critical apps - forms over data, basic workflow, reliable data storage, etc.

      It is possible to roll-your-own on each of these pieces, but it turns out that tailoring any of them for business app usage, much less stitching them all together into some sort of recipe or middleware... is hard.

      However, the smaller the problem domain is, the larger the advantage in NOT trying to integrate or use off-the-shelf software.

      With LightSwitch, you can write a 1-5 form productivity app in a few minutes that will let a small team of people do data entry, with basic validation and reliable storage underneath. This makes it great for volunteer organizations and other low time / low budget endeavours...

      I'm very interested to see if other people have had positive experiences apart from Lightswitch... our customers tell us its the only tool quite like it... unless you go back to PowerBuilder or something along those lines...

      --
      My opinions are my own, and do not necessarily represent those of my employer.
    5. Re:Rule #1 of development: Know your requirements. by TechyImmigrant · · Score: 1

      Yes. That's somewhat one of my points. There are individual problems to address, but the particular mix tends to be unique for small stores and the number of possible problems is huge, so any 'complete' POS will necessarily have a billion features that require a huge amount of UI or configuration and customization.

      Writing a minimalist POS with functions matched to the business seemed like less effort to me. A better tool might be a POS library that makes it less effort to put a custom POS together.

      I've had other shop owners who walked into the store ask where they can buy the POS software we use. I'm not into running a retail software business, but after I've abstracted away some particulars (like hardwired database addresses) I may open-source it.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    6. Re:Rule #1 of development: Know your requirements. by TechyImmigrant · · Score: 1

      >After just a couple of weeks on the job, you can memorize most of a set of 4-digit codes. The clerks at a yarn store need to learn some codes.
      They do. There's codes. If you can't remember, press 'n' for 'numbers' and it'll bring up a list. Most things have the SKU written on them, but some things don't (gift cards, bulk fleeces (sheep don't have SKUs) etc) so you need to remember those or use the list.

      I actually got that part from observing a local hardware store. The primary thing is to type in (or scan) a number. No clicking or bringing up forms or anything. So the thing a POS must be doing at any time it's not doing something else (like running the charge) is waiting for you to type a number or scan. Anything that increases key strokes or modalities is bad.

      A few weeks of tweaking based on feedback from the staff and they had exactly what they wanted. This is the third tax year and I've got most of the reporting automated and I don't have to look at it from day to day.

      Hackers bang on it all the time. I presume this is true of all stores. If they ever got in, they'd find we don't store credit cards on a computer and move on.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    7. Re:Rule #1 of development: Know your requirements. by TechyImmigrant · · Score: 1

      Yes. Buttons and fleece are the same.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    8. Re:Rule #1 of development: Know your requirements. by RingDev · · Score: 1

      "It turns out that there are zillions of little apps that make businesses run. Some of them are no more robust than an excel workbook on a well known file share. Some are Access applications. Lots of VB6 apps are still keeping businesses running."

      I hear ya. Been right there in the trenches for almost 20 years now doing line of business application development/management. The organization I just started with has a product catalog that has over 1000 entries, with tons of additional excel/access solutions that remain undocumented.

      But this is a problem. Each of these applications involve risks, maintenance, and support. The more of them there are (and some places have mountains of them) the more maintenance and support cost, the more often those risks present themselves.

      The reason these apps exist is because of a business process, and that process was likely designed in a vacuum being held over a fire. It's not that the app is flawed, but the business process itself may be the source of the issue. Working with the business units to identify processes that have multiple IT needs and finding ways to streamline the process, not the apps, will save the company vastly more than sinking time into developing yet another application.

      And that's where we get to the rub. There are already hundreds of POS suites, contract managers, document management, BRMs, ERPs, HR tools, taxes and accounting apps, etc... Any core business function that a company may have has likely already been solved with a tool that is vastly cheaper than what it would cost for us to build, with refined business processes built in, and with a significantly lower TCO including maintenance and support.

      The world is full of giants. Stand on their shoulders so that your IT department can spend their time on projects that take your business where others can't.

      -Rick

      --
      "Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
    9. Re:Rule #1 of development: Know your requirements. by Anonymous Coward · · Score: 0

      >As the old saying goes, "Good developers write good code, great developers steal good code."

      I'm old and I've never heard that saying. Shitty developers steal good code and mangle the shit out of it because they don't know what they're doing. That good code should be encapsulated anyway so shitty developers don't have to mangle it.

      Good developers write most of their shit from scratch using their frameworks, unless it's something very hard like OCR.

    10. Re:Rule #1 of development: Know your requirements. by pi_rules · · Score: 1

      But if your goal is to have a POS application, stop writing code right now. There exist hundreds of off the shelf POS apps all ready. For Windows, for Linux, thick clients, thin clients, web, desktop, green screen, etc...

      Your time would be vastly better spent finding an existing product and adapting your business process to it.

      Not always. There's a decent open source POS platform called OpenBravo POS. I successfully put that into our business without much fanfare. The first year was rough as I left too much of the original intact, mostly the product management stuff. I disabled their implementation and built my own C# app to handle the "back office" stuff and things were better. I beat the living hell out of that app to mangle it into how we think of things but that was WAY easier than changing business practices that didn't actually need to be changed.

      And when business needs change (selling organic cheese by weight from a local farmer) I just modify it and roll it out. It's way cheaper than actually buying a commercial product given that we've got 26 checkout lanes. I'd imagine the break point occurs somewhere around 12 unless you're really specialized.

    11. Re:Rule #1 of development: Know your requirements. by Anonymous Coward · · Score: 0

      >But if your goal is to have a POS application, stop writing code right now. There exist hundreds of off the shelf POS apps all ready. For Windows, for Linux, thick clients, thin clients, web, desktop, green screen, etc...

      And they are all shit. .

      Yes they are. Why? Because people write POS applications without understanding the Enterprise aspect of it. If you want to write a cigar box like application that works on its own, that's easy. Most of the free POS applications out there do this. Basically a they're glorified calculators.

      Working for a large company's POS team, I'm stuck with an application that started life as cigar box. Then they added store level kinds of things. Then they added enterprise kinds of things. However, all of the POS terminal functionality is controlled by XML files that are local so the application behaves differently on each POS installation because they failed to provide a mechanism to synchronize those files with a master file. It's the biggest POS ever, in both senses of the acronym.

      I used to criticize IBM's "embedded pos" (4680, 4690), but working on those were heaven compared to this POS.

  25. Re:C# and VS are fully open source by kthreadd · · Score: 1

    Parts of .NET is open source. But Visual Studio, are you sure about that?

  26. PostgreSQL by Anonymous Coward · · Score: 2, Insightful

    I'm a big fan of PostgreSQL over MySQL.

    1. Re:PostgreSQL by Anonymous Coward · · Score: 0

      Also my preferred platform is Java for web, desktop and console apps. If you want rich GUI desktop apps, look at JavaFX. Just stay away from "applets". Any time you hear Java bashing related to security, it's the applet browser plugin.. not Java.

    2. Re:PostgreSQL by pigiron · · Score: 2

      Absolutely PostgreSQL has always been a serious RDMS. My SQL was a joke when it came out and is still a joke years later. They have always been years late and several dollars short when it comes to functionality. They only got stored procedures last year! LOL Typical.

      Stick completely with stored procs for production database access. You can tune them and it keeps messy queries out of the application code. It also makes the impact analysis of database changes much, much easier to track and deal with.

      Do your programming in LISP if you have the nads and smarts (few do.) S-expressions match almost seamlessly with both SQL queries and with HTML/XML.

    3. Re:PostgreSQL by Anonymous Coward · · Score: 0

      I'd say support both, but prefer postgres. Mysql iscless of a joke than it once was, but 1110% ofvdevelpoers who are serious and competent use PostgreSQL.

      I'm also for Qt and/or python for simplicity.

    4. Re:PostgreSQL by Anonymous Coward · · Score: 0

      They only got stored procedures last year!

      If by "last year" you mean October of 2005.

  27. What are your users running? by hawguy · · Score: 1

    Since you're looking at Qt and GTK, I assume that you're writing a local GUI client, not a web app, so what operating system are your users running? Chances are that they are not already running Linux. Unless your product is some sort of turn-key system where you supply the hardware and software, then you ought to stick with whatever operating system your users already have in their offices -- which is probably Windows, possibly OSX, but they almost certainly do not run Linux on the desktop. (yes you can run Qt or GTK on Windows, but why bother?)

  28. Lazarus (FreePascal) via CodeTyphon by jma05 · · Score: 2

    Lazarus is pretty good. It is a Delphi like/compatible IDE based on FreePascal. I always thought that Delphi's approach to DB GUIs was the most straightforward.

    CodeTyphon is a good cross-platform distro for Lazarus that bundles lots of components. It also specializes in cross-compilation. But you are probably not looking for that aspect. It can target multiple GUI toolkits including Win32, Qt & GTK with the same set of components. I am surprised why it isn't more popular. Perhaps it is because Delphi is not as well known as C++/Java/.NET. While I am not a particular fan of Pascal, the component framework (Delphi: VCL, Lazarus: LCL) makes it worth while.

    http://www.pilotlogic.com/site...

  29. Re:C# and VS are fully open source by Anonymous Coward · · Score: 0

    Indeed. If VS is FOSS...well... Someone needs to get Eclipse's act together then.

  30. Cake PHP Framework - easy and fast by CaptainOfSpray · · Score: 1

    Cake PHP will generate an app extremely quickly if all you want is Create-Read-Update-Delete (CRUD) of records, in a Model-View-Controller structure.

    1. Define the database in MySQL
    2. Run the delightful commands "./cake bake model all", "./cake bake.controller all", "./cake bake view all"
    3. And you are done, 20 minutes after you started. Cake exploits naming conventions to give you auto generation of code, auto lookup of encoded values, etc etc. I have not yet discovered all it can do.

    And best of all, you don't need to write any interface code, that is what a browser is for.

    --
    "Cock Up Your Beaver" does not mean what you think. This sig is intended to clog filters and annoy do-gooders
    1. Re:Cake PHP Framework - easy and fast by jrumney · · Score: 1

      Any framework like this will generate a functional but crappy difficult to use UI on top of your data in minutes. Making a decently usable UI though is hard work compared to the UI centric tools with data binding he is used to coming from a MS background. Also, Cake is a web app framework, and the original poster is specifically interested in a traditional client-server architecture.

  31. HTML5 Client by rockmuelle · · Score: 1

    Have you considered a Web client? HTML5 + JavaScript + [your favorite server language and ORM]* is a good development stack. It also has the benefit of zero-install for your clients.

    We develop complex scientific software and made the decision to go HTML/JS for all our client code a few years ago and haven't regretted it. It takes a little bit of learning the libraries, but there are some good mature ones available to make streamline development.

    -Chris

    *I've used Django and Tornado+SQLAlchemy extensively for this.

    1. Re:HTML5 Client by Blaskowicz · · Score: 2

      I wonder how do you lock down the browser (some sort of kiosk mode to not get distracted), run it as a separate instance if you want to keep general purpose browser windows on the side and not have have the application getting slow, unresponsive or crashing, and I wonder if you aggressively update the browser as needed for security or use Internet Explorer instead.

      Oh, silly me, I've found out about the firefox -p -no-remote option while typing this post. Then there's some customization of the user profile to do so that I can even differentiate that second instance easily. Made for myself a "youtube firefox".

  32. Why custom GUI app? by thechanklybore · · Score: 1

    This problem has been solved time and time again using web browsers. Even the big GUI app companies are starting to produce extremely capable versions of non-intensive tools in the browser.

    Really for database/form-based apps, I can see absolutely no compelling reason to use Glade or GTK (or C++ or Mono) for this.

    1. Re:Why custom GUI app? by thechanklybore · · Score: 1

      To answer the question though, why not just use Mono? You'd have basically cross-platform code that way :-)

  33. How about a web browser by ghettoimp · · Score: 2

    Web applications are portable, easy for users to install (they don't have to do anything), easy for users to update (they don't have to do anything), and accessible from just about anywhere on just about any device. HTML/CSS/JavaScript have matured a lot. It is very easy to prototype your application's UI, and easy to develop very slick looking applications with rich fonts, colors, fancy tables, etc. Unless there's some fundamental reason you absolutely must have a native UI, I would never choose a toolkit over the web.

  34. Re:C# and VS are fully open source by Anonymous Coward · · Score: 0

    Oracle *did not* completely fuck over the Java community. We're very pleased with the progress Oracle has made getting Java 7 and 8 out the door, open sourcing Java FX, the continuation of Java EE, opening up of the JCP, etc. They've been perfect stewards of Java. What you're complaining about is Oracle sewing Google over their Java implementation based on Apache Harmony. If Google would have gone through the TCK process, they could have made it a royalty free Java because it is open source.

  35. PGAdminIII by plopez · · Score: 2

    A nice GUI for Postgresql. Check out what tools they are using. Do a few walk throughs with a debugger to see how it works.

    --
    putting the 'B' in LGBTQ+
    1. Re:PGAdminIII by Anonymous Coward · · Score: 0

      I think it's relevant to note that pgAdmin authors are moving to Python on the next version: The story of pgAdmin.

    2. Re:PGAdminIII by Anonymous Coward · · Score: 1

      I second the motion for PGAdminIII.

      MySQL is okay for small projects, but for industrial strength projects, I'd use PostGRES.

    3. Re:PGAdminIII by greg1104 · · Score: 1

      pgAdmin III is a client app for PostgreSQL. But what the poster wants here is information how to build their own specialized client app, not on how to use someone else's.

      The only way pgAdmin III is a relevant example here is that the existing code is a hairy bunch of C++...and the developers have given up on maintaining it. Instead they're turning it into a web app so there are better and still improving libraries to leverage there. That's a lesson everyone thinking of writing a C++, Java, or .NET app should think about.

    4. Re:PGAdminIII by plopez · · Score: 1

      You have to start somewhere.

      --
      putting the 'B' in LGBTQ+
  36. Glom or BOND by thisisauniqueid · · Score: 1

    Glom and BOND are your two main graphical database frontend options in the Linux world. Or you could try developing something in the cloud with Google Apps, scripted with Javascript, using a Google Spreadsheet or the Google Drive API as the "datastore". Or you could get even fancier and build a cloud database app with Firebase, it's pretty amazing (and they just released Angular bindings for Firebase, so you get data binding to UI widgets built in).

  37. Qt + C++ by ClayDowling · · Score: 4, Informative

    I'll recommend Qt and C++ as a workable combo. Learn how to use their Model/View architecture and there's a whole lot of fun stuff that opens up for you. Instead of looking for database components, think in terms of writing a data model that happens to get its data from an SQL backend.

    I'll also second the recomendation of others to look at PostgreSQL for your backend. When it comes time to deploy your application, PostgreSQL is a lot easier to package and install than SQL Server. The features aren't identical, but they're close enough for all but some very specialized cases. In a lot of those cases, there are tools that accomplish the same goals via a different mechanism.

  38. Linux Desktop, Really? by bradgoodman · · Score: 0
    IMHO - a Linux "desktop" user GUI app? Really? I'd second-guess the approach, and before you discount me - hear me out...

    Linux is all the bomb for the back-end, but not the front-end.

    If you want to do that way - go for it. But in the world of Windows desktop (which you've already done), there are a lot of other avenues that seem more important. In several places that I've worked - and a lot of scientific and technical places that are big on Linux - MacOS is surprisingly where the desktop is, and the trend seem to be growing. Furthermore, iOS and Android are important "front-end platforms". too.

    If you really wanted the Linux support - I would be (and have been) included to go the HTML-5 route. You get Linux, and many other front-ends for free.

    In short - unless there is a pretty specific reason to believe you're going to have Linux users on the front-end, I'd stay away.

    P.S. This is not going to be "The Year of the Linux Desktop".

    1. Re:Linux Desktop, Really? by Anonymous Coward · · Score: 0

      HOW DARE YOU! Every year for like the last ten years was supposed to be the year of the Linux desktop!

      Using the web (Java/Flash/HTML5) as an interface will always be smart because it makes the Os irrelevant. He said he's using SQL, which already pairs great with PHP, which can use any version of HTML/Javascript as a front-end. Along with that though come the issues of managing external connections and the permissions that go along with it, but the cloud is the future and blah-blah-blah...

      If he's parsing the SQL data himself and knows C, SDL will get you on Debian and RedHat based systems - so like 90% of the Linux desktop. GTK or Qt would limit your potential audience for no reason. Or write it for the command line.

  39. Gambas? by RParr · · Score: 1

    You might look at Gambas http://en.wikipedia.org/wiki/G...

  40. Re:C# and VS are fully open source by digsbo · · Score: 1

    VS is NOT. The CLR and the C# compiler are in the process of being open sourced, fully. There is a BIG difference between the compiler and the IDE. The .Net web stack is being open sourced as well, and is now, with OWIN, layered to remove the IIS dependency.

  41. Re:C# and VS are fully open source by kthreadd · · Score: 1

    Well, Microsoft is doing their part.
    http://msdn.microsoft.com/en-u...

  42. Re:Look at Java by DickBreath · · Score: 2

    Java has great free and Free development tools like Eclipse and NetBeans. You can also get the community edition of IntelliJ, or a paid edition.

    Java, and its development tools, run on every desktop: Mac, Linux, Windows.

    If you know Java, then you've already got a leg up on doing Android development; and doubly so if you use Eclipse or IntelliJ.

    If you want to develop complex web applications, then Java is the way to go. You can write a large web application in a dynamic language, but maintenance will become a long term problem in a gigantic code base. There is a reason that Java is used for very large websites. (Not to confuse large with high traffic.)

    Java is used in high speed trading.

    Java is used in the SIM card of your phone. Your bluray player.

    Once you are familiar with running Java on the JVM (Java Virtual Machine) you'll discover that there are dozens of other languages that run on the JVM with complete interoperability with other JVM languages. This is because of the common runtime and type system, and because of GC. With GC in the underlying runtime, the entire contract of who is responsible to dispose of what goes away. Did this library create that data structure? Maybe, but nobody has any responsibility to keep track of it and dispose of it.

    The JVM is an industrial strength platform. You can have heap sizes of dozens or hundreds of gigabytes. With a dozen gigabytes you can have GC pause times under 10 ms with little to no tuning. If you need hundreds of gigabytes in a single heap with 10 ms GC times, then contact Azul systems who can sell you their Zing JVM. Which brings up the fact that JVMs (like everything in the Java world) has multiple vendors. Don't want to run Tomcat, then use Jetty, or one of several other choices.

    Your favorite language compiler emits JVM bytecode which the JVM compiles into native code. It has an extremely aggressive global optimizer. The JVM compiler can optimize globally, something that compilers like GCC cannot do. The JVM can inline other methods into YOUR method. But the JVM can also dynamically reload classes. So what happens if class A is reloaded, but your method now has stale inlined code from Class A? The JVM will de-optimize your method so it is back to running as interpreted JVM bytecode. Now if your method (still) is one of the CPU hotspots, then the JVM will re-compile your method back to native code again. The overall application never stops. The only methods that get compiled to native code are the ones that dynamic profiling proves to be ones that would make a difference to aggressively compile. Call me when you other language runtime can do all that.

    Java is where the jobs are. Look for yourself.

    There is much more. But I'll stop.

    --

    I'll see your senator, and I'll raise you two judges.
  43. wxWidgets by Anonymous Coward · · Score: 1

    Yet another cross platform GUI project (C++), but one I prefer over the QT offering. Further, wxPython (the python bindings) is an awesome package. wxPython Demo (a separate package) is just fantastic. It comes with demos for all the controls and you can cut&paste the synoptic code into your work - it just doesn't get quicker or easier to learn or use.

    In the past, QT licensing has been all over the place, so I avoided it. wxWidgets is mature, with a full feature set. Highly recommended in order to be independent from the OS.

  44. Do not waste your time, stay on .NET by Anonymous Coward · · Score: 0

    Unless you are saving thousands by not paying for Windows Server licenses on 20+ servers, do not waste your time. It will be a lose-lose in speed of delivery and maintainability. Nuget puts things like Maven to shame, Asp.NET MVC beats Java Spring and Ruby in maintainability with tens of thousands of people working on nuget and Asp.NET MVC. The developer community is much larger and friendlier.

  45. wowwww by Anonymous Coward · · Score: 0

    thats quite a leet yarn store POS you have

    1. Re:wowwww by TechyImmigrant · · Score: 1

      thats quite a leet yarn store POS you have

      The product of a PhD who quit education to run a yarn store, marrying a crypto chip designer. You get a yarn store POS that's actually secure.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    2. Re:wowwww by greg1104 · · Score: 1

      You get a yarn store POS that's actually secure.

      About time, because I am so fed up with all the people stealing my crochet patterns.

    3. Re:wowwww by Jeremi · · Score: 1

      The product of a PhD who quit education to run a yarn store, marrying a crypto chip designer. You get a yarn store POS that's actually secure.

      I feel compelled to ask if the code uses a lot of threads...

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    4. Re:wowwww by sconeu · · Score: 1

      No, but it tends to have a lot of knotty problems...

      --
      General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
    5. Re:wowwww by TechyImmigrant · · Score: 1

      No, but it tends to have a lot of knotty problems...

      I needled all the bugs out.
      There was only one choice of hash algorithm.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    6. Re:wowwww by TechyImmigrant · · Score: 1

      There's ravelry.com for more efficient stealing of crochet patterns.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  46. You are looking for Datasets? Really? by morgauxo · · Score: 1

    I am a C# programmer by day. It's been my job for something like 5 or 6 years now. For me, the greatest feature of moving to a different platform would be...

    NOT HAVING DATASETS!!

    The things are a horible crutch! All of our software is Datasets everyhwhere, our programming department has standardized on them as the go-to tool for everything to the point of discouraging any other solution as "making it harder by not using what everyone else is used to."

    The problem is Datasets are really nice objects.. for... representing a database. But why would you want to represent a database? With most development you probably already have a database!

    Don't get me wrong, I love relational databases. They are great at the data storage level but they should remain there. You shouldn't still be thinking about tables, rows, collumns and joins all the way up to the UI layer. Leave the database stuff for the queries you write within your model code. Write your models to provide an API that reperesents what you are trying to do, not the storage enigine behind everything!

    Instead of objects that pretend to be databases (what's the point?) instead write objects that represent widgets, employees, orders and sales or whatever else is apropriate. They should have methods and properties that represent what you are trying to do like product.price and employee.fire() not dsProducts.Rows.Find(productid)["price"] and dsEmployees.Rows.Find(employeeid)["status"] = SomeProject.SomeNamespace.StaticsClass.EmployeeStatus.Terminated; .NET, at least as it is normally used sucks, it encourages bad code. Run away while you can!

    1. Re:You are looking for Datasets? Really? by Anonymous Coward · · Score: 0

      But then he'd have to create his own views and integration with the database instead of letting Access^W.NET do it for him!

    2. Re:You are looking for Datasets? Really? by Anonymous Coward · · Score: 0

      Actually he wouldn't. .NET's databinding doesn't rely on DataSets, all they do is provide a somewhat convenient but bloated implementation of the same interfaces required for full databinding support. WinForm binding is quite flexible, and WPF binding is even more flexible than that. Both support BindingSources as intermediaries. DataSets have always been optional in .NET and the visual designers.

    3. Re:You are looking for Datasets? Really? by Richard_at_work · · Score: 1

      Dude, you really need to look into an ORM such as Entity Framework (at the top end, does all the work for you but is heftier to boot) or Dapper (at the bottom end, much lighter but you do more work like write the SQL queries yourself) which will do the database to object mappings for you. I haven't seen a DataSet or DataTable in years. Instead I get a nice bunch of POCOs, tables are depicted as collections, and relationships between objects in different tables all exist just fine.

      I can have a new database defined, configured and generated, populated with seed data and displaying stuff on a website within 10 minutes of creating the new project, without any database-specific stuff being exposed to the UI layer.

  47. GAMBAS by Kevin+Fishburne · · Score: 1
    --
    Buy your next Linux PC at eightvirtues.com
  48. Re:Not a joke, Microsoft is open sourcing good bit by Anonymous Coward · · Score: 0

    The part where Microsoft is still in the process of reviewing the code and are releasing it piecemeal. Bits and pieces are getting uploaded onto GitHub on a steady basis, but it is not all there yet.

  49. Python Tools by carwyn · · Score: 1

    There are a number of python tools you might want to have a look at for this, whether you want native desktop clients or not.

      * http://www.sqlalchemy.org/
      * http://www.python-camelot.com/
      * http://pandas.pydata.org/

    1. Re:Python Tools by Anonymous Coward · · Score: 0

      I use Camelot at work and it is incredibly easy to use... but only if you don't want to click and drag controls all the time...

  50. Gambas3 + sqlite3 by Anonymous Coward · · Score: 0

    Fan of Gambas3 + sqlite3 + SSD immensely fast depending on implementation details.
    Moved about half a billion data points around in 30 mintues with medium speed PC.
    Supposedly 1.5x faster than Python in some configurations.
    Can be compiled to work on ARM CPUs that run Lubuntu.
    Works with MySQL no problem.

  51. Java with Netbeans by sproketboy · · Score: 2

    Netbeans has a bunch of database application wizards. Of course this means using the superior Java and being able to run the apps on Linux, Windows or Mac.

    1. Re:Java with Netbeans by Anonymous Coward · · Score: 0

      Of course this means using the superior Java

      Hahaha :trollface:

  52. Eclipse RCP + DataTools by H0p313ss · · Score: 2

    I'm sure this won't be a very popular option because Slashdot is allergic to Java in general and Eclipse specifically, but if were trying to write multi-platform GUI code with database integration I would probably start by investigating Eclipse RCP + Datatools.

    An example of this is Teradata Studio

    --
    XML is a known as a key material required to create SMD: Software of Mass Destruction
  53. Re:Not a joke, Microsoft is open sourcing good bit by Anonymous Coward · · Score: 0

    Then there are those of us who want to get paid for our work to live, there are those that are paid to develop compilers,
    there there are those who actually develop applications, I bet you probably have not written half of what you currently use

    I really dont want to develop the OS, the compiler, the application, bet you are using someone else's compiler or
    did you bootstrap your complete system including the firmware on the PC?

  54. Re:Not a joke, Microsoft is open sourcing good bit by Anonymous Coward · · Score: 1

    Why don't use platform independent language like Java?

    Java can run on Windows, can also run on Linux. Java has rich library and frame works for applications are quite complete, no need to reinvent wheel. With JDBC (a part of Java Library), the same applications can also use different database as back-end server, not just MySQL, or MS SQL server.

  55. Doesn't matter. Systemd will break it. by Anonymous Coward · · Score: 0

    It doesn't matter what solution you find for your data base. Systemd will break it, forcing you to write your own systemd-database-gui noid to start the wanker.

    1. Re:Doesn't matter. Systemd will break it. by greg1104 · · Score: 1

      You're only pointing out the downside. What about when the next version of systemd already includes his database application?

  56. We can make the world a different place by Anonymous Coward · · Score: 0

    Consider using the relational framework in slib.

  57. There's also Kexi & Predicate by staniek · · Score: 1
    Hi, I am maintainer of Kexi app (https://community.kde.org/Kexi) and Predicate - https://community.kde.org/Pred...

    Kexi, created in 2002, in addition to competing with MS Access contains Qt-compatible data-aware widgets: forms, reports, tables, queries. And all designers for them. Also import/export with strong CSV support. C++ developers can employ all this in their apps, this happens from time to time.

    Predicate is a database connectivity and creation library, something more than QtSQL and alikes. You can create database without backend-specific SQL. Predicate origins are in Kexi, it competes with Qt SQL and contains many more than it. See https://community.kde.org/Pred.... There's even SQL parser that helps to 100% control of what SQL is passed by your users. It's Qt-only. We're porting Kexi to it these weeks.

    So you have visual designers, and data-oriented framework, both interacting with each other.

    Feel free to ask for more info: https://community.kde.org/Kexi...

    Cheers, Jaroslaw Staniek

  58. Try Xamarin by rooney39 · · Score: 1

    I would suggest you take a look at Xamarin. It is basically using Visual Studio but being able to target any "Mono" runtime. I have done cross development and found it to be relatively easy, although user interfaces still require work across different platforms. To be able to continue using Visual Studio and C# but be able to target Android, OS/X and iOS, makes life for me a lot simpler. The tools are about $1000 per year (i think) for the licence which gives full Visual Studio integration and debugging. Well worth it.

  59. LAMP by ericbrow · · Score: 1

    For a custom GUI bringing in data from a database, I've found most GUI tools for this on Linux to be a bit clunky yet. Writing PHP forms and reports was just easier, and I'm not a web developer by any means, but it didn't take much for me to get exactly what I needed, and in just a little mroe time that it would have taken me with Access front end and MS-SQL backend. If I did that work more often, I could probably bang it out quicker in PHP.

  60. gui? local? by citizenr · · Score: 1

    Today your browser is THE gui. This way you gain flexibility, portability, and reusability.

    --
    Who logs in to gdm? Not I, said the duck.
    1. Re:gui? local? by rooney39 · · Score: 1

      I only have one issue with that statement. In the environment where you want to sell something really fast like a POS terminal or maybe a betting terminal, you need instant response and usually pulling a web page from a server is not that instant. I know you can do a lot to have stuff local but it isn't always that simple. I understand the logic for wanting to use a thick client in some of these environments. In most others I would be browser all the way!

    2. Re:gui? local? by citizenr · · Score: 1

      You can host server part on same computer end user is sitting at.

      --
      Who logs in to gdm? Not I, said the duck.
  61. Gambas; Free, light and versatile by webgang · · Score: 1

    I moved to MySQL on the server and Linux on the desktop, but for years missed a workable visual IDE, that was a real Linux tool. I won some time using php applications, until finally I discovered Gambas. I started to play with the IDE, and discovered an active development team. By the time I got used to the ugly mascotte, they finished version 2: nice, fast, true to the linux/unix concepts, and it felt very good in the KDE-environment I was using. But I could also choose to make a new project "cross-platform" (no, not to MS - I mean cross-desktop on Linux, my platforms); then you just get the common subset of buttons, dialogs, lists etc. to choose from for the screens. With one button you make a tar.gz file of your project (source + files), another button to compile to a .gambas application with a startup icon on the desktop. I installed and used it on completely different distro's as (K)Ubuntu, openSuse, Fedora, etc. Gambas is at version 3.x for the moment, and it put the fun back in programming for the desktop (althoug a commandline application can be done as well). The IDE itself is programmed in Gambas, to somehow prove their point I think. In the beginning I used it together with phpMyAdmin, but since a while it has its own database manager.

  62. MySQL, Python/MySQLdb/Tkinter by Anonymous Coward · · Score: 0

    There's not much explanation here, but lot's of pretty pictures. :) It's an inventory program that I wrote/maintain. It uses X-Windows so the client program is not running on the user's computer. They login to an account on the server that gets things going. This makes it easy to keep everyone using the same version since there is only one copy of the program to change. It started on an IBM ThinkPad running Linux, moved to a Sun workstation, then to a Linux workstation, and now is on a Linux virtual machine. All of those migrations took changes to about 5 lines of code. It's now using MariaDB, instead of MySQL. No changes were needed for that move. I have MySQL running on my MacBook and do destructive database testing on there. I can copy over the nightly mysqldump to my laptop, recreate the real database and be losing data in seconds. :) It originally took about 5 months to get up and useful (from scratch), but it had to have a lot of parts to be useful for our needs.

    www.passcal.nmt.edu/~bob/passcal/software/pis.html

    1. Re:MySQL, Python/MySQLdb/Tkinter by JoeCommodore · · Score: 1

      Both firefox and chrome seem to choke on tiff images... :-/

      --
      "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
  63. Dabo? by Anonymous Coward · · Score: 0

    Has anyon used Dabo (http://dabodev.com )? It is a python and wxpython DB GUI.

  64. web2py by marcello_dl · · Score: 2

    Try web2py. It's a web development framework with python server side, has *terrific* documentation (if you are not a total noob), it's easy to deploy locally, it's DB agnostic, it has features for RAD-like development (the server has an IDE and an app manager, you can strip the source and ship bytecode only) and it's very customizable.

    The killer feature? compatibility with apps developed with the older versions is a design goal. So once you have your app, you don't have to worry much about maintaining it or upgrading to newer versions.

    Cons? Python is not as easy as php to deploy on web hosting companies, and you need to tweak the configuration for heavy traffic sites, and python3 will need web2py to fork a specialised version. None of these are showstoppers for your use case.

    --
    ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    1. Re:web2py by marcello_dl · · Score: 1

      I forgot the more exotic OrientDB, it's java based graph db, can enforce a schema (speaks sql too) or let documents bear whatever structure, has bindings for lots of languages, the db can act as app server.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
  65. SDL support GTK by Anonymous Coward · · Score: 0

    Using SDL libs through C/C++ will give you nearly universal coverage on the linux desktop. I built a 2D game engine with TTF support, three layers of animated tiles, background music, instanced sound, collision detection - all using SDL in a few hundred lines of code. It makes your front end super easy to build and it has the bells and whistles to make it pop.

  66. Personal Preference by TheNinjaroach · · Score: 1

    My personal preference is web-based, with apps running on a Linux webserver (dirt simple & highly reliable) and data being saved to SQL Server. It's a fairly rare combination, which we used to accomplish using the FreeTDS library but more recently switched over to Microsoft's official ODBC Driver for Linux.

    As a big fan of RDBMS, I would say stay away from MySQL, it can be convenient but it's generally crap. (Citation: ALLOW_INVALID_DATES) If I had to use an open-source DB it would be Postgres all the way.

    Programming language? For you, I'd suggest Java based on your familiarity with C#. That would open you up to doing both web and "fat client" development and as a bonus your fat clients would be cross-platform.

    --
    I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
  67. Lots of love for Python by WebCowboy · · Score: 1

    I'm biased towards Python - and the following suggestions have nice UIs but they are web-based

    I agree there, especially if you are coming from the purgatory of VB6 or .NET line-of-business apps, and there are good frameworks out there.

    The original poster does want to know about traditional client-server, and there is a Python business application framework that is a closer fit: Tryton

    It is not web centric and has a GTK based client, although there is integration with Flask for web based applications (the Nereid module) and a big push on for a full fledged web client alternative to the GTK client (plans are to give it a "material design" look and leverage all the best tools and practices etc).

    It has a very extensive API so if the provided front ends do not suit your needs you can make a front end tailored specifically to your needs and leverage Tryton for the model, business rules, workflows and such. The database of choice is PostgreSQL, though you can implement SQLite or MySQL I think. ERPNEXT I think is limited (or was when I last looked) to MySQL and seemed to lack in documentation and testing, but it might be simpler if you can live with web front ends.

    Hope this helps...

    1. Re:Lots of love for Python by tyroneking · · Score: 1

      Tryton is pretty good true enough - Odoo (from which it was forked, when Odoo was called something else) is also pretty fancy. But I think the distinction between client-server and web-based is overblown these days, the browser+javascript+html5 is pretty much the client side of things, just easier to deploy.

  68. LibreOffice Forms by Anonymous Coward · · Score: 0

    Consider LibreOffice (or OpenOffice).

    It has a graphical interface to allow forms construction for use with database access, and there are several engines available for intefacing with MySQL/MariaDB, Postgresql, MS Access, and other databases, as well as general ODBC/JDBC connectivity.

    Business logic can be implemented with LibreOffice BASIC or through the SDK using C/C++.

    All in all, LibreOffice provides capabilities similar, but not idenitcal to that of of MS Access.

    It certainly is worth a look.
     

  69. LibreOffice Base by Anonymous Coward · · Score: 0

    Bwahahahahahahaha!

  70. Re:Not a joke, Microsoft is open sourcing good bit by ILongForDarkness · · Score: 1

    Just like they released iOS and Android versions of office before Windows? They are releasing things ad hoc now not always for their own platform first. Might buy them some cool factor I suppose but I'm worried they are going the way of Sun: "Everything is free and runs on commodity hardware, wait, what is it people are going to pay us for? I forget."

  71. HannaSQL by Anonymous Coward · · Score: 0

    https://github.com/LeoUnglaub/HannaSQL

  72. We used to have Informix by Marrow · · Score: 1

    10 seconds to create a database. 10 more seconds to create an input panel that would let you populate tables with data. You could vi-edit the panels if you wanted to make them pretty. Is there an analog to that speed of development now?

  73. Re:Look at Java by Anonymous Coward · · Score: 0

    Java - the language of your job is going to India, and have fun training your replacement.

  74. Kexi? by fatp · · Score: 1

    OK. I haven't really used it. But I always plan to have a look. http://www.kexi-project.org/

    1. Re:Kexi? by fatp · · Score: 1

      I should've meant knoda. But it's long dead. :(
      So just ignore my messages :(

  75. Webservice or Lazarus by Casandro · · Score: 1

    Of course today you would do such things via webservice, but if you prefer actual desktop applications you can use Lazarus, which is a Delphi clone. The database connectivity concept of Delphi is geared towards creating fancy GUI applications with database connectivity easily. It's more or less point and click.

    Plus unlike .net or Java you can run this on multiple platforms just by recompiling. And on every platform you get a (mostly) statically linked binary file.

  76. Windows and HTML5 by Anonymous Coward · · Score: 0

    web apps for POS applications don't seem to be the right way to go in my view

    You can use VirtualUI to develop a Windows application that can also be rendered to an HTML5 interface. Supports Delphi and .NET. Works quite well. The server is expensive though.

  77. Re:Not a joke, Microsoft is open sourcing good bit by bombman · · Score: 1

    And hopefully perl 6 will be out by the same date?

  78. J2EE by jandersen · · Score: 2

    This is problem I have given a good deal thought to as well.

    First a bit of background: I have lived on UNIX and Linux for most of my far too long career. I programmed Windows and OS/2 back when it was fun (ie. Win3 and earlier; the fun went away after that); I have programmed C and C++ most of the time, and I have worked with both GNOME and KDE.

    The problem, I find, is that you get tied into whichever environment you choose, so I took a step back and tried to figure out which environment give me most mobility across platforms and desktop environments. My answer, much to my dismay, was Java, which is available on nearly all HW and OS, and which has extensive and concise standards for almost everything relevant to a developer.

    I am still new to it, but the technology I really like is Java Enterprise (previously J2EE) - what I've done is download a package with Netbeans (an IDE), Glassfish (application server) and J2SE (the Java SDK), and it becomes relatively easy to develop database applications, with a frontend in JSF, which works in all browsers across OSes and gives you full GUI functionality, and a backend that can run on a remote application server (not only Glassfish) and against any batabase with a JDBC driver.

    Perhaps this is overkill for you purpose, but to me it seems ideal.

  79. sqlite by superwiz · · Score: 1

    it's portable, doesn't require a runtime and had bindings in most languages you'll want to use.

    --
    Any guest worker system is indistinguishable from indentured servitude.
  80. DaboDev by Anonymous Coward · · Score: 0

    I remember a project called http://dabodev.com/ , not sure how alive it is.

  81. JavaFX by Anonymous Coward · · Score: 0

    JavaFX is definately a good option. I've been using it for a while now to create (very) complex UI's and it just works. I have created numerous custom components to perform tricky stuff and it's generally really easy to do. It still has some rough edges but a lot of them are fixed in the version distributed with java 8.

    The awesome part is obviously that it's cross-platform. I develop exclusively on linux and it Just Works on windows.
    An additional bonus is that you have direct access to the massive java ecosystem which gives you -amongst other things- JDBC/JPA which makes database interaction a breeze (without having to focus on a specific database).

  82. Seems like modern programmers are pussies! by Anonymous Coward · · Score: 0

    After wading through all the junk about IDE, frameworks and other shit....

    I have come to the conclusion that modern programmers are stupid fucking pussies!!!!

    Who can't program themselves out of a paper bag without fucking help!!!

  83. Re:Look at Java by DickBreath · · Score: 1

    You seem to believe that incorrectly perceived cost savings of outsourcing programming is unique to the Java language.

    Several things can make your job more secure. Be excellent at what you do. Irreplaceable. Be the source of all leading edge knowledge. Be the one management comes to when they first hear of the new buzzword of the month. Don't focus on the tasks that interchangeable programming drones can do. Management loves interchangeable drones, and partly for the reason you describe. Identify and solve the really hard problems that others won't look at. Be willing to do some of the interchangeable tasks. The value you bring should exceed your coworkers. This should be reflected in your performance reviews. If it were easy, everyone would do it.

    --

    I'll see your senator, and I'll raise you two judges.
  84. FreePascal & Lazarus do DB work... apk by Anonymous Coward · · Score: 0

    See subject: Delphi Object Pascal-like FreePascal & its Lazarus IDE do it http://www.bing.com/search?q=l...

    &

    If you need a great set of Internet controls to go with the DB capabilities FreePascal has (just like Delphi/Object Pascal)?

    Look no further than http://www.overbyte.be/frame_i...

    Both target 32 & 64-bit...

    APK

    P.S.=> Enjoy... apk

    APK

  85. Executable English by Anonymous Coward · · Score: 0

    You may be interested in fast prototyping your apps in Executable English.

    You can type an app in English into a browser page, run it, see explanations of the results, and capture complex generated SQL for use elsewhere.

    Just point Chrome or Firefox to www.executable-english.com . Shared use is free. No advertisements. Nothing to install.

  86. Java Swing by Anonymous Coward · · Score: 0

    've been writing a database GUI for MySQL using Swing and java.sql.*. JTable has a nice model system in which you just have to implement a new AbstractTableModel subclass. This type of model backend UI component is common in Swing. All fairly straightforward stuff, actually a pleasure to work with. Java Goodies has some nice classes that make layout of forms a bit easier too.

  87. GAMBAS if you like Basic / Visual Basic by Anonymous Coward · · Score: 0

    superb easy to use GUI designer tools and lots and lots of libraries: http://en.wikipedia.org/wiki/Gambas

  88. Meteor is the future by skaag · · Score: 1

    What you want is Meteor.com - You will thank me later. If you think it's not what you need, you're thinking wrong, and should expand your mind, do some reading and studying and researching, and in the end, you will still reach this same conclusion. Or you can just trust me and give it a try. Start with a small project, to get a feel for it. Again, you'll thank me later... ;-)

    --

    All those moments will be lost in time, like tears in rain... time... to... die...

  89. Re:C# and VS are fully open source by Anonymous Coward · · Score: 0

    The CLR and the C# compiler are in the process of being open sourced, fully.

    I love how it takes a process to do this, makes me thing they're trying to hide something.