<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Do I have all the details correct? I CC'd Vance so we can see about
getting this out to the Techlahoma peeps once we've finalized this
rough draft. :)<br>
<br>
<br>
-----<br>
<br>
Greetings, Oklahoma City tech community! Do you have a son or
daughter (or niece, nephew, grandchild, super-friendly neighborhood
child) who loves Minecraft? Does said Minecraftian have an interest
in learning how to program? If so, this is your lucky. The Oklahoma
City Java User Group would like to invite you and 0 or more or
pint-sized precocious progeny to our July session where we'll be
offering an introduction to programming using Minecraft modding as
the goal. <br>
<br>
<b>What will be doing?</b> We're going to be getting an introduction
to various programming concepts (types, variables, loops,
conditionals, classes, etc) using the Java programming language.
Having a concrete, usable goal is always more interesting, so we'll
learn these concepts as develop (and RUN!) simple Minecraft mods.<br>
<br>
<b>Will my <i>CHILD<Relationship></i> be an expert programmer
or modder when we're done?</b> Probably not, but the hope is that
this session will be enough to flatten the learning curve a bit,
leaving each child well-equipped for further study, either
self-directed or with you, as well as with a taste for how fun
programming can be.<br>
<br>
<b>How old does you mini-me need to be?</b> That's entirely up you.
If you have, say, a 6 year-old who's comfortable with compilers and
API docs, then that's old enough for us. <br>
<br>
<b>Is there anything we need to install before we come?</b> There
certainly is. Our time will be limited, so it would be extremely
helpful to have a basic, working environment already setup. While
you are free to use any IDE you want, I will be using NetBeans, the
Free (and TOTALLY AWESOME) IDE from Oracle, which can be downloaded
from <a class="moz-txt-link-freetext" href="http://netbeans.org">http://netbeans.org</a>.
You will also need a working Java environment, as well as a
relatively current copy of the Minecraft Forge plugin development
kit. I'll have detailed instructions at the end of this email to
help you set up your environment.<br>
<br>
<b>This sounds great? When and where is it?!</b> In a departure from
our normal schedule (which will be significant only for normal JUG
attendees), we will be meeting on Monday, July 13 at 11:30AM at
Prototek, which is located at 10th and Hudson in Oklahoma City (<a
class="moz-txt-link-freetext" href="https://goo.gl/maps/tD26c">https://goo.gl/maps/tD26c</a>).
You can park in the dirt lot Hudson, just north of Park Place. Do
not park ON Park Place, as I own both that Boardwalk, and my
improvements there are guaranteed to ruin you.<br>
<br>
<b>What should we bring to the session?</b> To participate, you will
obviously need a laptop to work, with one per laptop per child being
ideal. If you are bringing multiple wee ones and need to share, that
would be fine. If you don't have a laptop and just want to come
listen, that will work as well. :)<br>
<br>
<b>That's right during lunch. What's wrong with you people?</b>
Nothing that some free pizza can't solve, so bring your appetites!<br>
<br>
<b>Is there anything else we need to know?</b> That's about it. Come
prepared to have fun and learn. And don't forget your questions!<br>
<br>
We're pretty excited about this session and hope to see LOTS of kids
come out for a fun time.<br>
<br>
<font color="#ff0000"><big><big><big><big><big><b>Detailed
Pre-Meeting Instructions</b></big></big></big></big></big></font><br>
<br>
<br>
I made that really large for two reason: I really wanted to use that
formatting bar in Thunderbird that I've ignored for so long, and I
wanted to make sure you don't miss this part. :) You *can* come and
set up your laptop at the meeting, but we won't have time to do that
as a group, so we'll have to keep moving while you're setting up. If
you have to do that, that's fine. I hope to conscript a few of the
JUG leaders to act as workshop assistants in case anyone needs help
installing the various pieces. Another issue is bandwidth: Prototek
will let us use their wifi, but regardless of their bandwidth, when
two dozen people start downloading all of the dependencies, it
probably won't be fast. :)<br>
<br>
What do you need to download then? These three things:<br>
<ol>
<li>Java - <a class="moz-txt-link-freetext"
href="http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html">http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html</a>.
You will the Java SDK, and I would suggest the latest version,
which is currently Java SE 8u45. Download the installer
appropriate for you platform and install it.</li>
<li>NetBeans - <a class="moz-txt-link-freetext"
href="https://netbeans.org/downloads/">https://netbeans.org/downloads/</a>
- You will need the Java SE version. Again, get the installer
appropriate for you platform and install it.</li>
<li>Minecraft Forge - <a class="moz-txt-link-freetext"
href="http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.8-11.14.1.1341/forge-1.8-11.14.1.1341-src.zip">http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.8-11.14.1.1341/forge-1.8-11.14.1.1341-src.zip</a>
- There are platform-specific installers, but I'd just get this
zip</li>
</ol>
<p>With those downloaded and installed, extract the zip file (using
the tool of your choice) in a directory. Mac and Linux users can
do this:<br>
</p>
<blockquote>
<p>$ cd ~<br>
$ mkdir MinecraftMods<br>
$ cd MinecraftMods<br>
$ unzip $PATH_TO_ZIP/forge-1.8-11.14.1.1341-src.zip<br>
</p>
</blockquote>
<p>Wherever you've extracted, you will need to open a shell (or
command prompt) and run this command in that directory:<br>
</p>
<blockquote>
<p>$ ./gradlew setupDecompWorkspace --refresh-dependencies<br>
</p>
</blockquote>
<p>(Windows users can leave off the leading ./)<br>
</p>
<p>Once that is done, open up NetBeans, then click File | Open
Project and navigate to this directory. Hopefully, this directory
will show up as a Gradle project. If it does not, you will need to
install the Gradle plugin ( Go to Tools | Plugins and install
"Gradle Support".) After a few seconds, you should see the project
open in the Project view, with several nodes beneath in the tree.
To test things, click on the project node (it should be called
MinecraftMods), click Tasks, Run, and runClient. After a few
seconds, you should see Minecraft start up. Congratulations, you
should be ready to go.<br>
</p>
<p><b>Whew! That's kind of hard to follow!</b> If you're like me and
like to see pictures, you can see these same instructions on the
NetBeans blog at
<a class="moz-txt-link-freetext"
href="https://blogs.oracle.com/geertjan/entry/seamless_minecraft_forge_in_netbeans">https://blogs.oracle.com/geertjan/entry/seamless_minecraft_forge_in_netbeans</a>.<br>
</p>
<p><b>But I don't like NetBeans. I like pain!</b> There may be some
Eclipse fans out there. If just <i>have</i> to use Eclipse, you
can generate the Eclipse project files by running "gradlew
eclipse".<br>
</p>
<p><b>NetBeans is nice and all, but I prefer to buy things. Can I
use IDEA?</b> Sure! Just run "gradlew idea" to generate the
project files. <br>
</p>
<p><b>Is that "all"?</b> Should be. Pretty simple, huh? :P If you
run into problems, try to do as much as you can before you come,
and you can either ask for help on the JUG mailing list (<a
class="moz-txt-link-freetext"
href="http://okcjug.org/contact-us">http://okcjug.org/contact-us</a>)
or, worst-case scenario, wait until the day of the JUG and get
help there (though it would help to arrive early ;).<br>
</p>
<p><br>
</p>
<pre class="moz-signature" cols="72">--
Jason Lee
<a class="moz-txt-link-freetext" href="http://cubtracker.com">http://cubtracker.com</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com">http://blogs.steeplesoft.com</a>
<a class="moz-txt-link-freetext" href="http://twitter.com/jasondlee">http://twitter.com/jasondlee</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com/+">http://blogs.steeplesoft.com/+</a>
<a class="moz-txt-link-freetext" href="http://blogs.steeplesoft.com/in">http://blogs.steeplesoft.com/in</a></pre>
</body>
</html>