Front Page

Content

Authors

Game Index

Forums

Site Tools

Submissions

About

KK
Kevin Klemme
March 09, 2020
35541 2
Hot
KK
Kevin Klemme
January 27, 2020
21091 0
Hot
KK
Kevin Klemme
August 12, 2019
7618 0
Hot
O
oliverkinne
December 19, 2023
4447 0
Hot
O
oliverkinne
December 14, 2023
3881 0
Hot

Mycelia Board Game Review

Board Game Reviews
O
oliverkinne
December 12, 2023
2326 0
O
oliverkinne
December 07, 2023
2760 0

River Wild Board Game Review

Board Game Reviews
O
oliverkinne
December 05, 2023
2435 0
O
oliverkinne
November 30, 2023
2698 0
J
Jackwraith
November 29, 2023
3238 0
Hot
O
oliverkinne
November 28, 2023
2128 0
S
Spitfireixa
October 24, 2023
3874 0
Hot
O
oliverkinne
October 17, 2023
2780 0
O
oliverkinne
October 10, 2023
2516 0
O
oliverkinne
October 09, 2023
2455 0
O
oliverkinne
October 06, 2023
2657 0

Outback Crossing Review

Board Game Reviews
×
Bugs: Recent Topics Paging, Uploading Images & Preview (11 Dec 2020)

Recent Topics paging, uploading images and preview bugs require a patch which has not yet been released.

× A place to talk about stuff that doesn't belong anywhere else.

Question for Programmers/Web Deisgn?

More
14 Apr 2011 18:34 #94313 by Space Ghost
I figure a good chunk of you are IT people or nerds of some sort. I had a question that would hopefully point me in the right direction. I have two goals:

1. I need to create software that: (a) is visually appealing, (b) access two different data bases, (c) can perform some moderately computationally intensive math, (d) can create reasonable graphic output (bar charts or what not), and (e) can also produce some type of pdf "report" to the user

2. Ideally, I would like this software to be accessed through the internet. So, someone could logon, enter some personal information, and then "viola" pdf report is delivered for them to see and download.

Now to questions:

1. Are there standard textbooks/resources that one can look at (I have programmed quite a bit in scientific computing languages -- FORTRAN and derivatives mainly, but have not done too much with GUIs)?

2. Is there an industry standard language that people do things like this in?

