AutoHotkey Community

It is currently May 27th, 2012, 12:13 pm

All times are UTC [ DST ]




Post new topic Reply to topic  [ 32 posts ]  Go to page 1, 2, 3  Next
Author Message
PostPosted: May 17th, 2011, 11:25 pm 
Offline

Joined: October 9th, 2010, 8:54 am
Posts: 33
I started out learning HTML. I quickly moved to AutoHotKey. Autohotkey is a great language because it's a scripting language. It's not a real programming language, but you learn the VERY basics of programming. When you are ready to move on, you will use a lot of things that you learn from AHK. If you are ready to do more than AHK, I recommend Java. After a while, I wanted to A. learn a real programming language and B. Do more with AHK. Since AHK isn't a real programming language, there are severe limitations with AHK. Most of them can be avoided and ignored when you just start out. After some time though, you start running into problems. You might want to add a picture to a button, or do more things. There are some "hacks" in AHK, which are posted on this forum. If you start running into these problems, I recommend you look into another programming language (Java would be best).

Downsides of switching to Java:

1. Takes a ton of time to learn.
2. More complicated code to do the same thing in AHK.
3. Takes a lot longer to make the same code in Java.
4. Lot of debugging.
5. Users have to have JRE (Java Runtime Environment) installed (most do)

Upsides of switching to Java:

1. Once you learn it, you won't want to go back to AHK.
2. You can do the exact same thing in Java and a LOT more.
3. Java code can customize everything so much better.
4. You can easily test for bugs in Java code. Ex: Use the command line.
5. You can put Java code in an executable JAR, JNLP, or other containers (comparable to .exe files) just like AHK.
6. Java is a TON faster.
7. More support for Java.
8. Updates for Java come out regularly.
9. You can easily have your Java programs run online as well as an app.
10. Java programs are more secure than AHK.
11. You can do things like clients and servers (for Instant Messaging, E-Mail, etc).
12. You can run most Java programs on any operating system.
13. Java can use things online, such as files, pictures, videos, games, music, other code, etc and use them in your programs. You can also include these things in your container files.
14. Java can be used in phones and other devices, not just a personal computer.

All you have to do is start. Download the JDK (Java Developer's Kit). Then, start with the Hello World program. (http://download.oracle.com/javase/tutor ... index.html).
Keep reading this tutorial. It will take you through a lot. Then, buy a book such as "Head First Java". Or buy the book first, and then go to the tutorials. Start making a small (and I mean SMALL) program. If you have problems, go to Java Forums (I use coderanch.com) and ask questions. Also check out the Java API (Applications Programmer's Index) and the Java tutorials for help.

Once you have been programming in Java for about 6 months, you will be ready to do a major project. I have been doing it for about 5 and have built some major programs including a fully running, working, security minded Instant Message program. It has all kinds of features that are not possible in AHK. I also work on other projects daily.

It is a lot of work but it is totally worth it. If you are ready for something more than AHK, and want to put effort and time into it, jump into Java. You can do anything from games, to music, to videos and pictures. It takes a while, but you can do pretty much anything. E-mail me at cc11rocks@yahoo.com for additional info, reasons, help, or how to get started in Java programming. I programmed in AHK for a long time before I started Java, so I definitely know what you are going through. It is tough to get started but once you code for about 6 months, you got it going on.
:) ,
cc11rocks

[Title edited. ~jaco0646]


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 12:23 am 
Offline
User avatar

Joined: May 18th, 2010, 3:10 pm
Posts: 1179
Location: Sweden
Thanks for posting :) I have been thinking of moving on for a while, but a few things have kept me from it.

1) I need a "push"
2) AHK is very portable and compiles to Exe (which in my eyes is better than .jar etc.?)
3) Java was a hassle setting up, needing IDE and whatnot. It threw me off.
4) AHK can do most things faster, like you said


Upsides, however:

1) I'll get a "push" now that I start working with IT fulltime
2) Like you said, you can run Java on any OS, NECESSARY AND NICE!
3) It's inevitable.
4) The libraries.
5) The online interaction.


