Index - Eclipse

January 28, 2011

important - jar imports

Oops, learning this lesson (again?) just cost me 45 minutes!

When you have downloaded a Jar and you want to add it to your Eclipse project, here is what you should do. (Err, rather, what *I* should do, given my environment configuration. Hopefully this might be useful or applicable to someone else.)

1. In the lib/ folder right-click and choose "Import" and navigate to the downloads folder, and indicate the right jar file. To do this, I had to create a new folder on my desktop, put the jar inside, follow these steps, and specify the type "jar".
2. under Projects--> go to the "Libraries" tab and use the "Add JARs" button.

Yup. This is very important. I was trying to use com.sun.jersey.api.view.Viewable, but Eclipse kept complaining about my import statement; it couldn't see anything under jersey.api.view.*. That was because I had missed Step #2 above. D'oh!

Posted by Frozone Permalink on January 28, 2011 11:47 AM | Comments (0)
categorized under Eclipse




October 31, 2010

Non-code file into Subversion

How to import a Non-code file into Subversion

Assume you have a checkout from a subversion repo in your workspace and want to add a non-code file like an Image or word processing document.

Here is is how to add it using Subclipse on the Ganymede version of Eclipse.

Navigate to the folder you want to contain the image, right-click, choose Import.

For import type, I used "File System" which is located under the "General" group provided.

Next, Browse to the file you want to import. For me, for some reason I can only get it to upload entire directories. For me, I had a single .pptx file on my desktop along with a zillion other files on the desktop, but I only wanted to upload the pptx. So, I added a filter for pptx and uploaded the Desktop folder.

Next, enter an SVN comment if you wish. Right-click on the menu and go Team--> Commit.

Posted by Frozone Permalink on October 31, 2010 01:05 PM | Comments (0)
categorized under Eclipse




June 07, 2010

Repository Browser: Subclipse

I already mentioned this indirectly in a previous post (Eclipse Perspectives and actually, also, Subversion & Eclipse, part III), but I was briefly stumped again and wanted to shout out the answer, clearly:

How do I open an SVN Repository browser on my Mac?

The answer: When you have Subclipse installed on your Eclipse, go to Window --> Open Perspective --> Other and choose SVN Repository Exploring. In the far left column, you will get a new tab showing your repos.

The reason I had trouble figuring this out is that I'm STILL accustomed to Tortoise SVN on Windows. Getting to the Repo Browser in Tortoise is different: you have to right-click on a file and choose Repo Browser. I had tried this in Eclipse, but, of course, right-clicking on a file only gives you contextual options for that file such as "compare this file to version..." or "show revision graph" (for this file). I actually think that the Subclipse way of looking at things is better organized. But it was harder for me to find. I guess that's the difference between "beginner" tools and "advanced" tools -- the advanced ones are harder to learn, but better and more powerful once you are adept.

The problem is, I am so far separated from a lot of this stuff that I am not adept. But I am getting there.

Posted by Frozone Permalink on June 07, 2010 09:30 AM | Comments (2)
categorized under Eclipse




April 15, 2010

Crazy Eclipse

I continue to be astonished at the versatility of modern IDEs.

I just installed an Eclipse plugin that lets me start and stop Tomcat from my dev environment.

Wow, wow, wow.

I remember when I wrote my first desktop application, it was in a black and white text editor, and I had to switch my operating system from Windows to Dos in order to run the command line to compile my program. And the command to run my program was a separate command, meaning: a memorized string of characters to be typed in at a shell prompt. Nowadays you can compile and execute by pressing 1 button on a GUI.

I hope I can keep up. I know I can, but it is going to require a LOT of dedication. I'm lucky that it's part of my job description, otherwise I would never have the time nor opportunity.

Posted by Frozone Permalink on April 15, 2010 03:39 PM | Comments (0)
categorized under Eclipse




April 08, 2010

PHP Eclipse, MySQL on my Mac

I am responsible for a lot of systems, written in a lot of different languages. I just got my Eclipse set up to handle not only my Java/JSP but also my XML/XSLT work and also my PHP systems.

I'm having a hell of a time managing the whole "dev & deploy" routine since there are so many differences between types of systems. I mean, you have to keep your source synchronized with SVN, and not all systems are in the same repo. Then, you have to copy the files to dev for execution - JSP files go to Tomcat, and PHP files get copied up to a regular Apache htdocs folder - but you can't raw copy everything because of the "dot svn" files; well, I guess maybe you can for dev. Then to deploy, I like to tag and export, and this is a whole new set of file paths. Then you have to remember which server to publish each project, and which username and password to use for each one... and it goes on...!

