Author Topic: Aurora  (Read 8321 times)

Offline deMangler

  • Full Member Mark II
  • ***
  • Posts: 189
  • om tare tuttare ture soha
Re: Aurora
« Reply #15 on: December 30, 2011, 06:42:38 am »
Visual Basic? Why? Omg why? That hellspawn of a "language" should never have been allowed to see the light of day.

That it is... The Aurora installer does do some strange things too. I personally am keeping the whole thing in an XP VM isolated from my main system completely. VB runtimes are not getting anywhere near my main system.
From what I read on the forums, the next evolution is in development and it is not in VB.
The dev is to be congratulated and admired for getting it to work as well as it does. The last VB project I was involved in, probably around the mid '90s, was a two-man job that nearly drove us both insane. Purely because in order to get your head around the way VB actually does stuff, so that you can debug it, if nothing else, requires you to do very bad things to your brain indeed.
Needless to say I have never touched it since, I do have other horror stories of what I have seen happen to rather nice people who tried to use VBA in a live office environment. Not pretty.
Anyway, don't get me started.
Back to my spaceships, not thinking about VB.. lalalaaaaa singing a song. Can't hear you.

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Aurora
« Reply #16 on: December 31, 2011, 06:49:11 pm »
Maybe it requires some skill, but I have never had a problem with VB, either as a programmer or a user.
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline zespri

  • Hero Member Mark III
  • *****
  • Posts: 1,109
Re: Aurora
« Reply #17 on: January 01, 2012, 01:06:48 am »
Visual Basic? Why? Omg why? That hellspawn of a "language" should never have been allowed to see the light of day.

For you information VB6 was a huge success for Microsoft back then. It was the first RAD (create a form, drag and drop some controls like text boxes and buttons, and wire-up events and you are done). Everything since then is improvement on this basic concept. Of course in the modern days there are *much* nicer environments to program in, but VB6 was huge for its time.

Offline deMangler

  • Full Member Mark II
  • ***
  • Posts: 189
  • om tare tuttare ture soha
Re: Aurora
« Reply #18 on: January 01, 2012, 05:47:56 am »
Visual Basic? Why? Omg why? That hellspawn of a "language" should never have been allowed to see the light of day.

For you information VB6 was a huge success for Microsoft back then. It was the first RAD (create a form, drag and drop some controls like text boxes and buttons, and wire-up events and you are done). Everything since then is improvement on this basic concept. Of course in the modern days there are *much* nicer environments to program in, but VB6 was huge for its time.
Arrrg....somebody got me started.... :)
I was using RADs way before VB6 so I know they existed. Perhaps many of them might be better called IDE's, but they definitely were strucured as RADs and performed as such. Thinking about it, back to the '80s for the really primative ones. Really though, you are right, the first VB-like interface for designing software for end users rather than professionals, I have to say probably was...well... VB, but I would say that was another example of microsofts E-E-E methodology than a design innovation.
The example I quoted was VB4 (maybe 3.... dunno hazy memory...PTSD...), at least two or three years before VB6. I have heard that a lot of the problems were ironed out by the time VB6 came out. My only real-world experience of anything VB derived since has been with VBA. Eventually that whole system had to be redesigned from scratch using a more robust solution because VBA just was not consistent enough in the way it handled data. Actually diablolical.

I switched back to Delphi for my windows dev (before VB6, again by a few years) - it was a huge relief after the incursion into VB I can tell you. Since then I have used many IDEs and RADs, and I have had to work in the same office as people who have been using one or other flavour or implementation of VB, they were all having a bad time because of needless stress caused by the bad design and general inconsistency of VB - so this clouds my judgement. True - to begin with, many of them defended VB when I asked what  they were doing - lots of them reflexively defended it with a quick twitch before I had even asked them why they were looking so hunched and haunted.
An example that comes to mind is that some Pianos have wheels, and if you have always used a piano to get from A to B, then it might seem like the way to go - especially if they had been marketed successfully as a conveyance and taken up and used by many as such. I am sure people would go on about how great they were and how good the keys were and how shiny the lid, and how much easier it was with the wheels rather than having to walk everywhere..... Personally I would rather use a bike, or my legs, or a car, or even crawl, or something. But only because I am lucky enough to have had that experience of not having to ride a piano everywhere, so I naturally gravitate to those things....
Anyway... blah blah - I got started on a rant and am in danger of hijacking the thread. Sorry.
VB is used by lots of people so that is up to them. They have their own experiences and reasons and it is not up to me to judge them - I am merely sharing my experiences, and exposing my psychological scars.....