So, I will remember your offer and might contact you :) Thanks alot.

_________________
~sumon Appifyer AHK Nova halted Recommended: AHK_L (Why?)


Report this post
Top
 Profile  
Reply with quote  
 Post subject: Reply to sumon's Post
PostPosted: May 18th, 2011, 12:32 am 
Offline

Joined: October 9th, 2010, 8:54 am
Posts: 33
Quote:
2) AHK is very portable and compiles to Exe (which in my eyes is better than .jar etc.?)
3) Java was a hassle setting up, needing IDE and whatnot. It threw me off.

Response to 2. JAR files are very portable. I can take my class files and create an executable JAR file (It's like a .exe file) in about 30 seconds flat. All the user has to do is double click on it and it runs within a few seconds.

Response to 3. You do not need an IDE to use Java. Up until last month, I was using Notepad (default one that comes with Windows) and the command line. I now use Notepad++ (it's just Syntax highlighter, not an IDE) and the command line. I hate IDE's and can't stand them. They are, in my eyes, harder to use. I recommend just using the command line and Notepad ++.

If you or anyone else would like a face to face demo, I will be happy to provide the service using the program "Teamviewer". Just e-mail me and we will set up a time. I can do the "presentation" type if you are scared about me hacking your computer or if you let me take control, you can interact directly with me. You guys are free to message me at cc11rocks@yahoo.com for questions, comments, setting up the JDK, Teamviewer "appointments", etc. I wouldn't message me here as I never get on here (I code in Java now, remember :) ).
Cheers,
cc11rocks

EDIT: Or, if you wanted I could make a video and post it on youtube or something. Teamviewer would be the best option as I can set Java up for you and teach you on the spot.


Last edited by cc11rocks on May 18th, 2011, 6:21 am, edited 1 time in total.

Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 2:42 am 
Offline
User avatar

Joined: December 21st, 2007, 3:14 pm
Posts: 3826
Location: Louisville KY USA
Quote:
Upsides of switching to Java:

1-3 incorrect in statement
6 idiotic
8-11,13 no difference from ahk

_________________
No matter what your oppinion Please join this discussion
Formal request to Polyethene
Image


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 3:50 am 
Thank you, cc11rocks. May your journey to round up all of the OOP BOONs here and take them to a more fitting place meet strictly with overwhelming success.

I wish you well in your travels, my friend.


Report this post
Top
  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 4:05 am 
Offline

Joined: March 10th, 2011, 7:17 pm
Posts: 374
if i ever have the motivation, ill probably learn python


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 6:16 am 
Offline

Joined: October 9th, 2010, 8:54 am
Posts: 33
tank wrote:
Quote:
Upsides of switching to Java:

1-3 incorrect in statement
6 idiotic
8-11,13 no difference from ahk


1 is opinion. It can't be incorrect.
2. Please give an example of this.
3. Please give an example of this.

6. Java is a programming language. AHK is a scripting language. Programming languages are faster because they are compiled, not interpreted.

8. What is regular to you? The last change was September 25, 2009. You can't use Autohotkey_L because "AutoHotkey_L is a custom build of AutoHotkey maintained by Lexikos." So it's not Autohotkey.

The latest update date for Java was April 22, 2011. There are major revisions being done right now with Java 7 coming out on July 28, 2011 and Java 8 coming out next year (We are currently at Java 6 Update 25).

9. Please show me an AHK app running online (by online, I mean running in a browser).
10. Not totally sure how to prove or disprove this statment.
11. Please show me a runnable client and server made in AHK.
13 (PART 1). An .exe file is ONE file. A container can hold pretty much an unlimited amount of things, such as media files, class files, etc. You cannot including media in an .exe or .ahk file. DISPROVED
13 (PART 2). You are partially right on the grabbing of online things in AHK. BUT, Java can manage these a lot better. I have used online files in both, and Java is easier to use, works better, and is faster with media files.

Extra info: You can create animation, sounds, and other media from scratch in Java.
cc11rocks


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 7:29 am 
Offline

Joined: September 15th, 2006, 10:25 am
Posts: 567
Why Java? C# would be an easier transition, and you get .exe's instead of .jars.
It can run cross-platform, and doesnt take "a ton of time to learn".
Frankly, I use much more .exe's than JAR programs.
And, definitely, you can have ahead-of-time compilation also, so it is fast.
Though .NET is a managed language, you can do unsafe code also. Much faster development time also.

.NET has definitely better foothold in the desktop programs, where JAVA struggles.

Your post seems like an ad for Java.

_________________
If i've seen further it is by standing on the shoulders of giants

my site | ~shajul | WYSIWYG BBCode Editor


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 10:14 am 
Offline

Joined: October 13th, 2009, 10:09 pm
Posts: 1389
shajul wrote:
Why Java? C# would be an easier transition, and you get .exe's instead of .jars.
It can run cross-platform, and doesnt take "a ton of time to learn".
Frankly, I use much more .exe's than JAR programs.
And, definitely, you can have ahead-of-time compilation also, so it is fast.
Though .NET is a managed language, you can do unsafe code also. Much faster development time also.

.NET has definitely better foothold in the desktop programs, where JAVA struggles.

Your post seems like an ad for Java.


Agreed. AutoHotkey is mostly a scripting language intended for smaller tools. While it's possible to write larger programs with it, for complex projects other languages like C# are better fitted.
It's not so much moving forward/backward when switching languages. Trying different languages is always a good thing. I have actually used both Java and C# before, but I came to AutoHotkey because it was better suited for some tasks.


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 2:25 pm 
Offline

Joined: October 9th, 2010, 8:54 am
Posts: 33
ASP.NET isn't free. Don't give me the BS about it being free. If you are ACTUALLY doing stuff in .NET, then you are using the paid version. Java, on the other hand, is free AND open-source. Plus, Java can be used on any OS.
ASP.NET looks, feels and acts different than almost any other server-side web technology, and integrates poorly with the client technologies. ASP.NET is almost entirely ignored by web designers.
My school's programs are Java programmed. You'd think that for a reason...(They are have Windows OS, yes).
My Uncle programs both .NET and Java. For some projects, his company makes him use .NET. He said he would use Java for every project if they would let him. I wonder why (not really, I know the answer).

Furthermore, I think we should stop this banter. I am providing a service, a service to help people transfer from Autohotkey to Java. If people don't want to transfer, they don't have to at which point they can ignore me. If you dispute what I said, such as what Tank wrote, post it. I will try to respond in the most honest way. Though, yes, I may be biased, as are you guys.


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 3:42 pm 
Offline

Joined: October 13th, 2009, 10:09 pm
Posts: 1389
cc11rocks wrote:
ASP.NET isn't free. Don't give me the BS about it being free. If you are ACTUALLY doing stuff in .NET, then you are using the paid version. Java, on the other hand, is free AND open-source. Plus, Java can be used on any OS.
ASP.NET looks, feels and acts different than almost any other server-side web technology, and integrates poorly with the client technologies. ASP.NET is almost entirely ignored by web designers.
My school's programs are Java programmed. You'd think that for a reason...(They are have Windows OS, yes).
My Uncle programs both .NET and Java. For some projects, his company makes him use .NET. He said he would use Java for every project if they would let him. I wonder why (not really, I know the answer).

Furthermore, I think we should stop this banter. I am providing a service, a service to help people transfer from Autohotkey to Java. If people don't want to transfer, they don't have to at which point they can ignore me. If you dispute what I said, such as what Tank wrote, post it. I will try to respond in the most honest way. Though, yes, I may be biased, as are you guys.


Two things:
.NET is open source as well: http://referencesource.microsoft.com/netframework.aspx
And the Mono runtime also is.

Both main runtimes of Java and .NET are developed by large companies. It's not better to prefer one language over the other if you want to follow open source spirit.

Then, I was talking about C#, not ASP.NET. I have hear of people using ASP.NET as well as people using Java for writing web applications, so I can't tell what's more popular here, but this is a complete different programming environment than AHK so I think a comparison between web application programming languages and AHK is pointless. Comparing it to languages like C# or Java is another thing however. Using the MONO runtime it's also possible to write code that runs on Linux/Mac. I think by now the Express versions of Visual Studio even allow commercial products.

Java is traditionally preferred in school/academic environments, I believe this is mostly because it came out first and followed OOP principles very good.

Just a few points to remove some bias and try to show a more objective look at things. Please don't see this as an argument, I'm not trying to convince anyone but rather provide some facts.


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 4:22 pm 
Offline

Joined: April 8th, 2009, 8:23 pm
Posts: 3036
Location: Rio de Janeiro - RJ - Brasil
Quote:
6. Java is a programming language. AHK is a scripting language. Programming languages are faster because they are compiled, not interpreted.

Java is "also interpreted". http://wiki.answers.com/Q/Is_java_interpreted
Quote:
9. Please show me an AHK app running online (by online, I mean running in a browser).

[1] , [2]
Quote:
11. Please show me a runnable client and server made in AHK.

This is just an example. Search the forum, you'll find a lot more.
Quote:
13 (PART 1). An .exe file is ONE file. A container can hold pretty much an unlimited amount of things, such as media files, class files, etc. You cannot including media in an .exe or .ahk file. DISPROVED

Are you serious?
[1] , [2] , there are also "include bitmap/icon" topics

_________________
"Read the manual. Read it again. Search the forum.
Try something before asking. Show what you've tried.
"
Image
Antonio França
My stuff: Google Profile


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 5:14 pm 
Offline
User avatar

Joined: December 21st, 2007, 3:14 pm
Posts: 3826
Location: Louisville KY USA
Thanks Masterfocus I was just way to lazy to get some easily found links

_________________
No matter what your oppinion Please join this discussion
Formal request to Polyethene
Image


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 8:17 pm 
Offline
User avatar

Joined: November 2nd, 2008, 4:23 pm
Posts: 2906
Location: 127.0.0.1
I'm just finishing up my C++ class. I'm taking Java in the fall, but more because it offered than I want to. I would prefer learning C#.

_________________
aboutscriptappsscripts
Any code ⇈ above ⇈ requires AutoHotkey_L to run


Report this post
Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: May 18th, 2011, 11:08 pm 
Offline

Joined: October 9th, 2010, 8:54 am
Posts: 33
You have successfully disproved statements 9, 11, and 13. Congratulations! But, on the downside, you have to download and install these new programs. In Java it is built in with full support. It is a major language, so there are a small amount of bugs in Java. These other programs are not as big, and as such, get less attention and less funding. Therefore, there will be more bugs because of that reason. Anything new to add to the topic?

I do not totally agree with you on number 6 but, technically it is both.
Check out:
http://answers.yahoo.com/question/index ... 432AA37HGx

As it says, it is compiled because it makes it more efficient. Efficiency = less work for JVM (Java Virtual Machine, which runs various languages including Java) = faster startup time & running time

ADDITIONAL INFO: To make a clarification (in case you weren't sure), a JAR file is like an awesome zip file for Java. It takes whatever you throw at it, and compresses it. You can make it into an executable JAR (for Desktop applications) or leave it as a regular JAR file (for Web Applets).

Humbled,
cc11rocks

EDIT: Another great thing about Java is that you can try and use the future version of Java WAY before they come out. You help Oracle fix bugs and make it better before it comes out. Plus, you get to use all the new technologies and bug fixes faster. This is another reason why Java is better. For example, Java 7 isn't official released until July 28, 2011. It has been available through the "Next Release (Early Access" "program" for quite some time.


Report this post
Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 32 posts ]  Go to page 1, 2, 3  Next

All times are UTC [ DST ]


Who is online

Users browsing this forum: No registered users and 12 guests


You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Group