1 of 37

Comp 524-Programming Languages �Eclipse Difficulty/Helper Plugin

Instructor: Prasun Dewan (FB 150, dewan@unc.edu)

1

2 of 37

Table of Contents

2

3 of 37

Motivation: Why Detect Programmer Difficulty

Introspection: review your pain points and solutions.

Collaboration: Manual or automated help on difficulty detection

Inspection/testing: Correlation between difficulty and bugs?

Task and document adaptation

3

4 of 37

Detection of Programming Difficulty (Slow Progress)

4

4

5 of 37

Status Inference 🡪 Status Communication

5

5

6 of 37

Status Inference 🡪 Collaborative Difficulty Resolution

6

6

7 of 37

Data for Difficulty Detection

Program

Test case data

Programming Environment Commands

Web Accesses

7

8 of 37

Data for Difficulty Detection

8

9 of 37

Raw Data: Eclipse Commands

9

10 of 37

Metrics

10

11 of 37

Chrome Accesses

No Facebook accesses, log “safe” accesses (piazza, stackoverflow, edu sites – can disable some)

11

12 of 37

(Un) Installing Plug-in

A plug-in can possibly misbehave/slow you down

We show you both how to install it and uninstall it

12

13 of 37

Help🡪Install New Software

13

14 of 37

Hermes Plug-in Site and Check Hermes:

Enter: http://www.cs.unc.edu/~dewan/plugins/hermes in work with and hit return

Check HermesFeature

Next

14

15 of 37

Confirm

Check HermesFeature

15

16 of 37

Accept License

License is empty now, but may add text

16

17 of 37

Trust Us

17

18 of 37

Restart Eclipse

18

19 of 37

Getting to View to Record Difficulties

Window🡪Others

19

20 of 37

Open View

Hermes🡪DifficultyStatus

20

21 of 37

Difficulty Status View

When in Difficulty, press surmountable or insurmountable difficulty.

Insurmountable: After having thought about it, you have no clue right now on how to solve the problem and are stopping to ask for help or think later

Surmountable: After having thought about it, you have some ideas on how the difficulty may be solved, but do not know the exact solution

Progress: After having thought about it, you know exactly what to do (normal mode, no difficulty)

21

22 of 37

Elaborate on Surmountable or Insurmountable Difficulty

22

23 of 37

Example Filled Form

23

24 of 37

Configuring Plug-in Before or after Installing It

This is an optional step in case you want to receive difficult and non-difficulty notifications, called slow progress and making progress which you can correct

24

25 of 37

Download Configuration File

Right Click helper-config.properties and select download

25

26 of 37

Navigate to Your Home Directory

Go to C:\Users\<user name>

Mac

Windows

Linux

Go to ~/<user name>

26

27 of 37

Create Sub Directory in Home

Create helper-config in Home directory

27

28 of 37

Move Downloaded File to Subdirectory

28

29 of 37

Use Text Editor to Open It

29

30 of 37

Uncomment showStatusTransitions

Line 12 to be uncommented

30

31 of 37

Restart Eclipse

File is read when Eclipse Starts Up

31

32 of 37

Uninstalling Plugin

32

33 of 37

Help🡪Install New Software

33

34 of 37

Click on: Already Installed

34

35 of 37

HermesFeature Uninstall

35

36 of 37

Click Finish

36

37 of 37

Restart Eclipse

37