AS far as Aurora 4X goes - I am enjoying it more and more. It is a really rich and immersive game.
Oh - and happy new year!

« Last Edit: January 01, 2012, 06:02:15 am by deMangler »

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Aurora
« Reply #19 on: January 01, 2012, 06:49:09 pm »
The problem is that you still have to be a skilled programmer; you have to know not only about the language but about good programming techniques also. I have known a lot of programmers that have no business being around any language and some that would be all-stars no matter what language they touched. So would you be judging the language or the programmer?
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline deMangler

  • Full Member Mark II
  • ***
  • Posts: 189
  • om tare tuttare ture soha
Re: Aurora
« Reply #20 on: January 01, 2012, 11:16:56 pm »
The problem is that you still have to be a skilled programmer; you have to know not only about the language but about good programming techniques also. I have known a lot of programmers that have no business being around any language and some that would be all-stars no matter what language they touched. So would you be judging the language or the programmer?
I don't really want to hijack this thread with that debate, although  I will happily discuss it on another thread if anyone likes. I love a good debate and while I normally avoid some issues on forums because it can degenerate quickly - one of the things I like about this forum is that it is consistently good for a non-degenerative debate.
To answer that question though - obviously to establish a meaningful comparison between languages a lot needs to be taken into account. As you say - there is the skill of the programmer(s), also are the techniques they are using appropriate to the task? Is the language they are using a good choice given the objective? Is the project just badly designed from a 'lets design this project by commitee' point of view?
Blaming the language would be easy for a programmer to do when faced with a problem, just as blaming the tech-support guy is easy for some office drone wanting to know why his macro isn't working. I have seen cases where a problematic VB deployment has been blamed on the programmers, or the designers, or the purchasers, or the consultant that reccomended it, and on and on. At what point do you just have to say that it is a problem with VB?
Having been involved in many projects over the years as a programmer, systems analyst (design), tech support guy, troubleshooter of failed systems, trainer, etc etc, blah blah, I can say without a doubt that the there is a 'VB problem' It is the wrong tool being used for the wrong job. Is it un-fair to label this as VB being a bad language? Probably, but it helps to do so if it discourages people from choosing it by default instead at least exploring other options and then choosing VB, based on an understanding both of VB and the needs of the project. I have seen this so many times with VB being chosen by default, by commitee, and then a project ending up needing to be scrapped at an often huge cost and re-designed using something more robust, it is like seeing the symptoms of a disease, eventually you have to ask 'is it a problem with VB, or is it just that VB get's mis-used a lot? What, then, is the place for VB? What is it's purpose?'
Dammed if I know, maybe for knocking up very small front ends for simple repetative tasks for data entry for office temps who are likely to make too many mistakes with something like excel. To be honest, that is about it for VB. That is it's niche.  I have seen it used for this and it works well.
Anything else, use..... well anything else..... Anything.

<edit>
To specifically relate this to Aurora 4X (and disguise a thread-jacking) - this is a one man project where he has developed this over the years from a game assistant into a simulator into a game. He has stuck with it and it has turned into a monster. Nothing wrong there - I have a few projects like that myself.
He has shared it with people and it is really enjoyable. I would not expect it to look good under the hood, and when I say that the dev is to be congtratulated that it works as well as it does I am taking this into account and not just VB.
He is working on a new version not in VB and that is where I would take it too, now that it has been prototyped and he knows more where he wants to go.
My rant about VB is really coming from deferred frustration from the VB disasters I have seen, the stress it has caused real people in real life, and my feeling that I need to somehow reverse my previous failures to help people avoid these VB disasters, so Jesus will love me and I can go to heaven and chill with Dennis Ritchie, drinking endless martinis, and enjoying endless virgins.

:)

<edit>






« Last Edit: January 01, 2012, 11:42:45 pm by deMangler »

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Aurora
« Reply #21 on: January 01, 2012, 11:22:13 pm »
There are some languages which are harder to write unintentional mistakes with.  There are some languages which pursue that attribute to an extent that actually make the job significantly harder.  On average, I feel Java falls in the latter camp, and C# in the former.  VB... I confess that my only experience with it was during the very early phases of my learning how to program, so I'm probably not a good judge of it.  But that particular version of VB did let me get away with all kinds of stuff that the languages I've learned since then generally would not.  Nowadays, for certain purposes I don't mind programming with the equivalent of a 4' table saw with no protective shielding, but generally I think in terms of assembly (or bytecode) for something like that, whereas my understanding is that VB tends to produce not-great-performance code unless you studiously avoid anything that could be interpreted as late/dynamic binding, etc.