Any help or suggestions would be appreciated.

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 18:54 #94321 by Mr Skeletor
No and No.
Basically do some research, look at the recomendations you get (you'll get several different ones) and make your choice from there.
Buy a book on it (even the 'learn blah blah in 24 hours' books are pretty good), run though the book then start your project.
If you need stuff that isn't in a bog standard book, then you are probably doing something specialised which will be beyond you and you should be paying someone to do it for you.
My biggest advice is keep it simple - both the application and the solution. Most professional stuff you see these days is built on a variety of technologies which can get very complicated fast. Tr and find only 1 or 2 that does everything you need.

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 18:58 #94323 by ubarose
Do the end users need to be able to generate and customize the graphs realtime, or just need pdfs of pre-generated graphs?

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 19:01 #94326 by Not Sure
Goal #1 a and b are dead simple, d and e are pretty easy. Almost anything web-oriented and modern can manage these things. Making them look good is really a job in itself, though.

c is the hard part. Most languages that are easy to work in and have spiffy web frameworks are interpreted and pretty slow. That's not a problem for drawing web pages, it can be a big problem for crunching numbers. What does "computationally intensive" mean to you?

Goal #2 is trivial. Writing software *not* for the web is probably more difficult and tedious these days than doing it for the web from the beginning.

Questions in reverse order:

2: No. There are a few more or less obvious choices. Ruby (with Rails for a framework), Python (probably Django as a framework there), or PHP (I have no idea what the dominant framework there is right now). The framework part is really important, because it gets all the icky web stuff out of the way and lets you concentrate on your work. Out of that batch, I think I'd pick Python for your needs, but I could be wrong. Python tends to be faster than Ruby, (both have some speedup tricks outside my expertise). If possible, I'd consider trying to do any really heavy lifting outside of either, and just use them for the display part.

1: Because of #2, and because this stuff moves really fast, there usually aren't great resources available to get your feet wet. You just get to dive right in. Feel free to PM me if you want some more, or I'm sure a number of people will add on.

(there are many many other options, but I left them out for various reasons, usually the difficulty of getting started.)

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 19:03 - 14 Apr 2011 19:07 #94327 by Notahandle
SQL would be the obvious choice (it's free as well). There's bound to be a range of charting programs available. Probably less choice for PDF producing ones, but I'd be surprised if there aren't any.

EDIT- I'm Mac, not Windows, so I can't name anything specific.
Last edit: 14 Apr 2011 19:07 by Notahandle.

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 19:59 #94339 by jeb
Asking here is pretty crazy. You need to find some better forum for questions like this. Try Ars Technica.

For the intense math, charts and PDF outputs you could try to hook into R.

www.r-project.org/

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 21:55 #94348 by Not Sure
Ah, I don't think it's that crazy.

SG knows most of us and has some idea of our smarts and relative lunacy. The problem with wading into a tech forum like Ars Technica is that you've got a lot of people very invested in their opinion and worldview. That doesn't make for much objectivity, and it can be pretty hard to evaluate their claims without your own knowledge of the subject.

If all you're looking for is a jumping-off point, asking people you know is probably better than asking complete internet strangers.

Please Log in or Create an account to join the conversation.

More
14 Apr 2011 21:59 #94350 by Ancient_of_MuMu
All the interface programmers I work with tend to say Python is the bees knees. I just dick around in C/C++ for the math behind the scenes, so in theory this is the sort of thing that might work for you (Python wrapper around C++ code), but I may be wrong.

Please Log in or Create an account to join the conversation.

More
15 Apr 2011 07:10 #94371 by wice
Java (for programming language) is probably the best for the stuff you want, and it's more-or-less the "industry standard" right now. Ruby, Python, and other scripting languages are OK, they can handle usual database operations and web publishing much easier (I mean, with less complex code) than Java, but for computationally intensive jobs they are not the best choice. C and C++ are pretty good in the latter (they are somewhat faster than Java), but are very hard to use and master.

I would recommend using Java (for programming) + Hybernate (for DB) + JSP/JSF (for web publishing; stay away from applets!) + whichever library you like for PDF generation (google Java PDF for a shitload of them). With this configuration you can stay within the realm of one programming language, which makes things easier.

You can also add some JavaScript (don't be confused by the name, it has nothing to do with Java) to your website for some chrome.

But let me warn you: although Java is one of the easiest languages to learn, learning all this stuff you will need for your project will take some time. I would say at least one year, even if you know the basics of programming.

Please Log in or Create an account to join the conversation.

More
15 Apr 2011 09:58 #94380 by Space Ghost
Thanks for the comments everyone.

Skeletor -- that was my initial plan, but I wanted at least a little direction before just boldly picking something that wouldn't be productive in the long run. I am not too intimidated by some complexity, but I definitely don't want to become the best programmer of this stuff either. All about some degree of efficiency.

Uba -- no, the users don't need to manipulate charts or graphs. I just want to build a pdf that has preconstructed charts and graphs (where I define how they are constructed) and give that to the user as an end product.

Not Sure -- this sounds promising. Computationally intense to me means a couple of things. One is conducting some mathematical operations (mostly things like distance computations) on two eventually quite large databases. If you are familiar with graph theory, it is akin to getting the distances (or weights) of the links in a bipartite graph. I am fairly confident that most of the software we are talking about can do that. The more complicated venture will be estimating some paramters of statistical distributions -- this can become very intense quickly, depending on how the estimation has to be done (think like Markov Chain Monte Carlo estimation).

Jeb -- I am fairly proficient in R, so if I can find something that interfaces with R well on the front end, this might be the answer. This would have my time spent learning more about the shell of the program and the web presentation versus having to learn more about programming my own subfunctions for computation (especially for the probability distributions I mentioned above). R can be a little clunky when it comes to loops and what not, but I don't think that is goin to matter here.

MuMu -- that may indeed be a good path if I can't get the R business to work. I don't want to have to invest too much in C/C++, but am willing to do so if necessary.

wice -- I have thought of Java, but this is one of the instances where I didn't know if it could handle everything that I wanted. I definitely am realistic about the timeframe of this, hoping to have something workable in 12-18 months (it is a side project so I can't devote super-human focus to it).

Please Log in or Create an account to join the conversation.

More
15 Apr 2011 10:54 #94398 by Not Sure
Yeah, Java can do everything you want. I left it out of my list just because in my experience getting started with JSP is much more frustrating than doing the same for a simple web app with Python/Ruby. Not an expert, so it's worth looking into.

Java's a bit faster than Python or Ruby, but still not blazing, which is why I asked about his math requirements. Sounds like using R would be ideal for his statistical work. A quick search shows an add-in to call R functions from all three, which isn't surprising. Doing Monte Carlo estimations in any of the interpreted languages isn't likely to be super-fast. Basic and even advanced math every decent language can do. But the easier they are to work in, the slower they are. That's the tradeoff.

I'd look first at using R (or S+ or whatever) for the work and something else for the presentation, especially given your background in R. It would be a lot easier to do that than to reimplement the chunks of R you need, and wasting time fixing your own bugs.

Please Log in or Create an account to join the conversation.

More
15 Apr 2011 11:57 #94418 by Notahandle
jeb, thanks for the R link, thought it worth bookmarking in the unlikely case that I ever need it.

wice wrote:
" But let me warn you: although Java is one of the easiest languages to learn, learning all this stuff you will need for your project will take some time. I would say at least one year, even if you know the basics of programming."
< cue mad hysterical laughter > That pales in comparison to the number of learning curves that I have coming up. I'm really trying hard not to think about the scope of it. One (small) step at a time...

Space Ghost wrote:
" I am fairly proficient in R, so if I can find something that interfaces with R well on the front end, this might be the answer."
Sounds like that easily has to be your first and best choice. If you (or anyone) want a couple of Ruby/SQL/PHP book suggestions at some point, I can let you know the ones I bought last year after reading various reviews. (And by 'reviews' I mean real ones, not the bullshit feedback that amazon &co call reviews.)

Please Log in or Create an account to join the conversation.

Moderators: Gary Sax
Time to create page: 0.178 seconds