I looked at Ant, again. I'm feeling like I need it to help me out. Enough time goes by between projects (like, months) that I forget the process of "updating from SVN, going into the correct view in Eclipse, sending the new code files to the local/dev application server, VIEWing those files in whatever magical aliased URLs that are working, then committing back to SVN".

Also, I was darned sure that I had a MySQL server on my dev machine but I couldn't evoke a client for the life of me. So I re-installed; after a couple of years there was bound to be a new version. I would like to note this important link because it has the commands to use for changing the root password come post-install.

http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html

I'm sure I can re-learn this stuff so it becomes second-nature again. But there is just so much!

Posted by Frozone Permalink on April 08, 2010 03:44 PM | Comments (0)
categorized under Eclipse




April 02, 2010

XSL in Eclipse

I found the following article helpful in getting me up and running with XML and XSLT parsing using Eclipse.

http://www.vogella.de/articles/XSLT/article.html

I had trouble getting it to run at first because I was using Eclipse Ganymede and I had to upgrade to Eclipse Galileo.

I have defined a "param" in my XSLT and I have to figure out how to pass the value of the variable in. To me, it seems obvious to use the GET variables in the URL query string but I'm having a really hard time getting it working.

This looks good too: http://www.zvon.org/xxl/XSLTutorial/Old_version/Books/Book1/index.html

Posted by Frozone Permalink on April 02, 2010 06:00 PM | Comments (0)
categorized under Eclipse




February 16, 2010

Eclipse Perspectives

So I get to work and I boot up the Eclipse on my office machine, and I see a dev environment for Adobe Flex apps. Guess what? Flex is another "Perspective". I am really getting the hang of this lingo!

Here are the Perspectives I have used so far:
- Flex Development
- Java
- Subversion / Subclipse thinggy

Hmm, also on my machine at work I had Eclipse 3.2 but they are all the way up to 3.5 now. I have some work to do. I hope that this upgrade won't be a huge pain because I would like to spend my time on my architecture design, not on tool config.

Posted by Frozone Permalink on February 16, 2010 08:25 AM | Comments (0)
categorized under Eclipse




February 15, 2010

Subversion & Eclipse, part III

My development environment is Eclipse. My version control software is Subversion (SVN). I am using an Eclipse plugin called Subclipse to connect to Subversion within Eclipse.

I'm starting with a bunch of source code that was exported to me from another repository. (In this case, it made sense to export the source code into a NEW repo rather than create a branch.)

Since I had so much trouble getting an SVN client on my Mac, I was overjoyed when Subclipse finally started working. However, I only knew how to download existing folders from SVN, I could only extend from the code that was already there. I wanted to do the opposite; I wanted to CREATE a new SVN folder and UPLOAD a whole bunch of fresh code. But I had to figure out how to do this using my development environment.

(Okay, okay, I could have ssh'd in and tried to upload my code that way, but, I am so rusty... and I have hundreds of files... and it's a remote repository... so all of this on the command line, seriously?)

So, yeah. I reminded myself of some Eclipse terminology. In my IDE, I am usually in the "Java" perspective and it didn't even occur to me that I could change to a different one, or even that this is what I was supposed to do. But it was a chance reading this article that clued me in.

You can get a list of different Perspectives in Eclipse under Window-> Open Perspective --> Other. I found SVN Repository Exploring. Woohoow! Then after selecting this, you can switch back and forth between your Java code and your SVN repo by using the button in the upper-right corner of the IDE.

I successfully created my new folder in SVN using Eclipse. Hurray! Now to upload the code.

Posted by Frozone Permalink on February 15, 2010 12:43 PM | Comments (0)
categorized under Eclipse




February 13, 2010

Subversion & Eclipse, part II

Continuing from last time. Baby and I sang some songs together, played with some toys, had a snack... now she is sleeping.

Time to get back to work.

Please do not let the phone ring, or the doorbell ring. please please please please!

Last time I was having trouble with my SVN import. And I realized that the issue was that on the Eclipse screen I was clicking "Finish" when I should have been clicking "Next". D'oh! There was actually another screen I had to configure before I could get a successful import.

Also, I had to choose the option "Check out a s a project in the workspace" instead of "Check out as a project configured using the New Project Wizard". For some reason the first one wasn't working. But that's okay, I'm only too happy to keep all my code in the current project for now.

