|
Post by EoQB on Sept 18, 2005 21:29:31 GMT
Just wondering what the biggest project you've ever done was. You can categorize this either by source size, importance to you, compiled size, # of subroutines, # of included files, however you want to categorize this.
I suppose I'll go first. The biggest project I've ever done was my project to graduate. As I've not yet presented it, I can't publish any of it, elsewise I'll be accused of "stealing" my own program (they run a deep search of all forums and sites, which is amazing as these projects are often small things you just wrote a thesis on). I'll mention its name and functions:
The Magic 8 Ball program. This program simulates a Magic 8 Ball in QB. There are no graphics, so you have to use your imagination. However, it is "intelligent", with almost 50 pre-programmed answers to "common questions juvinile delinquents and the bored might ask". Thus, if you ask it its name, it will respond with "The Magic 8 Ball program". It also prints information about the real-life Magic 8 Ball, such as what is actually in one, and how to take one apart. It utilizes 4 subroutines and takes a total of 45k when compiled. For QB, especially for a non-graphical program, this is big.
My biggest difficulty was overcoming the string lengths for the DATA statements, and coding the "intelligence". I got around this by separating the statements so they'd just fit under the max length, and by creating 2 subroutines to handle the "pre-intelligence" (cut down on the variable questions that could be asked (ex: "who are you?" = "who are you" = "Who are you?" = "Who are you" = "WHO ARE YOU?", etc), allowing for greater accuracy in intelligence).
I hope to port this to VB when I'm done with the presentation, then port it to C# and C++, simply because I can (aside from being able to program in these languages, I figure that the more diverse the program is, the more attention it would get. Also, I'd like to test this new "converter" program I found, it supposedly converts programs between languages, and I'd like to see if it works).
If anyone is interested, I suppose a fully-compiled beta of the project could safely be sent. e-mail earl71972@yahoo.com if you'd like a copy, as my account hasn't been approved yet (and I'd doubt if you'd spam me, since yahoo has an uber-blocker built in, so only 5 of one person's spam would actually make it through).
|
|
|
Post by Mikrondel on Sept 19, 2005 13:24:10 GMT
Thanks for trying to inject some life into this board! Briefly, the Amandula program on my downloads page is probably the largest complete project. It has a BMP writer (phew! that was an educational one) as well as a hard disk directory browser for you to create and write the files. Something a bit difficult to use in there, in that to make a new BMP you first create the file, then select it for writing. The background of the downloads page, by the way, is made by that program. The non-tilable version of Amandula is called Guame. Almost the same. I really don't like big projects, as I find it really difficult to properly finish something, and I tend to make short but cool programs. I got a lot of them. Try here: www.autopack.com/aleks/host/MATRIX.BASI'd love to rant more but I can't. Yet. Mikrondel out.
|
|
|
Post by earlofqb on Sept 19, 2005 18:02:39 GMT
Is there any way I could download the source? This is far preferable to copying it manually, and much more preferable to hand-compiling it in my mind.
Currently I'm thinking about re-writing my school's lunch program. Since the beginning of this year, they've overcharged me multiple times, all because whoever coded the program didn't make a confirmation screen. Thus, they'll hit the same button 5 times before they realize it "went through". This'll be a VB.NET program, provided the sys admin allows me to tie into their database (which I'd doubt).
Earl
|
|
|
Post by Ildûrest on Sept 20, 2005 10:09:15 GMT
And you call yourself a programmer? If in IE, click File then Save As, and type in "MATRIX.BAS" (with the quotes!!). Or you can save it as a .TXT file then rename .BAS, or just open in QB as a .TXT file (You'd type MATRIX.TXT in QB's open box) Opera (of course) lets you save it much more easily. Just click the Save icon in the menu, or go to File and click Save--no extension juggling. Firefox probably does it that way too. You really should know all about file extensions and renaming files and that, and if not it's a good time to learn. I think that a good programmer needs to understand computers inside and out to write efficient and helpful programs. I have to get around to writing a Cut and Paste with QB article, but in the meantime, most of it's covered here: www.network54.com/Forum/message?forumid=171757&messageid=1028240131By the way, nice avatar. I put that one on And try the "QuickBasic Style" skin if you haven't already. See you round.
|
|
|
Post by earlofqb on Sept 20, 2005 17:58:50 GMT
And you call yourself a programmer? If in IE, click File then Save As, and type in "MATRIX.BAS" (with the quotes!!). Or you can save it as a .TXT file then rename .BAS, or just open in QB as a .TXT file (You'd type MATRIX.TXT in QB's open box) Opera (of course) lets you save it much more easily. Just click the Save icon in the menu, or go to File and click Save--no extension juggling. Firefox probably does it that way too. You really should know all about file extensions and renaming files and that, and if not it's a good time to learn. I think that a good programmer needs to understand computers inside and out to write efficient and helpful programs. I have to get around to writing a Cut and Paste with QB article, but in the meantime, most of it's covered here: www.network54.com/Forum/message?forumid=171757&messageid=1028240131By the way, nice avatar. I put that one on And try the "QuickBasic Style" skin if you haven't already. See you round. The QB skin is nice. Also, I don't consider myself a programmer. It is foolish to consider oneself skilled with the compiler when there is much to learn. With QB, I consider myself a "semi-advanced script kiddie", which is the designation I give 90% of "programmers" (even you may fall under that designation, as you do write good code, however you don't create large, group-oriented projects. However, as you help others, your designation improves to "very advanced script kiddie/amateur programmer). Basically, here's my listing: Script kiddie: basic understanding of syntax, can create simple programs to amuse the amsses. Advanced script kiddie: can create programs not only to entertain, but to inform. Has advanced understanding of syntax, and has worked on a massive project before. Programmer: one who is knowledgable in 90% of the advanced techniques, works with others on projects, helps others in learning the language, and writes all levels of code. Is capable of creating any project provided time is there. I didn't create this, not in its entirety. In one of my QB classes, we got bored and started joking around designating each one of us at a certain level. As the class progressed, we refined this classification, realizing that programming is not just the science of putting statements together, but the art of creating a program and working with others. Thus, "programmer" refers to anyone who works well with others, creates high-level code, and can do almost anything with the language of their choice. The reformatting of extensions is something that is not taught anymore. I'd suspect that this is because in renaming, you alter the file in ways that are potentially harmful. You wouldn't tell me to rename it "Matrix.exe" and expect it to run? This applies elsewhere. If this were another language, there is the likelihood that the syntax would become corrupt by doing this. Also, renaming opens up a lot of "proper use" considerations, and if you didn't own this software, you could sue me for doing this. There are instances where companies will post the source of their project, however leave it in such a way that it is not to be copied. Often this will be done to explain why something is such and such. It ususally isn't done that often anymore, however when it is, there is the implied idea that you aren't to copy it without permission. That is why I asked for the source, which would mean you gave me legal permission to copy the code. Finally, I'm currently working on a massive project (I mentioned it in my last post). If you'd like, you can help (if you know VB, which really the leap isn't too great between QB and VB, if you don't). I have links to places where you can download the MS SDK.NET and #Dev, a C# and VB.NET IDE. These files are both very large, so you'd need cable to download them reasonably (I have dialup, so I'm downloading it in parts whenever I can). Depending on how many people I can get to work on this, the better it would be. I'd hate to see me have to write it in its entirety by myself (it would only confirm the "semi-advanced script kiddie" designation, and would mean a lot of my time would be diverted from schooling and work). This invitation also extends to anyone you know who knows VB or can be taught (very quickly) VB (say they know QB already and have a basic concept of OOP and IDEs). If this project works (and I can get it approved by my school), it would become, without a doubt, the largest project I'll have worked on. Before I forget, we'll be in R&D for about a month before we get to work on it. This may change to only a few weeks, depending on how fast we can figure out all that we need (if possible, it would be preferrable to have a working demo to present to the Board, which will be in a month).
|
|
|
Post by Ildûrest on Sept 21, 2005 8:57:40 GMT
Apologies, but I can't stand VB. I can definitely use it but it really ticks me off.
As far as my "status", here's what I have to say: I'm extremely good at solving problems, when I set my mind to it. I can write 3D graphics programs from scratch (such as in QB, without libraries) in a few hours. They're not very good, becuase I never bother to do anything with them. But if I had the time and the resolve (which I definitely DON'T), I think I could make an RTS game almost as good as Starcraft or Age of Empires (In terms of code, not story and graphics of course). And that's pretty damn hard, especially when considering pathfinding algorithms and AI.
But like I said, I don't have resolve. And at the moment I don't have much time either. The end product is that I don't make much at all, and that makes me a bad programmer, in a way.
Also, with respect to working with others, there's nobody I know in person that is any good at programming. The only thing for me is to collaborate with people on the internet, but currently I have no project for which this is all that suitable. I have some great ideas but they have to wait.
By the way, if you can think of a good challenge to set me that won't take too long, I'd like to try it.
Anyway, by my own rating system, at the moment I'm a...
"Perfectionist beast master coder of pure laziness."
P.S. Just because I don't like VB doesn't mean I won't help; I will just write very little code. I will certainly answer any questions you ask or give you advice, and you can probably get my expert opinion on some of your code if you submit it to me. I've got an extremely sharp eye for ways to improve programs, and I also tend to come up with very efficient solutions. While I'm here, submit some of your QB programs to me, and I'll look through them and give you tips and advice. I can vouch that you'll learn a lot that way.
|
|
|
Post by earlofqb on Sept 21, 2005 17:53:33 GMT
Well, a lot of QB people hate VB (in fact, I myself hate it about half the time I use it). Mostly because the event-driven OOP style that is used reflects, in no realistic way, the world of programming. VB is hopelessly tied to the form, which means without a form, you've almost no chance of creating a program in VB. Considering the lengths you'd have to go to create such a program, you'd be better off working in C++ to do it.
For my project, VB is almost perfect for it. The lunch system we have is entirely event driven. As such, VB works well for this purpose. Of course, one could always harness the resources of C# and work in that langauge, however VB will do (its such a simpler language to work in, considering that all the team members will be mostly script kiddies).
Well, I've no doubt that you have the skill to program. One of my biggest problems is finding an idea. Once that hurdle has been crossed, I'll almost always run out of time. This is why I've started to write down all the ideas I have for a program, that way when I've the time, I can just program and not wait for an idea to pop in my head. It also makes the program easier to follow, as the logic is established before any programming. (and yes, I realize that this is what professionals use, so would that mean I'm becomming more professional in my coding?). Also, what is wrong with starting an Internet-based programming team? Its actually how I plan to start one of my own (after I graduate from college, which will be in about 5-6 years). Its also a great way to learn programming as a group, without the problems of needing to find local help.
I suppose that I'm lucky in that I keep in touch from time to time with my former classmates who've taken QB and VB classes. Still, the complexities of a real-world programming team make it dissatisfactory to the needs of the team. Sure, its good to have people on-site to help, however with the power of web cams, instant messaging, and video feed (MS created a program that ties in with the WMP to create a video of your computer's screen. Whenever I find the link, I'll put it up), the Internet is surely superior. Further, there are many places to go to get help online, and possibly to recruit members into your team. It seems juvinile at first, however once you get used to the idea of randomly asking people to join, you'll find that people are very generous with their time and energies.
If you're looking for a test, you can always do the standard Palindrome program. Outside of that, there isn't much else, except maybe made a file-based music player, where a list of the music is stored in a file and inputted dependant on the user's request. Perhaps a program that displays all available combinations of a character/number set. Ex 123 -> 321, 132, 312, etc. QB is surely powerful, and I've yet to scratch the surface of challenges, for forgive my rather weak challenges.
For the project, I suppose you could be an advisor/consultant. The position is rather simple, you just help people as they need it, research for them, etc. This way programmers can spend time programming, while research assistants and the consultants can help them out.
If you'd like me to submit my programs, I can give you a compiled version of Magic 8 Ball, a copy of some QB programs I did in school (you know, the simple input/calculate/output things), and a simple "adjusted math" program I made (it won't display the proper answer, at least not at first). I'll e-mail them to you tonight, unless you'd rather I dropped them off on a website or something. Magic 8 Ball is what I'd consider 90% complete. Aside from fine-tuning the "intelligence", it works perfectly and efficiently. Would you like an installation program with it (found one online, would like to try it out)?
|
|
|
Post by Mikrondel on Sept 22, 2005 4:36:06 GMT
Advisor/Consultant eh? I prefer Information Repository/Master debugger or some such. I've decided to try to write a WAV file player in QB. Started this morning, hopefully will finish by tomorrow. The biggest hurdle is bastardising the waveform for use with the PC speaker. It will sound really bad. But I think it will sound vaguely like what it's meant to sound like.
Yes, the easiest thing would probably be to email me programs. I could set up an FTP account but I don't see the point. Just ZIP them or RAR them (I prefer RAR) so that hotmail doesn't block them (and obviously so they're smaller).
Thanks! Bye.
|
|
|
Post by Mikrondel on Sept 22, 2005 9:44:19 GMT
Progress report: I'm giving up. I've made a complete working version but the waveform bastardisation is "good for butt" as they say in Poland. (It doesn't translate to English well but meh)
It does make noise that is VAGUELY correlated to the WAV file, but sounds nothing like it. It also plays for approximately the same time, so I know I've done the reading right, just not the "PC-Speakerisation". So I'm putting the project to sleep until I further my mathematical ability to the point where I understand Fourier transforms. Still, 'twas educational. I learnt the basic format of WAV files.
|
|
|
Post by earlofqb on Sept 22, 2005 17:55:56 GMT
Well, one cannot blame you. QB isn't designed to work with wav (obviously), so what you accomplished was pretty good.
As far as your position goes, you can call it what you will. Once I get a few more people together (including the infamous Lord Hallington), I plan to start work. I don't know if I mentioned this here or not (so many forums I posted to, arg!), however I've recently learned just what my school spent on the system they bought: a few thousand dollars (US). Considering that our budget is only around 100,000 for 3 schools for the entire year, it makes you wonder how we did this. Because of how much they paid for it, I find it somewhat more doubtful they will actually go through with this.
Even if they reject it, I might go through with it anyway. Then I'll either sell the software to someone or make it fully open, preventing future problems for other schools/businesses/etc (if there's a good, free version online, why would they want to pay?). Well, we'll find out Monday, when I propose it (if the guy will even show up. Strangely he's been pretty absent lately (and you'd think the head administrator of the school I'm at would show up more often).
Any project where you can walk away having learned something is a project well worth it. I plan to keep working on Magic 8 Ball. This reminds me, I had a problem with my input/output file system. Now, I typed the path in " "s and have the entire path in there, however it doesn't want to open. I know its there and the path is (to the best of my knowledge) complete. When I get home I'll copy the segment and post it on here. While I'm online, I'll e-mail you a compiled version of Magic 8 Ball (without the problem, I'll REM it away, hehe), and that math program I have. Other than that, I've not much to post. I'll RAR the programs over (nice, small size).
|
|
|
Post by Ildûrest on Sept 22, 2005 22:07:11 GMT
Eh it may be a long-filename path. In DOS you can only have 8 characters of name and 3 for extension. To simulate this for file and directory names that are illegal in DOS, Windows cuts out all DOS-illegal characters (such as spaces), cuts the length down to 6 and adds ~1 or ~2 or ~3 etc. depending on whether there's another one with the same first 6 valid letters. And if it's a file, the last extension is used.
So C:\Program Files\data\longfilename.box will most likely become C:\Progra~1\data\longfi~1.box
Hopefully that's the problem, if not you can detail what you've done in QB and where the file actually is, and what error you get, and I'll see what I can do.
|
|
|
Post by earlofqb on Sept 22, 2005 23:19:06 GMT
I'll try that now. <roughly 5 minutes later> No, it didn't work. Here's some code to help you:
If Question2$ = "can i view the readme" Then
Print "Ok, processing";
Sleep 1 Print "."; Sleep 1 Print "."; Sleep 1 Print "." Print
path$ = "C:\Progra~1\Magic ~1\Magic ~1\ReadMe.txt"
Open path$ for Input as #1
Dim strLine(100) as string Dim intX as integer Dim intY as integer
Do until EOF(1) intX = intX + 1 Line Input #1, strLine(intX)
Loop
Close 1 Cls
For intY = 1 to intX
Print strLine(intY)
Next intX
End If
I don't know if Code would have spaced it like I did (I'm proud of my nice white space I put in ), but that's pretty much it. Anyway, I get a "Path not found" error. The path is at "C:\Program Files\Magic 8 Crew\Magic 8 Ball\ReadMe.txt". As I've the equivalent 8.3 expression, why shouldn't it work (unless the spaces are ruining it, then I'd have to rename my directories). Thank you for your help.
|
|
|
Post by Ildûrest on Sept 23, 2005 1:07:26 GMT
THE SPACES!! THE SPACES!!
Let me quote: "Windows cuts out all DOS-illegal characters (such as spaces), cuts the length down to 6 and adds ~1 or ~2 or ~3 etc."
Maybe it wasn't fully clear what "cuts out" meant, but "magic 8 ball" becomes "magic8~1"
So this is what you should haveL
C:\Progra~1\Magic8~1\Magic8~1\ReadMe.txt
If this still doesnt work, you'll have to use a COMMAND.COM or CMD.EXE to locate the directory and find its short names.
|
|
|
Post by earlofqb on Sept 26, 2005 17:46:36 GMT
Ok. I'll try that when I get home, provided no one has stolen the computer (which is why I haven't been on in so long. I'm usually good with replying to a help forum daily).
I wonder, if I wrote my code without using the "code" forumcode, would it write properly here? Someone should take this up with proboards management, as all other forums I know of utilize the "code" forumcode to preserve spacing, not destroy it.
|
|
|
Post by Mikrondel on Sept 27, 2005 11:33:46 GMT
Quick-Fix... get it in notepad, and replace all spaces with the NBSP (non-breaking space) character using the Edit->Replace function. This is meant to be ASCII 255 but I've heard it's Alt-160 on Windows 95 and 98. (To get it, hold ALT while pressing 255 on numpad. You can get most ASCII characters this way. QB help has an ASCII table if you need it.)
Do warn that you've done this, as the receiver has to copy one of these into the Replace box and turn them all back into spaces.
I heartily agree, why the hell give a CODE feature if it destroys indentation? (Ever heard of the Python language? It uses indentation rather than symbols to denote where IFs and LOOPs occur, so if you kill ITS spacing, you're in a spot of bother)
I don't really care for indenting, though I sometimes use it a bit. Usually this is when writing example programs for others, or writing C/C++ code which I find a lot harder to read than BASIC. (Numer one reason: BASIC uses English which I've understood for about 14 years, while C uses symbols which I've understood for less than half that time. Number two reason: END IF, NEXT, LOOP, as opposed to }, }, })
I prefer spacing out different sections of the program as I see you also do to some degree.
On a completely unrelated note, have you any pets? I have a cat. It's sitting on my lap now, chewing a small bulldog clamp. LOL.
|
|
|
Post by earlofqb on Sept 27, 2005 14:40:39 GMT
Yes, I am familiar with the Python language. From time to time I like to study its development. In the Timeline, it is planned for during summer some time when I'm bored.
I'll do the NBS from now on.
|
|
|
Post by Mikrondel on Sept 28, 2005 22:29:22 GMT
Where are these programs you were going to email me? I'm still waiting for them.
Also I made a rudimentary chat server, seeing as we're hijacking a lot of posts with ranting that is only likely to be read by us, maybe we should have a proper exchange using it.
It's on most of the time, just click Run in the start menu and type
telnet www.autopack.com 9202
Being in different time zones does pose a bit of a problem in arranging times. Just post here when you can hang around, and if I see it I'll join you.
|
|
|
Post by earlofqb on Sept 29, 2005 14:35:22 GMT
I thought I sent them to you. I'll resend them then, same e-mail as in the tutorial?
(the following is to answer all questions I couldn't answer because of time constraints)
Yes, I do space my programs out, allows for easier reading. I was the bane of my QB teacher when she got a 5 page packet for a small program. Still, I did get very high marks because of how easy it was to read (in addition to spacing, I comment on almost every line, or block of code (example, if there's a block of code to print out a header, I'll just comment on the entire block)).
No, I do not have any pets. I really wouldn't have time for them, so if I had one, I'd end up violating several animals rights laws. I simply do not have the time to walk, wash and feed an animal. Yes, I realize that sounds cold to animals, but at least I don't have an animal (far too many people I know who really shouldn't have pets, yet do. At least once a year they're in court on some sort of pet violation.
|
|