But languages typically produce more in the way of memories of pain than is justified.  ColdFusion, for instance, is probably not actually as bad as I've made it out to be (for the simple reason that it's physically impossible for a language to be that bad).  But I'm not convinced.


Oh, right, Aurora.  Sounds interesting, I just don't feel like investing the time to decipher an interface :)  Too busy making indecipherable interfaces.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Aurora
« Reply #22 on: January 02, 2012, 01:48:06 pm »
I have used Visual Basic extensively, not only as a hobby but in the workplace. In my workplace, we have many languages and programs floating around. Some of them are written in Visual Basic, and I have to say, those programs are generally easy to fix, debug, and work with. Why? Because it's very much standardized, especially the later versions. My one complaint would be that the most recent versions do not allow you to easily set the flags for compilation of earlier versions, where some built-in function prototypes have changed. This makes porting necessary, and somewhat tedious. There you go, a tangible, specific, Visual Basic complaint.

But beyond that, I just don't see where the failure is. Are you writing OpenGL programs in it? I mean, what exactly are you doing that it's failing so bad? I have used my share of Visual Basic macros, and if the programmer didn't write it correctly, then yes, it's going to fail, but… I'm just not seeing it. You should offer up some specific Visual Basic weakness, because it's not debugging and certainly isn't interface design.

I do not buy into Dennis Ritchie worship. It's the silliest thing, and I find that most people do it because they feel like they have to say "blah blah blah, Dennis Ritchie!" to be taken seriously. Even worse, the guy is dead, so being reproachful of his work is immediately discounted. But I'm going to be honest and heretical- I work with C every day, and it sucks the big one. It really does. It requires such incredible skill, that your design must be impeccable and clearly laid out. Do you know how hard this is to do in an agile environment? All it takes is someone from management to change their mind, all it takes is some minor change in a makefile of a makefile of a makefile, all it takes is some misplaced memory, all it takes is just the most minute change and you could have a serious design problem, a serious code problem… and the cost of fixing that is very expensive. You must pay for a All-Star coder to go in there and fix serious problems on a low level, and that's not cheap.

That's large-scale C development. I have worked at a few companies, and this is the reality. Axiom: as the size of your code base grows, so does the cost of maintaining it.

Java tends to require smaller teams. Debugging is quicker, design changes are quicker, and memory management is of course easier. The bugs that tend to develop are usually because of bad design. Performance, however, sucks. Always has. That's Java. And I find making everything objects to be inappropriate and the results of 90s peer pressure. People like to say "object oriented" and feel awesome, even when it's inappropriate for what they're doing. Can you make everything objects? Yes. But sometimes, it's completely unnecessary. I write code both object oriented and not, and I'm thankful for the times when it's not. I am more interested in the results than I am in feeling smug because I'm creating some unnecessarily hyper flexible object. I guess you could say that I really don't like programmer vanity, and there's a lot of it in the real world.

The really long days… Fixing makefiles, debugging someone else's code from 15 years ago, finding all kinds of bull from someone who's no longer employed… These are the long days, and they are almost always C.

Never experienced that with the VB stuff or with the Java. I don't even like Java, for other reasons, but it's far less of a headache in so many ways.

So yeah, I don't worship Dennis Ritchie. I find his creation to be important for the time period, but something we should be growing up from. Move on, progress to bigger and better things.
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Aurora
« Reply #23 on: January 02, 2012, 04:28:25 pm »
Move on, progress to bigger and better things.
Like C# ;D
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Aurora
« Reply #24 on: January 02, 2012, 05:02:02 pm »
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline eRe4s3r

  • Core Member Mark II
  • *****
  • Posts: 2,825
Re: Aurora
« Reply #25 on: January 02, 2012, 06:11:59 pm »
This quote basically puts everything i hate about Aurora nice in a sentence

Quote
2)  Regional Settings:  Aurora requires either US or UK regional settings (in particular, it uses "." as the decimal separator, not ",").  Before starting Aurora, change your regional setting to US or UK, then change them back when you're done.  Please do not post any requests to Steve to "fix" this issue - it has been discussed repeatedly and he will not be making any such changes.  Search in the forums (upper right corner) for "decimal separator" to see threads on this topic.