Click Next again (not Finish!!!) and choose your current Eclipse workspace folder. This time Next is greyed out and you have to click Finish.

Yay! Code imported!

What I actually wanted to do was upload some code that I have on my desktop at work. So I just have to repeat these steps again on Tuesday morning. Should be good!

I've tried 3 or 4 SVN clients for the mac, but so far, this plug-in to Eclipse is working the best for me. The others wouldn't even connect to my remote SVN repo, they all seemed to be expecting local SVN installs.

Posted by Frozone Permalink on February 13, 2010 10:14 AM | Comments (0)
categorized under Eclipse




Subversion & Eclipse

I can't believe I'm actually doing this. We'll see if I am successful as I continue to refind my old software engineering self.

While distracting my daughter with an episode of Dora the Explorer, I am trying to get a subversion client working on my machine. I used to use Eclipse, so I figured I'd fire that up too, and maybe see how hard it is to get them working together.

THese instructions were helpful, thanks IBM.com!

In Eclipse, I went to Help --> Software Updates --> Add Site --> http://subclipse.tigris.org/update_1.6.x/ (because that is the version of SVN I have on my machine... on Terminal, just go svn --version) --> check on this new item, click the Install button, Next, accept license, Finish.

Okay, let's see if this actually works. Time for a checkout from my repo, which is hosted on campus (I am at home right now). Luckily the repo is behind an HTTP server so I should be able to checkout remotely.

Now in Eclipse, I can go File --> Open --> SVN --> Checkout Projects from SVN, Next, Use existing repository location, type in the URL and my uid/password,

.... OK, Dora's over. My daughter is now taking all the papers off my desk and ripping them up. Time to go. LOL

Posted by Frozone Permalink on February 13, 2010 09:33 AM | Comments (0)
categorized under Eclipse




Index to Steph's Notes

