ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Other Software > Developer's Corner

Seeking Programming Language To Learn

<< < (3/4) > >>

Edvard:
AutoHotKey does look interesting; a lot of the tools created with it look even more so. But the "almost" makes me suspect I'll want to do something it won't allow me to soon enough. I've had that problem with macros and batch files; I even had it back when I was using Norton Batch Runner. You can go pretty far, if you get creative, but there is a point you just can't get past. Or at least I've never been able to.
-raybeere (January 06, 2009, 09:02 PM)
--- End quote ---

I totally understand and concur; ANY interpreted or script language will have that wall to hurdle, but don't let that stop you. AHK can do amazing things far beyond what batch scripts can do without a whole lot of effort, so it's very much worth having in your "bag of tricks".
I've often wondered how much real code actually goes into all those one-line commands, so I bet a fun exercise would be to pick a language to learn and then learn how to implement some of AHK's tricks with it.

raybeere:
with respect to the potential limitations of your chosen language I suspect that this is likely to be an issue regardless of your choice (eventually...).  Pick a likely candidate and see where it takes you - you might be surprised.  If it doesn't work out, just remember what you've learned along the way (it's better to make a start and work it out as you go than it is to worry about how it might end if you do start)
-Target (January 06, 2009, 09:31 PM)
--- End quote ---

This advice has a lot of sense to it - which is why I had to stop and work out why it didn't feel right. I'm afraid I've done something I do all too often. :-[ Only after I begin take the first step, and think things through, do I understand what is motivating me under the surface. Yes, there are a lot of neat little custom tools I'd like to put together - but that isn't what is really motivating me to learn to program. I want to create the ultimate Writer's Workshop.

Yes, I know that's foolish, on so many levels. I already own one of the very few programs I've paid for and never regretted it, specifically designed for writers. When I think of what I'd like to wind up with, the basics are a lot like the title I use now. Heck, I got free upgrades for life, and the best support I've ever hoped for - better than anything else I've ever heard rumours of. And, if one of the experienced coders here mentioned taking on a project as huge as what I have in mind, you'd all tell them they were nuts. With good reason.

I know all that, and I still want to do it. The improvements I'd make would take a really good way to work and make it the only way to work. They're things no one else would come up with. I've got an idea for a program that is nothing at all, in total, like any other program I've ever heard of. The program I use now is a Mercedes - but I want to write one that's a Bugatti. So I've got to figure out the best language for what I want to do. (Yes, I do know it won't be my first project. I may be crazy, but I'm not completely stupid. But I do want to move in that direction as much as I can, and not meander all over the place first.)

wreckedcarzz:
I started making little scripts in AutoHotkey and worked my way up to complex AHK programs and now do stuff in Visual Basic .NET, going for C# (did Java in school... ugh... no comment) - AHK is a great starting language IMO, and the help files and online documentation are just awesome. You can do a ton of things easily in AHK that are difficult in other languages, too (sending keystrokes to apps/control of the computer, plus the logical syntax allows for simple ways of doing complex things). Only downside is the way the AHK script files are converted to EXEs sometimes triggers virus false alarms :-\ ... stupid AV companies.

Start small, work your way up. Once you have a basis, you can always fall back. Keep going, and once you get into it, it is so enjoyable... :)

MilesAhead:
@raybeere if you really want to create a large project like a Writer's Workshop you might want to check out programming tools that make it easy to use 3rd party components.  Writing just a plain text editor is very involved.  But if you start with an open source editor component you may find you just need to add the tweaks you want.

I've messed around with a lot of different interpreters and compilers.  One that has served me well for general purpose GUI type programming on Windows is Delphi 5 Professional.  For making Windows Shell extensions, like if you right click on something in Explorer and launch it from that menu, those type of programs, it's tough to beat Visual C++ 6.  For small utilities on Windows AutoIt3 and AutoHotKey are good.

The natural language feel of Pascal is a good point.  If you read books on algorithms it seems like the ones with examples in Pascal are easiest to grasp.

If you look around you can find free basic, assembler, pascal and scripting languages for Windows.  For maximum portability and getting close to the metal it's hard to beat the old standard C.  But I think it's best to grasp programming conceptually first.  That's why I think it wiser to start with something like Pascal rather than something like Perl.

Once you mess around with a few programming languages you see they are all either interpreters or compilers under the covers and do similar things.  Object Oriented and other abstractions have power but I think it's a good idea to do at least one language that's close to the machine.  The code actually has to run on something and you won't appreciate the limitations if everything is a virtual machine.  I started with GWBasic with the line numbers and the whole bit.  But it was easy to learn.  After that it was Turbo Pascal, assember and C.

You may want to check out the library for "Algorithms" by Robert Sedgewick. I'd recommend the one with Pascal implementations.

Also "Algorithms + Data Structures = Programs" by Niklaus Wirth
who invented Pascal.  It was written before Object Oriented Programming, but back then the rage was "Structured Programming" which is like the precursor to OOP.  Still a very valuable book.

I didn't take Computer Science classes so I used the "Spider Web" approach.  If I read an article that was very good and the author mentioned a programming text, I'd check it out.  That's how I heard of authors that are standard in computer science classes like Knuth and Sedgewick.

Follow what you enjoy.  I never used Perl or Smalltalk much because the syntax put me off, but I'm glad I read books about them and messed around with them a little because it increased my understanding of programming languages that I like to use. :)


raybeere:
Thanks for the info. You've given me a lot to think about. :) I've already noticed most of what's out there seems pretty similar, and I suspect you're right about getting closer to the machine - but I'm not ready for that step yet. :D I want to at least feel comfortable with the idea I can create a program, however limited, before I go that far from shore.

The books you mentioned sound useful; I'll have to check them out. I guess everything looks easier, until you actually settle down to learn how to do it. :-[

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version