And the excuse for not fixing this (which is as simple to fix as defining his own regional setting values instead of reading them from the regional settings of the OS...) is "because its a hobby and not commercial"

Fair enough, but it still makes me hate it.

And it gives me appreciation of good coders who do fix things in their apps even if it for them is not an issue (because thats what he is saying... not his problem....) .... thats just lame ;/
Proud member of the Initiative for Bigger Weapons EV. - Bringer of Additive Blended Doom - Vote for Lore, get free cookie

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Aurora
« Reply #26 on: January 02, 2012, 07:22:35 pm »
I have done localization work before, and I have to tell you, it's a huge job for a global product. The vast majority of people cannot even fathom the hell involved in trying to localize. If the author of Aurora is on a small team, or by himself, you can't really blame him for this. A lot of companies will contract out for that kind of thing, specifically because of how much it sucks.

For independent developers, the obvious solution is to stick with integers (avoids floating-point problems, representation problems). Also, well-behaved IDE's will allow you to externalize strings, which is a fancy way to create one giant file with all of your strings in it. Then, the localization team and translator can specifically look at those items without crawling through code.
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Aurora
« Reply #27 on: January 02, 2012, 08:03:04 pm »
Yea, we keep all our non-debug shown-to-user strings in xml files so that things can be localized, but we sure don't do the localization work ourselves.

But from the sound of it the Aurora situation is that it's reading the OS's region setting and using that for the parameter into all the string formatting (number formatting, at least) methods, when it actually only functions "correctly" if those methods are passed US or UK.  So the user has to make sure their OS region setting is US or UK.  In theory, the program could simply hardcode US or UK instead of ever asking the OS about the region setting.

My guess, however, is that it's not actually that simple in the code, and perhaps the string formatting methods themselves are pulling the info from the OS and the programmer doesn't have an easy way to change that.  The reason for that guess is that it appears the programmer has spent far more time/effort in their forums saying that they will not make the change than it would take to actually make the change if it were in fact as simple as hardcoding which region the formatting is told to use.

But even if it really is that simple: if it's someone's hobby, and that person doesn't find "extra task X" fun, it's quite natural for them to not do that extra thing.  Perhaps those kinds of forum discussions are what that developer finds interesting as a hobby :)
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline eRe4s3r

  • Core Member Mark II
  • *****
  • Posts: 2,825
Re: Aurora
« Reply #28 on: January 02, 2012, 11:56:26 pm »
This just shows you gotta make a design document before coding.... or in this case, do a sanity check ;)

While I am sure theres somewhere a game with huge amount of work done it the reality is that.. its in VB6.. and that just .. no.. its too evil to even contemplate. That (and the vs97 libraries it requires) will never touch my pristine geek PC. Even if this were the ultimate dwarfen fortress space 4x game.

I wish he had made a design document, and realized the need to externalize his game rules and database functions in a way that does not *bind* it to vb6 specifically. Had he done a proper rules.xml (example) he could have just taken that and code ANY application in ANY language around it.

But now hes coded it all in vb6, which means with Windows 8 Aurora will likely become unplayable.
« Last Edit: January 02, 2012, 11:58:40 pm by eRe4s3r »
Proud member of the Initiative for Bigger Weapons EV. - Bringer of Additive Blended Doom - Vote for Lore, get free cookie

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,505
Re: Aurora
« Reply #29 on: January 03, 2012, 12:30:49 pm »
This just shows you gotta make a design document before coding.... or in this case, do a sanity check ;)

While I am sure theres somewhere a game with huge amount of work done it the reality is that.. its in VB6.. and that just .. no.. its too evil to even contemplate. That (and the vs97 libraries it requires) will never touch my pristine geek PC. Even if this were the ultimate dwarfen fortress space 4x game.

I wish he had made a design document, and realized the need to externalize his game rules and database functions in a way that does not *bind* it to vb6 specifically. Had he done a proper rules.xml (example) he could have just taken that and code ANY application in ANY language around it.

But now hes coded it all in vb6, which means with Windows 8 Aurora will likely become unplayable.
He may well have considered those ways of doing things, but decided it wasn't either fun (hobby, remember) or feasible for the time/effort he could put into it.  Externalizing game rules, for one, is not trivial either for programmer-time or run-time.  In general, generalizing stuff is a lot harder than simply doing it :)  Particularly if you haven't already done it once and thus have a better idea of how to generalize/automate it.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!