Feb. 24th 2007 - Weee! This new part of my website is not an entry, but rather a permanent fixture whose purpose is to "Look Down on All Those Notes With Some Grand Vision of Organization". Wish me luck. LOL
  1. Representing meta-data (fuel) & the different kinds of "hooks" that intelligent systems can use (how fuel is injected into the motor of the engine)
    1. Motivation: Semantic net / Rationalizable to a machine
      1. Semantic network
      2. Genetic graph
      3. Prerequisite AND/OR graph
      4. Constraint Satisfaction Problems
      5. Bayesian networks / causal graphs
    2. Technology & Philosophy: RDF, modus ponens,
      1. Predicates, Logic & situation calculus
        1. When in doubt, do some math
    3. What kinds of data? - What kinds of meta-data would an AIEd system possibly need, and how is it represented?
      1. task domain knowledge
      2. "is-prerequisite-to"-type knowledge
        1. Jackpot! A pedagogical ontology
      3. interactions with learning objects & other learners - (location, composition is-a/part-of, sequencing by restricting navigation, personalization, ontologies for LO context)
        1. Types of 'Ecological' data
      4. lesson plans, curriculum plans, practicing sessions (What is stored, what is generated on the fly? What is remembered?)
        1. Agent memory
    4. How to organize it - When is it stored in a database? Meta-data? Agent memory banks? Protocols? Repositories? XML files? Home-servers? WSDL services? Frameworks? Portable banks? P2P access?
      1. Database of object-agent interactions
      2. Concept of "Home" on a P2P network -- maybe the bulk of a learning object's usage data is on its home server and can be queried using WSDL or something ? Similar homes for each student's usage history, etc. Baggage problem.
    5. Links to the ontologies
      1. referring to a concept/relationship - ex. AgentOwl?
        1. Using Vocabularies in JENA
        2. Referring to a concept/relationship in an ontology
        3. Improved: Referring to a concept/relationship in an ontology
        4. Using OWL to reference constraints in tutoring systems
    6. Generation of this data
      1. Rationalization: For use by other AIEd systems
      2. What is generated - discuss items under part I.C.
      3. When it's generated - describe procedural model, which parts of the engine generate what (isa-part-of data, XML feeds, web services, meta data bout groups and collaboration, protocols, examples Friend of A Friend FOAF project)
        1. Thinking about the system's RDF output
      4. Technical notes of HOW it's generated: JENA, issues of implementation demo, my Hermione & Ron agent examples, lol
      5. Usage of this generated data - see part IV. A.
  2. Given the engine, who uses it?
    1. Students / Learners / "Me"
      1. instructional planning, student model, pre-requisites, tutoring, coaching, collaboration,constructivism
    2. Teachers / Educators / "Me"
      1. putting together lessons
      2. be able to browse through task domain knowledge in an objective / encyclopaedia format, then be able to pick-and-choose what you need for your students
      3. compose examples, design explanations, pull together diagrams, learning objects, etc. Haystack Relo?
    3. Administration / Governement / Structure / Crowd Control
      1. as restrictions/obstacles/sand pit to the robot in agent environment
      2. can't just have a swarm of students and teachers out there -- need structure of courses, curriculum, objectives, requirements (at least, we do in this day and age!) - Report cards, evaluation, feedback
      3. government, marks, certificates, requirements, funding, curriclum, attendance, delinquent, non-attending, motivation
      4. school''s images, goals, strengths, payroll, HR, security, accounts, permissions, privacy
      5. registration, failed courses
  3. User Environment -- How does this engine work? What does the user see on the screen?
    1. Introduction - Given a background in educational psychology, how does the system present itself -- what does the user see, and were does this data come from? Links to thoughts from part I.)
    2. Task Domain Browsing - Suppose you're you're just idly browsing through the "raw" content. How would it look when it's not wrapped around a learning-context or lesson or tutorial or anything. 'Cross between browsing a raw task domain ontology and browsing a learning object repository.
      1. Cleaning up the data -- Visualizing the data for humans to pick through the task domain and work on it. Suppose the "Subject Expert" discovers an advancement in science and needs to update the "world's" domain knowledge. (I used the "Subject Expert" terminology from Ontologies to Support Learning Design Context - Thanks Chris) How would they make corrections to ontologies and learning objects, or at least point the users of "old" objects towards adopting the newer ones.
      2. "Modes" - Learning & Lessons / Checklist - Homework, Assignments, Courses being taken / Collaborative mode / Teaching mode / Calendar- email -adminisrative mode -- See also the different kinds of scenarios in the ActiveMath system
        1. Educating myself about Education
  4. Evolution of this engine
    1. target some key implementation hooks discussed in part I - design an experiment/demo
      1. scrape a page - (Note, scraping can only give objective data, not in-context dat)
      2. LO repository - related to browsing the task domain?
      3. a learners "To Do" list - where does it come from? Assignments, courses.
      4. sample group scenario
      5. sample teacher lesson planning
      6. sample data "left behind"
      7. sample use of that data
    2. Data mining (for what? lol )
      1. discovery / generation of ontologies - when do you need to hunt for them, and when do you have to have a solidly-known & predictable ontology?
        1. Ontological Engineering: taking a first bite
    3. I/O - where it happens, which languages, protocols, which agents perform i/o and when, precepts, actuators
      1. Role Assignments
        1. Levels of authorization in web applications
      2. My Environment Adapts to me
        1. Displaying feedback from the server on JSP pages (Software engineering considerations)
        2. Sketching out a design (Content planning vs. Delivery planning)
      3. agent negotiations / social structures / ummm... Web 2.0 ?
        1. Towards student modelling
        2. Anatomy of an agent
    4. garbage collection of meta data
      1. Artificial Intelligence & Evolution
        1. Memory Culling: Necessary part of intelligence? (artificial or human)
        2. Applications for the Genetic/Evolutionary algorithm
      2. open learning environments
  5. Agents, pets, grouping, Community modelling
    1. Protocols - finding groups, cyber dollars, state diagrams (?)
    2. "Community Studies" - graphs & communication hubs, types of communities (free-for-all, hierarchy of authority, etc.)
    3. implications of joining a community - what do you share, which parts of your student model are relevant
    4. Walls & sand traps -- deliberate restrictions as problem-solving for learning
    5. Communication channels - individual-to-individual, individual-to-community, chat channels, agent-only "administrative" communications, ex. requests for related learning objects in a particular community, etc.
  6. Educational/Pedagogical focus (this part probably shouldn't be its own section but rather incorporated into the whole picture, but it's separate for me right now because I'm still only just starting to learn about it.)
    1. Semantics - what there is to talk about in Education
      1. ex. Merril's First Principles of Instruction, linking educational terms to AI terms
        1. Educating myself about education
    2. Pedagogical skills for tutors -- supporting human *and* artifical tutors
      1. Modelling teaching strategies
      2. What is teaching?
      3. Decision theory for teaching strategies
      4. My pedagogical issues
      5. Ontological comparisons as spatial relationships
    3. Student modelling - what the machine needs to know about the student, pedagogically-speaking, about learning history/preferences
    4. Roles - Simulated students, Coaches, Tutors, Teachers,