Saturday, July 9, 2016

Am I crazy?

Monday I'm going to buy this $160 IDE (more than the cost of my PowerBASIC compiler) from a Canadian website that doesn't appear to have any activity for about two years and offers no contact information.

Wish me well.

Also I've got a Btree program that doesn't install. Although my understanding is if I can get it installed on an older version of windows I can just copy the files over and that will work.

I really need this IDE. I don't know if it has a drill down function (probably not and sorely missed) but everything else in the demo looks pretty good. It will save me years of not having to search for how to do basic things so I can focus just on my code.

Update:

Just downloaded SQLitening 1.7 written in PowerBASIC and includes source. They claim it's fast. I haven't got the demos working but if it works it will be much better than working with Btree. Just a single DB file to work with instead of auxiliary index files. Since I have the source I can create static link libraries instead of DLL's removing that support issue. On the server DLL's are fine, but not for clients when I don't want the support headache.

Update : 4 am

I'm digging deeper into the IDE demo and believe I'm detecting some problems. The demo doesn't allow me to save code to do test compiles... except I can cut and paste to accomplish the same thing. The problem is it doesn't appear to create correct code. It creates individual callback routines for each control attempting to imitate VB. However it doesn't seem to produce form creation code or the callback function for forms either. I could work around that (but should not have to.) Then there's new menu defaults which are fine if those are the one's you want, but deleting a menu item leaves the orphaned event code in your file. That could be corrected if I can remove the defaults other than FILE/EXIT which would be fine. With no contact info... well they do have a forum. I'll try that.

Update:

I don't expect PowerBASIC will come out with a version for Linux (although they may?) so my choice to use PB was not an easy one. It's not a great tool to work in. VB6 spoiled me but it also hid things that shouldn't have been. The end product with VB6 was always a compromise but it had the SQL performance (w/ ADO) that kept my customers satisfied with my work. PB produces tight, fast code which was the deciding factor for me. I'm going to keep working with the IDE demo because I found it was splitting code between files and may work after all. I'd just like to confirm that before I go a few weeks without food? It really would be worth such a sacrifice if it does work.

Different languages steal ideas from one another and they are not always good ideas. I never liked C header files because it meant you had to look in two different places to know how a thing might work (or not work if you change one without the other.) Basic steals that with it's include files. Declaring a function makes sense for an outside DLL call but no sense for the purpose it is otherwise used for... languages whose identifiers are sequence dependent. Functions should be atomic with no sequence dependency (something the OpenEuphoria crowd is belatedly discovering.) Includes, preprocessors and macros are all mistakes for similar reasons. They were solutions whose time has expired. A programmer needs to be humble and let the computer do the work it is better suited for (leaving the programmer to do the things a computer can't.) Namespaces seems like a really cool idea, but again is a mistake. It's an attempt to tighten scope but in a mistaken way because again it makes things less atomic. If you have file scope, namespaces become superfluous. You should never have to look beyond the passed in parameters to figure out what a function does. Hunting down code is a waste of the programmers time and a lack of humility by relying on human memory where it isn't required. Being able to drill down to called functions (two clicks in VB) is also a great time saver for the humble programmer. I could have never handled well over a million lines of code by myself without it.

5 comments:

Russell Snow said...

Have you tried eclipse? In Linux there are many free wonderful ide's.

ken_anthony said...

The problem is I've pretty much settled on coding in PowerBASIC so I need an IDE that supports that language. Although Eclipse is extensible that's a whole 'nuther issue I don't want to deal with. I also discovered the IDE is splitting the code between files and using resource files which confused me at first. If I can get both SQL and the IDE working at a satisfactory level then I should be good to go. Even without either I'm determined to move my project forward... it will just be more difficult.

ken_anthony said...

Got SQL working in part (local mode only) but even if I can't get server mode working (I should be able to) local mode is enough (but server mode would be better. I won't have to mess with configuring mySQL or postgreSQL either. SQLitening works with a single binary file (and it's really fast) so that eliminates more headaches. In a corporate setting I'd have to make it looking like it's using ODBC (only by appearance) to sell to such customers, but that's down the road from this current project. Getting this to work opens up so many profitable options!

Jim Davis said...

Ken, I'm pretty sure you can get VB6 on eBay for less than $160.

ken_anthony said...

I saw VB6 for $65 at EBay. I will get it once I've finish my PowerBASIC project. I really do need to absolutely focus on this one thing. The only hurdle I have left is writing a UDP server that can be stress tested for the number of users I plan to support, but I've got a bunch of things to get done first.

I'm very excited. Except for an IDE which I can live without (even though VB6 spoiled me for life!) I have all the pieces I need now. Once my first project is done and making money I will focus on my develop environment because I absolutely know what I'm capable of with the right tools. But for now it would be a waste of time because my first project will be deployed in less than a year. Who knows how much time I would waste and still be disappointed if I let myself be distracted now? But thanks for your ideas. I sincerely do appreciate it.